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.