CONTROL PROSES
Dalam pengendalian antar proses
Ø Saling melanjutkan (interleave), Sistem operasi harus dapat
kembali melanjutkan proses setelah melayani proses
lain.
Ø Kebijaksaan tertentu,
Sistem operasi harus
mengalokasikan sumber daya ke
proses berdasar prioritasnya.
Ø Komunikasi antar proses dan penciptaan proses, Sistem operasi harus mendukung komunikasi dan penciptaan
antar proses (menstrukturkan aplikasi).
STATE PROSES
Sebuah proses akan mengalami
serangkaian state diskrit. Beragam kejadian dapat menyebabkan perubahan state
proses. Tiga state tersebut adalah sebagai berikut :
Ø Running, Proses
sedang mengeksekusi instruksi proses
Ø Ready,
Proses siap dieksekusi, tetapi
proses tidak tersedia untuk eksekusi proses ini.
Ø Blocked,
Proses menunggu kejadian untuk
melengkapi tugasnya
Proses yang baru diciptakan akan
mempunyai state ready.
Ø Proses berstate running menjadi blocked,
karena sumbar daya yang diminta belum tersedia atau meminta layanan perangkat
masukan/keluaran, sehingga menunggu kejadian muncul. Proses menunggu kejadian
alokasi sumber daya atau selesainya layanan perangkat masukan/keluaran (event
wait).
Ø Proses berstate running menjadi ready, karena
penjadwal memutuskan eksekusi proses lain karena jatah waktu untuk proses tersebut
telah habis (time out).
Ø Proses berstate blocked menjadi ready saat
sumber daya yang diminta/ diperlukan telah tersedia atau layanan perangkat
masukan/keluaran selesai (event occurs).
Ø Proses berstate ready menjadi running, karena
penjadwal memutuskan penggunaan pemroses utnuk proses itu karena proses yang
saat itu running berubah statenya (menjadi ready atau blocked)
atau telah menyelesaikan sehingga disingkirkan dari sistem. Proses menjadi
mendapatkan jatah pemroses.
OPERASI SUSPEND DAN RESUME
PENTING, SEBAB - SEBAB
Ø Jika sistem berfungsi secara buruk dan mungkin gagal maka
proses-proses
dapat disuspend agar diresume setelah masalah diselesaikan.Contoh : ada proses pencetakan, bila tiba-tiba kerta habis maka proses disuspend. Setelah kertas dimasukkan kembali, proses pun dapat diresume.
dapat disuspend agar diresume setelah masalah diselesaikan.Contoh : ada proses pencetakan, bila tiba-tiba kerta habis maka proses disuspend. Setelah kertas dimasukkan kembali, proses pun dapat diresume.
Ø Pemakai yang ragu/khawatir mengenai hasil prose dapat
mensuspend proses (bukan membuang (abort) proses). Saat pemakai yakin
proses akan berfungsi secara benar maka dapat me-resume (melanjutkan kembali di
instruksi saat disuspend) proses yang disuspend.
Ø Sebagai tanggapan terhadap fluktuasi jangka pendek beban
sistem, beberapa proses dapat disuspend dan diresume saat beban
kembali ke tingkat normal.
Dua state baru dimasukkan sehingga
membentuk diagram 5 state, yaitu :
Ø Suspended ready
Ø Suspended blocked
Penundaan dapat diinisialisasi oleh
proses itu sendiri atau proses lain.
Ø Pada sistem monoprocessor, proses running dapat
mensuspend dirinya sendiri karena tak ada proses lain yang juga running yang
dapat memerintahkan suspend.
Ø Pada sistem multiprocessor, proses running dapat
disuspend proses running lain pada pemroses berbeda. Proses ready hanya dapat
di suspend oleh proses lain.
Pada proses blocked terdapat
transisi menjadi suspended blocked. Pilihan ini dirasa aneh. Apakah
tidak cukup menunggu selesainya operasi masukan/keluaran atau kejadian yang
membuat proses ready atau suspended ready?. Bukankah state blocked, ready
blocked, suspended blocked sama-sama tidak mendapat jatah waktu pemroses ?.
Kenapa dibedakan ?.
Alasannya, karena penyelesaian
operasi masukan/keluaran bagi proses blocked mungkin tak pernah terjadi atau
dalam waktu tak terdefinisikan sehingga lebih baik disuspend agar sumber
daya-sumber daya yang dialokasikan untuk proses tersebut dapat digunakan
proses-proses lain. Untuk kondisi ini, lebih baik sumber daya-sumber daya yang
dipegang proses yang berkondisi seperti ini dipakai proses-proses lain. Proses
blocked disuspend sistem atau secara manual menjadi suspended blocked.
Bila akhirnya operasi masukan/keluaran
berakhir maka segera proses suspended blocked mengalami transisi.
Karena resume dan suspend mempunyai prioritas tinggi maka
transisi segera dilakukan. Suspend dan resume dapat digunakan
untuk menyeimbangkan beban sistem saat mengalami lonjakan di atas normal.
PROGRAM CONTROL BLOCK
Struktur data PCB menyimpan
informasi lengkap mengenai proses sehingga dapat terjadi siklus hidup proses.
Sistem operasi memerlukan banyak informasi mengenai proses guna pengelolaan
proses. Informasi ini berada di PCB. Sistem berbeda akan mengorganisasikan
secara berbeda.
Informasi dalam PCB :
Informasi Identifikasi Proses
Informasi ini berkaitan dengan
identitas proses yang berkaitan dengan tabel lainnya. Informasi tersebut
meliputi :
Ø Identifier proses
Ø Identifier proses yang menciptakan
Ø Identifier pemakai
Informasi status pemroses
Informasi tentang isi
register-register pemroses. Saat proses berstatus running, informasi tersebut
berada diregister-register. Ketika proses diinterupsi, semua
informasi register harus
disimpan agar dapat
dikembalikan saat proses
dieksekusi kembali. Jumlah dan jenis
register yang terlibat tergantung arsitektur komputer. Informasi status terdiri
dari :
Ø Register-register yang terlihat pemakai, adalah register-register yang dapat
ditunjuk instruksi bahasa assembly untuk diproses pemroses.
Ø Register-register kendali dan status, Adalah register-register yang
digunakan untuk mengendalikan operasi pemroses.
Ø Pointer stack,
tiap proses mempunyai satu atau
lebih stack, yang digunakan untuk parameter atau alamat prosedur pemanggil dan
system call. Pointer stack menunjukkan posisi paling atas dari stack.
Informasi kendali proses
Informasi kendali proses adalah
informasi lain yang diperlukan sistem operasi untuk mengendalikan dan
koordinasi beragam proses aktif. Informasi kendali terdiri dari :
Ø Informasi penjadwalan dan status, Informasi-informasi yang digunakan untuk menjalankan fungsi
penjadwalan, antara lain :
v Status proses, Mendefinisikan
keadaan/status proses (running, ready, blocked)
v Prioritas, Menjelaskan
prioritas proses.
v Informasi berkaitan dengan penjadwalan, Berkaitan dengan informasi
penjadwalan, seperti lama menunggu, lama proses terakhir dieksekusi.
v Kejadian,
Identitas kejadian yang ditunggu
proses.
Ø Penstrukturan data,
satu proses dapat dikaitkan dengan proses lain dalam satu antrian atau ring,
atau struktur lainnya. PCB harus memiliki pointer untuk mendukung struktur ini.
Ø Komuikasi antar proses, beragam flag, sinyal dan
pesan dapat diasosiasikan dengan komunikasi antara dua
proses yang terpisah.
Ø Manajemen memori
Bagian yang berisi pointer ke tabel segmen atau page yang menyatakan memori
maya (virtual memory) proses.
Ø Kepemilikan dan utilisasi sumber daya, sumber daya yang dikendalikan proses harus diberi tanda,
misalnya :
Informasi ini diperlukan oleh
penjadwal.
Struktur citra proses digambarkan
berurutan di satu ruang alamat. Implementasi penempatan citra proses yang
sesungguhnya bergantung skema manajemen memori yang digunakan dan organisasi
struktur kendali sistem operasi.
0 komentar :
Posting Komentar