Multiprocessing dan Multiprogramming

Multiprocessing dan Multiprogramming

1.  Multiprogramming

Multiprogramming adalah suatu metode yang memungkinkan dua buah program atau lebih dijalankan secara serentak dalam sebuah komputer dan berbagai sumber daya dalam waktu yang berlainan.Konsep multiprogramming bisa diibaratkan sebagai pekerja yang tak hanya menangani satu pekerjaan, tetapi juga menangani pekerjaan lain, sehingga tak ada waktu yang terbuang.
Konsep dasar dari multiprogramming ini adalah: suatu proses akan menggunakan CPU sampai proses tersebut dalam status wait (misalnya meminta I/O) atau selesai. Pada saat wait , maka CPU akan menganggur (idle). Untuk mengatasi hal ini, maka CPU dialihkan ke proses lain pada saat suatu proses sedang dalam wait. 
Pada sistem multiprogramming, sistem operasi harus menyediakan mekanisme untuk manajemen memori, penjadwalan CPU dan manajemen disk. Sistem operasi multiprogram menyediakan supply untuk I/O routine. Sistem harus dapat mengalokasikan memory untuk beberapa job. Beberapa job yang sudah siap dieksekusi akan dipilih oleh system, job mana yang akan dieksekusi oleh CPU. Perangkat apa saja yang diperlukan oleh setiap job juga harus dialokasikan oleh sistem.

2.  Multiprocessing

Multiprocessing adalah istilah teknologi informasi dalam bahasa Inggris yang merujuk kepada kemampuan pemrosesan komputer yang dilakukan secara serentak. Hal ini dimungkinkan dengan menggunakan dua CPU atau lebih dalam sebuah sistem komputer. Istilah ini juga dapat merujuk kepada dukungan sebuah sistem untuk mendukung lebih dari satu prosesor dan mengalokasikan tugas kepada prosesor-prosesor tersebut.
Multiprocessing juga kadang merujuk kepada kemampuan eksekusi terhadap beberapa proses perangkat lunak dalam sebuah sistem secara serentak, jika dibandingkan dengan sebuah proses dalam satu waktu, meski istilah multiprogramming lebih sesuai untuk konsep ini. Multiprocessing sering diimplementasikan dalam perangkat keras (dengan menggunakan beberapa CPU sekaligus), sementara multiprogramming sering digunakan dalam perangkat lunak. Sebuah sistem mungkin dapat memiliki dua kemampuan tersebut, salah satu di antaranya, atau tidak sama sekali.
Multiprocessing dapat dibagi ke dalam beberapa kelas, yakni:
§  Berdasarkan simetrinya, multiprocessing:
o Asymmetric Multiprocessing (ASMP)
o Symmetric Multiprocessing (SMP)
o Non-uniform memory access (NUMA) multiprocessing
o Clustering
§  Berdasarkan jumlah instruksi dan datanya:
o SISD (Single Instruction on Single Data Stream)
o SIMD (Single Instruction on Multiple Data Stream)
o MISD (Multiple Instruction on Single Data Stream)
o MIMD (Multiple Instruction on Multiple Data Stream)
§  Berdasarkan kedekatan antar prosesor:
o Loosely coupled
o Thightly coupled
v Asymmetric Multiprocessing
Dalam Asymmetric Multiprocessing (AMP), sistem operasi biasanya menyisihkan satu atau lebih prosesor untuk penggunaan tertentu secara eksklusif. sisa dari prosesor yang lain akan menjalankan aplikasi user. Hal ini akan memaksa aplikasi untuk menunggu sementara sistem membangun Catche yang akan mengurangi kecepatan transfer keseluruhan sistem. Dalam mode ini, jika prosesor mengalami kegagalan pada sistem operasi , seluruh komputer akan Down!
v  Symmetric Multiprocessing
Symmetric Multiprocessing (SMP) menggunakan teknologi yang menghasilkan kinerja yang lebih baik. Dalam Symmetric Multiprocessing (SMP) setiap prosesor dapat menjalankan semua jenis bagian. Prosesor berkomunikasi satu dengan yang lainnya melalui memori yang digunakan bersama.
Sistem Symmetric Multiprocessing (SMP) memiliki Load-Balancing (Keseimbangan Pemuatan) dan toleransi kesalahan yang lebih baik. Hal ini dikarenakan bagian dalam sistem operasi dapat berjalan pada prosesor manapun dan kemungkinan terjadinya error dan hambatan pada CPU akan berkurang.
Semua prosesor diizinkan menjalankan campuran berbagai macam aplikasi dan kode sistem operasi. Kegagalan prosesor dalam mode Symmetric Multiprocessing (SMP) kapasitas komputasi (Kemampuan dalam mengkomputerisasi suatu tugas) dan tidak akan membuat sistem menjadi Down atau lumpuh total.
Sistem Symmetric Multiprocessing (SMP) secara langsung lebih kompleks daripada sistem Asymmetric Multiprocessing (AMP). Seluruh koordinasi harus berlangsung dalam sistem operasi untuk menjaga semuanya tetap tersinkronisasi. Dengan alasan tersebut, sistem Symmetric Multiprocessing (SMP) biasanya dirancang dan ditulis dari bawah keatas.
SMP
v  Non-uniform Memory Access (NUMA)
Non-Uniform Memory Access atau Non-Uniform Memory Arsitektur (NUMA) adalah memori komputer Rancangan yang digunakan dalam multiprocessors , dimana waktu akses memori tergantung pada lokasi memori relatif terhadap prosesor. Under NUMA, Dalam NUMA, prosesor atau NUMA multiprocessor adalah sebuah sistem shared memory dimana waktu aksesnya bervariasi ke lokasi memori word.
NUMA

