Program Control Block atau yang biasa kita singkat menjadi PCB adalah informasi-informasi yang dibutuhkan Sistem Operasi untuk mengendalikan dan mengkoordinasikan beragam proses aktif. PCB hanya berfungsi sebagai tempat penyimpanan informasi yang dapat bervariasi dari proses satu dengan proses yang lainnya.
- Process State
Status dari sebuah program didefinisikan dalam bagian oleh aktivitas yang ada dari proses tersebut. Process state meliputi;
- New adalah keadaan dimana suatu proses baru saja dimulai
- Ready adalah keadaan dimana suatu proses siap untuk dieksekusi
- Running adalah keadaan pada saat intruksi dari proses eksekusi sedang dilakukan
- Waiting adalah keadaan dimana proses menunggu suatu kejadian, berupa menerima sinyal atau penyelesaian I/O
- Terminated adalah keadaan pada saat proses telah selesai dieksekusi
- Program Counter
Program counter menunjukkan alamat berikutnya yang akan dieksekusi oleh proses, dapat juga mengindikasikan alamat dari perintah selanjutnya untuk dijalankan. Selama Program Counter berjalan, status informasi harus disimpan pada saat terjadi interrupt.
- CPU Register
Register beragam dalam jumlah dan jenisnya tergantung pada rancangan arsitektur komputer yang bersangkutan. Register tersebut terdiri dari accumulator, stack pointer, index register, general-purposes register, ditambah code information pada kondisi apa pun.
- CPU Scheduling Information
CPU scheduling information berisikan tentang prioritas dari sebuah proses, pointer ke antrian penjadwalan, dan beberapa parameter penjadwalan yang lainnya.
- Accounting Information
Accounting infotmation berisikan jumlah CPU dan real time yang digunakan, account numbers, time limits, jumlah job maupun proses, dan lain sebagainya.
- I/O Status Information
I/O Status Information berisikan deretan input output device yang dialokasikan untuk proses tersebut, deretan file yang dibuka, dan lain sebagainya.
