BAB 2 Proses

One program counter Four program counters | Proses +-|---+ | : : | A : +-------+---+---+-------+ : +-|---+ | | | | D : __ __ : | B : | | | | : +-|---+ | | | | C : __ __ : | : | | | | : : | C : +-----+ +-----+ +-----+ +-----+ B : __ __ +-|---+ : | : : | : : | : : | : : : | D : : A V : : B V : : C V : : D V : A : __ __ +-|---+ +-----+ +-----+ : : +-----+ +----------------- V +-----+ time -------> (a) (b) (c) +----+----------------+----------------------------------------------------+ : NO : STATUS (STATE) : DESKRIPSI : +----+----------------+----------------------------------------------------+ : 1 : Running : Pemroses sedang mengeksekusi instruksi proses itu : : 2 : Ready : Proses siap dieksekusi, tetapi pemroses tidak : : : : tersedia untuk eksekusi proses ini : : 3 : Blocked : Proses menunggu kejadian untuk melengkapi tugasnya : : : : Contoh : : : : : a. Selesainya operasi perangkat masukan/keluaran : : : : b. Tersedianya memori : : : : c. Tibanya pesan jawaban : : : : d. Dan sebagainya : +----+----------------+----------------------------------------------------+ Tabel 3.1 : Tiga state dasar proses Timeout ++---------------------------++ :: :: \/ :: Submit +----------+ Dispatch +-----------+ Completion -------->: Ready :--------------->: Running :------------> +----------+ +-----------+ /\ /\ :: :: :: :: :: +------------+ :: ::-------: Blocked :------:: Event +------------+ Event occurs wait Gambar 3.1 Diagram tiga state dasar proses Timeout ++---------------------------++ :: :: \/ :: Submit +----------+ Dispatch +-----------+ Completion -------->: Ready :--------------->: Running :------------> +----------+ +-----------+ /\ :: /\ /\ :: :: :: :: :: :: :: Event :: Event :: :: :: occur :: wait :: :: :: +------------+ :: :: ::-----------------: Blocked : :: :: +------------+ :: :: /\ :: :: :: :: :: :: \/ I/O compeletion :: \/ +-----------+ atau +------------+ : Suspended :<------------->: Suspended : : ready : event : blocked : +-----------+ completion +------------+ Gambar 3.2 : Diagram lima state proses +---------------------------+ /\ : Identifikasi proses : || ----------------------------- || : Informasi status prose : || PCB (Process Control Block) ----------------------------- || : Informaasi kendali proses : || ----------------------------- \/ : : : Stack pemakai : : : ----------------------------- : Ruang alamat yang khusus : : diperuntukkan pemakai : : (program, data) : ----------------------------- : Ruang alamat bersama : ----------------------------- Gambar 3.3 : Proses pemakai +--+--------------------+--------------------------------------------------+ :NO: PENYEBAB TERMINASI : KETERANGAN : +--+--------------------+--------------------------------------------------+ :1 : Selesainya proses : Proses mengeksekusi panggilan layanan sistem : : : secara manual : operasi untuk menandakan bawah proses telah : : : : berjalan secara lengkap. : +--+--------------------+--------------------------------------------------+ :2 :Batas waktu telah : Proses telah berjalan melebihi batas waktu total : : :terlewati : yang dispesifikasikan.Terdapat banyak kemungkinan: : : : untuk tipe waktu yang diukur,termasuk waktu total: : : : yang dijalani (wait clock time),jumlah waktu yang: : : : dipakai untuk eksekusi, dan jumlah waktu sejak : : : : pemakai terakhir kali memberi masukan (pada : : : : proses interaktif). : +--+--------------------+--------------------------------------------------+ :3 : Memori tidak : Proses memerlukan memori lebih banyak daripada : : : tersedia : yang dapat disediakan sistem. : +--+--------------------+--------------------------------------------------+ :4 : Pelanggaran : Proses mencoba mengakses lokasi memori yang tidak: : : terhadap batas : diijinkan diakses. : : : memori : : +--+--------------------+--------------------------------------------------+ :5 : Terjadi kesalahan : Proses berusaha menggunakan sumber data atau file: : : karena pelanggaran : yang tidak diijinkan dipakainya, atau proses : : : proteksi : mencoba menggunakannya tidak untuk peruntukannya,: : : : seperti menulis file read only. : +--+--------------------+--------------------------------------------------+ :6 : Terjadi kesalahan : Proses memcoba perhitungan terlarang, seperti : : : aritmatika : pembagian dengan nol,atau mencoba menyimpan angka: : : : yang lebih besar daripada yang dapat diakomodasi : : : : oleh perangkat keras. : +--+--------------------+--------------------------------------------------+ :7 : Waktu telah : Proses telah menunggu lebih lama dari pada : : : kadaluwarsa : maksimum yang ditentukan untuk terjadinya suatu : : : : kejadian spesifik. : +--+--------------------+--------------------------------------------------+ :8 : Terjadi kegagalan : Kesalahan muncul pada masukan/keluaran, seperti : : : masukan/keluaran : ketidakmampuan menemukan file, kegagalan membaca : : : : atau menulis setelah sejumlah maksimum percobaan : : : : yang ditentukan (area rusak didapatkan pada tape : : : : atau operasi tak valid seperti membaca dari line : : : : printer). : +--+--------------------+--------------------------------------------------+ :9 : Instruksi yang : Proses berusaha mengeksekusi intruksi yang tak : : : tak benar : ada (akibat percabangan ke daerah data dan : : : : dan berusaha mengeksekusi data itu). : +--+--------------------+--------------------------------------------------+ :10: Terjadi usaha : Proses berusaha menggunakan instruksi yang : : : memakai instruksi : disimpan untuk sistem operasi. : : : yg tidak diijinkan : : +--+--------------------+--------------------------------------------------+ :11: Kesalahan : Bagian data adalah tipe yang salah atau tidak : : : penggunaan data : diinisialisasi. : +--+--------------------+--------------------------------------------------+ :12: Diintervensi oleh : Untuk suatu alasan, operator atau sistem operasi : : : sistem operasi atau: mengakhiri proses (terjadi deadlock). : : : operator : : +--+--------------------+--------------------------------------------------+ :13: Berakhirnya proses : Ketika parent berakhir, sistem operasi mungkin : : : induk : dirancang secra otomatis mengakhiri semua anak : : : : proses dari parent itu. : +--+--------------------+--------------------------------------------------+ :14: Atas permintaan : Parent process biasanya mempunyai otoritas : : : dari proses induk : mengakhiri suatu anak proses. : +--+--------------------+--------------------------------------------------+ Tabel 3.2 : Alasan-alasan penghancuran proses +--+--------------------+--------------------------------------------------+ :NO: ELEMEN CITRA PROSES: KETERANGAN : +--+--------------------+--------------------------------------------------+ :1 : Data pemakai : Bagian yang dapat dimodifikasi berupa data : : : : program, daerah stack pemakai. : +--+--------------------+--------------------------------------------------+ :2 : Program pemakai : Program biner yang akan dieksekusi. : +--+--------------------+--------------------------------------------------+ :3 : Stack sistem : Digunakan untuk menyimpan parameter dan alamat : : : : pemanggilan untuk prosedur dan system calls. : +--+--------------------+--------------------------------------------------+ :4 : PCB (Program : Berisi informasi yang diperlukan oleh sistem : : : Control Block) : operasi dalam mengendalikan proses. : +--+--------------------+--------------------------------------------------+ Tabel 3.3 : Elemen-elemen citra proses +---------------+ +----->: Tabel-tabel : : : memori : : +---------------+ : : +---------------+ : +--->: Tabel-tabel : : : : peralatan : : : +---------------+ : : +-------------------+ : : +---------------+ : Memori : ---+ : +->: Tabel-tabel : --------------------- : : : berkas : :Peralatan-peralatan: -----+ : +---------------+ Citra proses --------------------- : +----------+ : Berkas-berkas : -------+ +--------------------+ +-->: Proses 0 : +-------------------- : Tabel-tabel proses : : : : : Proses-proses : --------->---------------------- : : : +-------------------+ : Proses o : --+ : : ---------------------- +----------+ : Proses 1 : ---------------------- : Proses 2 : ---------------------- +----------+ - +-->: Proses n : - : : : +--------------------+ : : : : Proses n : --+ : : +--------------------+ +----------+ Gambar 3.4 : Struktur tabel-tabel kendali pada sistem operasi PCB +--------+ +--------+ +---->: :--->: : : : : : : : : : : : : : : : : : : : : : : +--------+ +--------+ : : +--------+ +--------+ +-----------+ : +-->: :--->: : : Running : ----+ : : : : : ------------- : : : : : : Ready : ------+ : : : : ------------- : : : : : Blocked : ----+ +--------+ +--------+ +-----------+ : : +--------+ +--------+ +--------+ +---->: :--->: :--->: : : : : : : : : : : : : : : : : : : : : : : : : : +--------+ +--------+ +--------+ Gambar 3.5: Senarai PCB +----+ +----+ +----+ +----+ +-----+ : P0 : : P1 : : - : : - : : Pn : : : : : : : : : : : : : : : : : : : : : +-------------------------------------+ : Kernel : : : +-------------------------------------+ Gambar 3.6 : Eksekusi kernel sebagai non-proses +---------+ +---------+ +---------+ +---------+ : P0 : : P1 : : - : : Pn : :---------: :---------: :---------: :---------: : Fungsi- : : Fungsi- : : Fungsi- : : Fungsi- : : fungsi : : fungsi : : fungsi : : fungsi : : sistem : : sistem : : sistem : : sistem : : operasi : : operasi : : operasi : : operasi : +------------------------------------------------+ : Fungsi-fungsi pengalihan proses : : (Process switching functions) : +------------------------------------------------+ Gambar 3.7 : Eksekusi dalam proses pemakai +----+ +----+ +----+ +----+ +-----+ +-----+ +-----+ +-----+ : U0 : : U1 : : - : : Un : : OS0 : : OS1 : : - : : OSn : : : : : : : : : : : : : : - : : : : : : : : : : : : : : : : - : : : +----------------------------------------------------------+ : Fungsi-fungsi pengalihan proses : : (Process switching functions) : +----------------------------------------------------------+ Gambar 3.8: Eksekusi sistem operasi sebagai proses

Ke Menu
Last updated : 2 April 2000