KONSEP PROSES
Sistem
operasi mengeksekusi berbagai
jenis program. Pada
sistem batch program tersebut
biasanya disebut dengan
job, sedangkan pada sistem time sharing, program disebut dengan program user atau task. Beberapa
buku teks menggunakan istilah job atau proses.
Proses
adalah program yang
sedang dieksekusi. Eksekusi
proses dilakukan secara berurutan. Dalam suatu proses terdapat program counter, stack dan daerah data.
Status Proses
Meskipun tiap-tiap proses terdiri dari suatu
kesatuan yang terpisah namun adakalanya proses-proses tersebut butuh untuk
saling berinteraksi. Satu proses bisa dibangkitkan dari output proses lainnya
sebagai input.
Pada saat proses dieksekusi, akan terjadi perubahan
status. Status proses didefiniskan
sebagai bagian dari
aktivitas proses yang
sedang berlangsung saat
itu. Gambar dibawah menunjukkan diagram status proses. Status proses terdiri dari :
- New: proses sedang dibuat
- Running: proses sedang dieksekusi
- Waiting: proses sedang menunggu beberapa event yang akan terjadi (seperti menunggu untuk menyelesaikan I/O atau menerima sinyal).
- Ready: proses menunggu jatah waktu dari CPU untuk diproses
- Terminated: proses telah selesai dieksekusi
Process Control Block (PCB)
Masing-masing
proses direpresentasikan oleh
Sistem Operasi dengan menggunakan Process Control Block
(PCB), seperti yang terlihat pada Gambar
Informasi yang terdapat pada setiap proses meliputi
:
- Status Proses. New, ready, running, waiting dan terminated.
- Program Counter. Menunjukkan alamat berikutnya yang akan dieksekusi oleh proses tersebut
- CPU Registers. Register bervariasi tipe dan jumlahnya tergantung arsitektur komputer yang bersangkutan. Register-register tersebut terdiri-atas: accumulator, index register, stack pointer, dan register serbaguna dan beberapa informasi tentang kode kondisi. Selama Program Counter berjalan, status informasi harus disimpan pada saat terjadi interrupt. Gambar diatas menunjukkan switching proses dari satu proses ke proses berikutnya.
- Informasi Penjadwalan CPU. Informasi tersebut berisi prioritas dari suatu proses, pointer ke antrian penjadwalan, dan beberapa parameter penjadwalan yang lainnya.
- Informasi Manajemen Memori. Informasi tersebut berisi nilai (basis) dan limit register, page table, atau segment table tergantung pada sistem memory yang digunakan oleh SO.
- Informasi Accounting. Informasi tersebut berisi jumlah CPU dan real time yang digunakan, time limits, account numbers, jumlah job atau proses, dll.
- Informasi Status I/O. Informasi tersebut berisi deretan I/O device (seperti tape driver) yang dialokasikan untuk proses tersebut, deretan file yang dibuka, dll
Perpindahan CPU dari satu proses ke
proses lain
Tidak ada komentar:
Posting Komentar