3.  Multitasking

Multitasking adalah istilah teknologi informasi dalam bahasa Inggris yang mengacu kepada sebuah metode dimana banyak pekerjaan atau dikenal juga sebagai proses diolah dengan menggunakan sumberdaya CPU yang sama. Dalam kasus sebuah komputer dengan prosesor tunggal, hanya satu instruksi yang dapat bekerja dalam satu waktu, berarti bahwa CPU tersebut secara aktif mengolah instruksi untuk satu pekerjaan tersebut.
Multitasking memecahkan masalah ini dengan menjadwalkan pekerjaan mana yang dapat berjalan dalam satu waktu, dan kapan pekerjaan yang lain menunggu untuk diolah dapat dikerjakan. Kondisi mengalokasikan CPU dari pekerjaan satu ke pekerjaan yang lain disebut context switch.
Ketika context switch terjadi dengan sangat cepat — kondisi ini cukup untuk memberikan ilusi pengolahan-paralel. Bahkan dalam komputer yang memiliki lebih dari satu CPU (disebut multi-prosesor), Multitasking memperbolehkan lebih banyak pekerjaan dijalankan dibanding dengan jumlah CPU yang tersedia.
Contoh sistem operasi jenis ini antara lain adalah linux. Linux adalah sistem operasi yang multitasking dan multiuser seperti kebanyakan SO yang ada pada saat ini. Multitasking pada linux artinya linux bisa atau mampu menjalankan beberapa proses dalam waktu yang bersamaan.
Seperti contoh pada saat kita menjalan kan aplikasi web browser kita juga bisa menjalankan aplikasi kompresi file. Sedangkan multiuser pada linux adalah user bisa login ke dalam sistem secara bersamaan, dengan artinya user bisa menggunakan satu sistem secara bersamaan dalam satu waktu.

4.  Timesharing

Time sharing adalah pengembangan dari sistem multiprogram. Beberapa job yang berada pada memory utama dieksekusi oleh CPU secara bergantian. CPU hanya bisa menjalankan program yang berada pada memory utama. Perpindahan antar job terjadi sangat sering sehingga user dapat berinteraksi dengan setiap program pada saat dijalankan. Suatu job akan dipindahkan dari memori ke disk dan sebaliknya.
Sistem time sharing juga disebut dengan sistem komputasi interaktif, dimana sistem komputer menyediakan komunikasi online antara user dengan sistem. User memberikan instruksi pada sistem operasi atau program secara langsung dan menerima respon segera. Perangkat input berupa keyboard dan perangkat output berupa display screen, seperti cathode-ray tube (CRT) atau monitor. Bila sistem operasi selesai mengeksekusi satu perintah, makan sistem akan mencari pernyataan berikutnya dari user melalui keyboard. Sistem menyediakan editor interaktif untuk menulis program dan sistem debug untuk membantu melakukan debugging program.
Agar user dapat mengakses data dan kode program dengan nyaman, system menyediakan sistem file online. Suatu file adalah kumpulan informasi yang berhubungan yang didefinisikan oleh pembuatnya. Biasanya, file berupa program (baik bentuk source dan object) dan data. Data file berupa teks dengan format tertentu. Secara umum, file adalah kumpulan bit, bite, baris atau record. Sistem operasi mengimplementasikan konsep abstrak dari file dengan mengatur perangkat program dengan nyaman, system menyediakan sistem file online. Suatu file adalah kumpulan informasi yang berhubungan yang didefinisikan oleh pembuatnya. Biasanya, file berupa program (baik bentuk source dan object) dan data. Data file berupa teks dengan format tertentu. Secara umum, file adalah kumpulan bit, bite, baris atau record. Sistem operasi mengimplementasikan konsep abstrak dari file dengan mengatur perangkat penyimpan seperti tape dan disk. File secara normal diorganisasikan dalam logical cluster atau directory, untuk memudahkan lokasi dan akses file.

Post a Comment

0 Comments