Selasa, 25 September 2012

Perbedaan Multitasking, Multiprocessing, dan Distributed processing


A. Multitasking

Multitasking adalah istilah teknologi informasi 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 memjadwalkan 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. Ketikacontext 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.
Sistem operasi komputer dapat juga mengadopsi berbagai macam strategi penjadwalan, yang secara garis besar dapat dikategorikan sebagai berikut:
§  Dalam sistem multi-program, pekerjaan yang sedang diolah terus berjalan hingga membutuhkan suatu operasi yang memerlukan interaksi dari luar. (e.g. membaca dari tape). Sistem multi-program didesain untuk memaksimalkan penggunaan CPU.
§  Dalam sistem time-sharing , pekerjaan yang sedang diolah diharuskan melepaskan kerja CPU, baik secara sukarela atau dari interaksi luar, seperti interupsi-perangkat-keras. Sistem Time-sharing didesain untuk memperbolehkan beberapa program seolah diproses secara bersamaan.
§  Dalam sistem real-time, beberapa program yang sedang menunggu dijamin untuk mendapatkan pengolahan dari CPU ketika interaksi luar terjadi. Sistem real-time didesain untuk melakukan kontrol mekanik seperti robot-robot industri, yang memerlukan ketepatan pemrosesan.
Dewasa ini, penggunaan istilah time-sharing jarang digunakan, dan digantikan dengan istilah multitasking.

B. Multiprocessing
Multiprocessing merupakan istilah teknologi informasi 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.
Multipengolahan' 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.
Multipengolahan dibagi ke dalam beberapa kelas, yakni:
§  Berdasarkan simetrinya, multiprocessing dapat dibagi ke dalam
§  Asymmetric Multiprocessing (ASMP)
§  Symmetric Multiprocessing (SMP)
§  Non-uniform memory access (NUMA) multiprocessing
§  Clustering
§  Berdasarkan jumlah instruksi dan datanya, dapat dibagi ke dalam (lihat Taksonomi Flynn)
§  SISD (Single Instruction on Single Data Stream)
§  SIMD (Single Instruction on Multiple Data Stream)
§  MISD (Multiple Instruction on Single Data Stream)
§  MIMD (Multiple Instruction on Multiple Data Stream)
§  Berdasarkan kedekatan antar prosesor, dapat dibagi ke dalam
§  Loosely coupled
§  Thightly coupled

C. Distributed Processing
Distributed processing adalah dimana sejumlah komputer mini komputer, workstation atau personal komputer menangani semua proses yang didistribusikan secara phisik melalui jalur jaringan komunikasi.
Salah satu bentuk dari distributed processing adalah arsitektur client-server. Menurut Wikipedia, klien-server atau client-server merupakan sebuah paradigma dalam teknologi informasi yang merujuk kepada cara untuk mendistribusikan aplikasi ke dalam dua pihak: pihak klien dan pihak server. Dalam model klien/server, sebuah aplikasi dibagi menjadi dua bagian yang terpisah, tapi masih merupakan sebuah kesatuan yakni komponen klien dan komponen server. Komponen client juga sering disebut sebagai front-end, sementara komponen server disebut sebagai back-end. Komponen client dari aplikasi tersebut dijalankan dalam sebuah workstation dan menerima masukan data dari pengguna. Komponen client tersebut akan menyiapkan data yang dimasukkan oleh pengguna dengan menggunakan teknologi pemrosesan tertentu dan mengirimkannya kepada komponenserver yang dijalankan di atas mesin server, umumnya dalam bentuk request terhadap beberapa layanan yang dimiliki olehserver. Komponen server akan menerima request dari clinet, dan langsung memprosesnya dan mengembalikan hasil pemrosesan tersebut kepada clientClient pun menerima informasi hasil pemrosesan data yang dilakukan server dan menampilkannya kepada pengguna, dengan menggunakan aplikasi yang berinteraksi dengan pengguna.

sumber : 
http://awaninsky.wordpress.com/2011/10/10/arsitektur-telematika/

Tidak ada komentar:

Poskan Komentar