Process Control Block



1. Pengertian Process Control Block  
       
          Program bukanlah sebuah proses, suatu program adalah satu entitas pasif; seperti isi dari sebuah berkas yang disimpan didalam disket. Sedangkan sebuah proses dalam suatu entitas aktif, dengan sebuah program counter yang menyimpan alamat instruksi selanjut yang akan dieksekusi dan seperangkat sumber daya ( resource yang dibutuhkan agar sebuah proses dapat dieksekusi) .

          Setiap proses dalam sebuah sistem operasi mendapatkan sebuah PCB (Process Control Block) yang memuat informasi tentang proses tersebut, yaitu: sebuah tanda pengenal proses (Process ID) yang unik dan menjadi nomor identitas, status proses, prioritas eksekusi proses dan informasi lokasi proses dalam memori. Prioritas proses merupakan suatu nilai atau besaran yang menunjukkan seberapa sering proses harus dijalankan oleh prosesor. Proses yang memiliki prioritas lebih tinggi, akan dijalankan lebih sering atau dieksekusi lebih dulu dibandingkan dengan proses yang berprioritas lebih rendah. 

          Suatu sistem operasi dapat saja menentukan semua proses dengan prioritas yang sama, sehingga setiap proses memiliki kesempatan yang sama. Suatu sistem operasi dapat juga mengubah nilai prioritas proses tertentu, agar proses tersebut akan dapat memiliki kesempatan lebih besar pada eksekusi berikutnya (misalnya: pada proses yang sudah sangat terlalu lama menunggu eksekusi, sistem operasi menaikkan nilai prioritasnya).
          Process Control Block adalah informasi-informasi lain yang diperlukan SO untuk mengendalikan dan koordinasi beragam proses aktif. 

2. Proses Control Block 




          Process Control Block ini  hanya berfungsi sebagai tempat penyimpanan informasi yang dapat  bervariasi dari proses yang satu dengan yang lain. Setiap proses digambarkan dalam sistem operasi oleh sebuah Process Control Block (PCB). PCB ini berisikan banyak informasi yang berhubungan dengan sebuah proses yang spesifik, yaitu pointer, status proses, program counter, CPU registers, informasi manajemen memori, informasi pencatatan, dan informasi status I/O.

1. Pointer Merupakan perubahan dinamis dimana suatu perubahan yang akan dialokasikan hanya pada saat diperlukan, yaitu setelah program di eksekusi.
2. Status Proses adalah sebagaimana proses bekerja, maka proses tersebut merubah state (keadaan statis/asal). Status dari sebuah proses didefinisikan dalam bagian oleh aktivitas yang ada dari proses tersebut. Tiap proses mungkin adalah satu dari keadaan proses new, ready, running, waiting, terminated.
a. New yaitu Status yang dimiliki pada saat proses baru saja dibuat oleh penjadwalan tingkat tinggi, tetapi belum siap melakukan eksekusi.
b. Ready yaitu Status yang dimiliki pada saat proses siap dieksekusi oleh prosesor.
c. Running yaitu Status yang dimiliki pada saat instruksi-instruksi dari sebuah proses dieksekusi. Proses bisa dieksekusi karena CPU tidak sedang mengerjakan tugas yang lain.
d.  Waiting yaitu Status yang dimiliki pada saat proses menunggu suatu event (kejadian), seperti penyelesaian I/O atau menerima signal.
e. Terminated yaitu Status yang dimiliki pada saat proses telah selesai dieksekusi.
          Hanya satu proses yang dapat berjalan pada prosesor mana pun pada satu waktu. Namun, banyak proses yang dapat berstatus Ready atau Waiting. Ada tiga kemungkinan bila sebuah proses memiliki status Running, yaitu:
          = Jika program telah selesai dieksekusi maka status dari proses tersebut akan berubah menjadi Terminated.
         = Jika waktu yang disediakan oleh OS untuk proses tersebut sudah habis maka akan terjadi interupsi dan proses tersebut berstatus Ready.
         = Jika suatu event (kejadian) terjadi pada saat proses dieksekusi maka proses tersebut akan menunggu event tersebut selesai dan proses berstatus Waiting. 
3. Program counter: Counter mengindikasikan address dari perintah selanjutnya untuk dijalankan untuk ditambah code information pada kondisi apapun. Besertaan dengan program counter, keadaan/ status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/bekerja dengan benar setelahnya.
4. 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 (ch 9).
5. Informasi pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan bataswaktu, jumlah akun, jumlah job atau proses, dan banyak lagi.
6. Informasi status I/O: Informasi termasuk daftar dari perangkat I/O yang di gunakan pada proses ini,suatu daftar open file dan banyak lagi. 
7. PCB hanya berfungsi sebagai tempat menyimpan/gudang untuk informasi apapun yang dapatbervariasi dari prose ke proses.proses ini. 
8. CPU Register: Register bervariasi dalam jumlah dan jenis tergantung pada rancangan komputer, register tersebut termasuk accumulator, index register, stack pointer, general-puposes register.


3. Elemen-elemen PCB



a. Identifier : menjelaskan proses yang sedang terjadi
b. State : kondisi yang terjadi pada proses
c. Priority : urutan perintah yang jelas pad suatu proses
d. Program counter : instruksi pada proses
e. Memory pointers : media penyimpanan (penunjuk alamat) pada proses
f. Context data : data yang berkaitan dengan proses
g. I/O status information : terdapat masukan dan keluaran yang diinginkan
h. Accounting information : memberikan informasi yang dibutuhkan

4. Macam-Macam Jenis Status Proses

        Jenis status yang mungkin dapat disematkan pada suatu proses pada setiap sistem operasi dapat berbeda-beda. Tetapi paling tidak ada 3 macam status yang umum, yaitu:

1.Ready adalah status dimana proses siap untuk dieksekusi pada giliran berikutnya.
2.Running adalah status dimana saat ini proses sedang dieksekusi oleh prosesor.
3.Blocked adalah status dimana proses tidak dapat dijalankan pada saat prosesor siap/bebas.

 

Sumber :
http://femmifirdausahdiat.blogspot.com/2012/09/pcb-process-control-block.html
https://uniquesciences.wordpress.com/2012/10/04/process-control-block-pcb/
http://hs32tiuntan.blogspot.com/2013/03/process-control-block-pcb.html

Tidak ada komentar:

Posting Komentar

Tugas Individu 3

Direct Memory Access (DMA)   1. Pengertian DMA           Direct memory access (DMA) adalah suatu alat pengendali khusus dis...