Tuesday

Proses dan Threads Pada Sistem Operasi



Suatu proses didefinisikan oleh  resourceyang digunakan dan lokasi yang akan  dieksekusi. Namun adakalanya proses-proses akan menggunakan resource secara  bersama-sama. Suatu unit dasar dari CPU utilizationyang berisi program counter, kumpulan register, dan ruang stack disebut dengan  threadatau  lighweight process (LWP).  
 Threadakan bekerjasama dengan  threadyang lainnya dalam hal penggunaan bagian kode, bagian data, dan  resourcesistem operasi, seperti open file dan sinyal secara kolektif yang sering disebut dengan task.
Apabila dilakukan perbandingaan antara sistem  multi threaddengan sistem  multi proses dapat disimak berikut. Pada multi proses, setiap proses secara terpisah melakukan operasi tidak bekerja sama dengan proses  lain, setiap proses mempunyai  program counter,  stack registerdan ruang alamat sendiri. Organisasi jenis ini berguna jika  jobdibentuk oleh proses-proses yang tidak saling berhubungan. Multi proses membentuk  taskyang sama. 
Sebagai contoh, multi proses dapat menyediakan data untuk mesin secara remotepada implementasi system file jaringan. Hal ini lebih efisien apabila satu proses terdiri dari  multi threadmelayani tugas yang sama. Pada implementasi multi proses, setiap proses mengeksekusi kode yang sama tetapi mempunyai memori dan  resource filesendiri. Satu proses  multi threadmenggunakan  resourcelebih sedikit daripada multi proses, termasuk memory,  open filedan  penjadwalan CPU.
Seperti halnya proses,  threadmemiliki status:  ready,  blocked,  runningdan terminated, dan hanya satu  threadyang aktif dalam satu waktu. Threaddapat membuat child  thread. Jika satu  threaddalam keadaan  blocked, maka  threadyang lainnya dapat  dijalankan. 
Namun, tidak saling bebas, Sebab semua  thread  dapat mengakses setiap alamat dalam satu task,  thread  dapat membaca dan menulisi stack dari  threadyang lainnya. Sehingga tidak ada proteksi antara satu  threadterhadap  threadyang lainnya.


No comments:

Post a Comment