PROCESS Dalam komputasi, proses yang adalah turunan dari program

advertisement
PROCESS
Dalam komputasi, proses yang adalah turunan dari program komputer yang dieksekusi. Ini
berisi kode program dan kegiatan saat ini. Tergantung pada sistem operasi (OS), proses yang
dapat terdiri dari beberapa thread eksekusi yang mengeksekusi instruksi secara bersamaan. [1]
[2]
Sebuah program komputer adalah kumpulan instruksi pasif; proses adalah pelaksanaan
sebenarnya instruksi tersebut. Beberapa proses dapat dihubungkan dengan program yang
sama, misalnya, membuka beberapa contoh program yang sama sering berarti lebih dari satu
proses sedang dieksekusi.
Multitasking merupakan metode untuk memungkinkan beberapa proses untuk berbagi
prosesor (CPU) dan sumber daya sistem lainnya. Setiap CPU mengeksekusi satu tugas pada satu
waktu. Namun, multitasking memungkinkan setiap prosesor untuk beralih antara tugas yang
sedang dijalankan tanpa harus menunggu untuk setiap tugas sampai akhir. Tergantung pada
implementasi sistem operasi, switch dapat dilakukan ketika tugas melakukan operasi input /
output, ketika tugas menunjukkan bahwa dapat diaktifkan, atau pada hardware interrupts.
Bentuk umum multitasking adalah time-sharing. Time-sharing adalah suatu metode untuk
memungkinkan respon yang cepat untuk aplikasi pengguna interaktif. Dalam sistem timesharing, switch konteks dilakukan dengan cepat. Hal ini membuatnya tampak seperti beberapa
proses sedang dieksekusi secara bersamaan pada prosesor yang sama. Pelaksanaan beberapa
proses secara bersamaan tampaknya disebut concurrency.
Untuk alasan keamanan dan kehandalan sistem operasi paling modern mencegah komunikasi
langsung antara proses independen, menyediakan ketat dimediasi dan terkendali antar proses
fungsi komunikasi.
THREADS
Dalam ilmu komputer, sebuah thread eksekusi adalah unit terkecil dari pengolahan yang dapat
dijadwalkan oleh sistem operasi. Pelaksanaan benang dan proses berbeda dari satu sistem
operasi ke yang lain, tetapi dalam banyak kasus, thread yang terkandung di dalam suatu proses.
Beberapa thread dapat berada dalam proses yang sama dan berbagi sumber daya seperti
memori, sedangkan proses yang berbeda tidak berbagi sumber daya tersebut. Secara khusus,
benang dari sebuah proses berbagi instruksi yang terakhir (kode) dan konteksnya (nilai-nilai
yang variabel nya referensi pada suatu waktu tertentu). Untuk memberikan analogi, beberapa
thread dalam proses yang sama seperti beberapa koki membaca dari buku masak yang sama
dan mengikuti instruksi, tidak harus dari halaman yang sama.
Pada prosesor tunggal, multithreading umumnya terjadi dengan time-division multiplexing
(seperti dalam multitasking): prosesor switch antara benang yang berbeda. Ini konteks
switching umumnya sering terjadi cukup bahwa pengguna merasakan benang atau tugas
sebagai berjalan pada waktu yang sama. Pada multiprosesor (termasuk multi-core sistem),
benang atau tugas benar-benar akan berjalan pada saat yang sama, dengan setiap prosesor
atau inti berjalan thread tertentu atau tugas.
Banyak sistem operasi modern langsung mendukung baik waktu-iris dan multiprosesor
threading dengan scheduler proses. Kernel dari suatu sistem operasi memungkinkan
programmer untuk memanipulasi benang melalui antarmuka system call. Beberapa
implementasi yang disebut kernel thread, sedangkan proses ringan (LWP) adalah jenis khusus
dari kernel thread yang berbagi negara yang sama dan informasi.
Program dapat memiliki user-space thread ketika threading dengan timer, sinyal, atau metode
lain untuk mengganggu eksekusi mereka sendiri, melakukan semacam ad-hoc waktu mengiris.
Download