Setiap proses dalam sebuah sistem operasi mendapatkan
sebuah PCB (Process Control Block). PCB (Process Control Block) ini sendiri
adalah informasi-informasi lain yang diperlukan sebuah sistem operasi untuk
mengendalikan dan mengkoordinasikan beragam proses yang aktif. Informasi-informasi
tersebut merupakan 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 merubah 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 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.
A.
Pointer
Merupakan perubahan dinamis dimana suatu perubahan yang akan dialokasikan hanya pada saat diperlukan, yaitu setelah program di eksekusi.
Merupakan perubahan dinamis dimana suatu perubahan yang akan dialokasikan hanya pada saat diperlukan, yaitu setelah program di eksekusi.
B.
Status Proses
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
Status yang dimiliki pada
saat proses baru saja dibuat oleh penjadwalan tingkat tinggi, tetapi belum siap
melakukan eksekusi.
b.
Ready
Status
yang dimiliki pada saat proses siap dieksekusi oleh prosesor.
c.
Running
Status yang dimiliki pada
saat instruksi-instruksi dari sebuah proses dieksekusi. Proses bisa dieksekusi
karena CPU tidak sedang mengerjakan tugas yang lain.
d.
Waiting
Status yang dimiliki pada
saat proses menunggu suatu event (kejadian), seperti penyelesaian I/O atau
menerima signal.
e.
Terminated
Status yang dimiliki pada
saat proses telah selesai dieksekusi.
