Senin, 24 Maret 2014

Thread dan Proses

"Thread dan Process"

Proses adalah konsep pokok dari sistem operasi. Berbagai macam defnisi mengenai proses telah dicetuskan. Secara sederhana, proses adalah sebuah program yang dieksekusi. Proses merupakan unit kerja terkecil yang secara individu memiliki sumber daya-sumber daya dan dijadwalkan sistem operasi. Sistem operasi mengelola semua proses di sistem dan mengalokasikan sumber daya ke proses sesuai kebutuhan. 

Status Proses 
Proses yang dieksekusi mempunyai lima status yang terdiri dari: 
a. new: Pembentukan suatu proses 
b. running: Instruksi-instruksi yang sedang dieksekusi 
c. waiting: Proses menunggu untuk beberapa event yang terjadi 
d. ready: Proses menunggu untuk dialirkan ke pemroses (processor) 
e. terminated: Proses telah selesai dieksekusi


Process Control Block (PCB) 
Setiap proses digambarkan dalam sistem operasi oleh sebuah process control block(PCB), juga disebut sebuah control block. PCB berisikan banyak bagian dari informasi yang berhubungan dengan sebuah proses yang spesifik, termasuk hal-hal di bawah ini: 

  • Status proses: status yang mungkin adalah new, ready, running, waiting, halted, dan seterusnya.
  • Program counter: suatu penghitung yang mengindikasikan alamat dari instruksi selanjutnya yang akan dieksekusi untuk proses tersebut. 
  • CPU register: Register bervariasi dalam jumlah dan tipenya, tergantung pada arsitektur komputer. Register tersebut termasuk accumulator, index register, stack pointer,general-purposes register, ditambah informasi condition-code. Bersama dengan program counter, keadaan/status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/bekerja dengan benar. 
  • Informasi manajemen memori: Informasi ini dapat termasuk suatu informasi sebagai nilai dari dasar dan batas register, tabel page/halaman, atau tabel segmen tergantung pada sistem memori yang digunakan oleh sistem operasi. 
  • Informasi pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu nyata yang digunakan, batas waktu, jumlah account, jumlah job atau proses, dan banyak lagi. 
  • Informasi status I/O: Informasi termasuk daftar dari perangkat I/O yang di gunakan pada proses ini, suatu daftar berkas-berkas yang sedang diakses dan banyak lagi. 

Diagram PCB

Thread merupakan unit dasar dari penggunaan CPU, yang terdiri dari Thread ID, program counter, register set, dan stack. Sebuah threadberbagi code section, data section, dan sumber daya sistem operasi dengan Thread lain yang dimiliki oleh proses yang sama. Thread juga sering disebut lightweight process. Sebuah proses tradisional atau heavyweight process mempunyai thread tunggal yang berfungsi sebagai pengendali. Perbedaannya ialah proses dengan thread yang banyakmengerjakan lebih dari satu tugas pada satu satuan waktu.

a. Single thread dan multi thread 
1.Single thread: process hanya mengeksekusi satu thread saja pada satu waktu
2.Multi thread: process dapat mengeksekusi sejumlah thread dalam satu waktu

Gambar Single Thread dan Multi Thread

b. Model Multithreading 
Dukungan thread disediakan pada tingkat user yaitu user threads atau tingka kernel untuk kernel threads. User Threads disediakan oleh kernel dan diatur tanpa dukungan kernel, sedangkan kernel therads didukung dan diatur secara langusng oleh sistem operasi.

0 Komentar:

Posting Komentar

Berlangganan Posting Komentar [Atom]

<< Beranda