Anda di halaman 1dari 11

DESKRIPSI PROSES DAN KONTROL

3.1 Bagaimana proses direpresentasikan & dikendalikan oleh SO. Status proses (process state) yang mencirikan perilaku dari proses. Struktur data yang digunakan untuk mengelola (manage) proses. Cara SO menggunakan struktur data ini untuk mengendalikan eksekusi proses. Contoh: pengelolaan proses pada UNIX SVR4. Syarat Sistem Operasi Tugas Fundamental: Manajemen Proses Sistem Operasi harus Mengeksekusi banyak proses secara bergantian Mengalokasikan sumber daya (resource) bagi proses & melindungi resource setiap proses dari proses lain, Membolehkan proses untuk berbagi (share) & bertukar informasi, Memungkinkan sinkronisasi antar proses. SO Mengatur Eksekusi Sumber daya dibuat tersedia untuk banyak aplikasi Processor di-switch antar banyak aplikasi Processor & perangkat I/O dapat digunakan secara efisien Proses Suatu program dalam (yang sedang di) eksekusi Instance dari program yang berjalan pada suatu komputer Entitas yang dapat dilewatkan ke & dieksekusi pada suatu processor Suatu unit aktifitas yang dicirikan oleh eksekusi serangkaian instruksi, current state (status terkini) & himpunan instruksi sistem terkait (associated). Trace dari Proses Perilaku dari suatu proses diperlihatkan oleh listing deretan instruksi yang dieksekusi List ini dinamakan Trace Dispatcher merupakan suatu program kecil yang men-switch processor dari satu proses ke proses lainnya Eksekusi Proses Trace: Sudut Pandang program Setiap proses berjalan menuju selesai

Trace: Sudut Pandang Processor

Timeout I/O

Model Proses Dua Keadaan Proses dapat berada pada salah satu dari dua status running Not-running

Apabila system operasi membuat sebuah proses baru maka sisitem operasi akan memasukkan proses tersebut ke system dalam keadaan not-running. Prose keluar, diketahui system operasi, dan menunggu kesempatan untuk melakukan eksekusi.

Dan seterusnya proses dipindahkan oleh dispatcher dari SO ke CPU kemudian kembali ke antrian (Queue) sampai tugas tersebut selesai (lengkap) Pembuatan dan Penghentian Proses Pembuatan Proses SO membangun suatu struktur data untuk mengelola proses tersebut Biasanya, semua proses dibuat oleh SO.Tetapi SO juga membolehkan proses yang sedang berjalan membuat proses lain Aksi ini disubut process spawning Proses induk (parent) adalah original, membuat proses anak, ia juga proses Proses anak (child) merupakan proses baru Penghentian Proses Harus ada cara yang dapat menandakan bahwa suatu proses selesai. Indikasi ini dapat berupa: Instruksi HALT membangkitkan suatu interupsi alert untuk SO Aksi pengguna (seperti log off & keluar dari suatu aplikasi)

Suatu kesalahan atau error Dihentikan oleh proses induk Model Lima Keadaan Lima keadaan di dalam diagram ini adalah : Running (berjalan) : Proses yang dieksekusi. Ready (siap) : Suatu proses yg disiapkan untuk melakukan eksekusi bila ada kesempatan. Blocked (diblokir) : Suatu proses yg tidak dapat mengeksekusi sampai beberapa event terjadi, seperti misalnya selesainya operasi I/O. New (baru) : Suatu proses yg baru dibuat tetapi belum diizinkan masuk ke pool proses-proses yg dapat dieksekusi oleh system operasi. Exit (keluar) : Suatu proses yg telah di bebaskan dari pool proses-proses yg dapat dieksekusi oleh system operasi, baik karena dihentikan maupun dibatalkan dengan alasan tertentu.

Pada saat sebuah proses diizinkan masuk ke system, proses tersebut ditaruh di antrian Ready.Pada saat system operasi memilih proses lainnya berjalan, maka system operasi me milih salah satu proses yg berada di dalam antrian Ready. Apabila tidak terdapat prioritas, pemilihan ini akan menjadi antrian FIFO yg sederhana. Pada saat proses yg sedang berjalan dihapuskan dari eksekusi, maka prose situ dihentikan atau ditempatkan di antrian Ready atau antrian Blocked, bergantung pada keadaannya.dan apabila suatu event terjadi, maka seluruh proses yg berada di dalam natrian blocked yg sedang menunggu event itu akan dipindahkan ke antrian Ready. Tabel 3.3 Keadaan Proses untuk Trace Gambar 3.3 Time Epoch Proses A Proses B Proses C 1-6 RUNNING READY READY 7-12 READY READY READY

13-16 17-22 23-28 29-34 35-40 41-46 47-52

READY READY READY READY RUNNING READY READY

RUNNING BLOCKED BLOCKED BLOCKED BLOCKED BLOCKED BLOCKED

READY READY RUNNING READY READY READY RUNNING

Menggunakan Dua Antrian --- tidak efisien

Menggunakan Banyak Antrian--- lebih efisien

Proses-proses yg Ditunda Processor lebih cepat daripada I/O sehingga semua proses dapat menunggu I/O Swap : pemindahan proses dari memory ke disk untuk membebaskan lebih banyak memory & menugaskan processor pada lebih banyak proses. Status Blocked berubah menjadi Suspend ketika proses dialihkan ke disk.

Satu Status Suspend

Muncul 4 keadaan: Ready : Proses berada di dalam memory utama dan bias dieksekusi Blocked : Proses berada di dalam memory utama dan sedang menunggu event. Blocked/Suspend : Proses berada di dalam memory sekunder dan sedang menunggu event. Ready/Suspend : Proses berada di dalam memory sekunder namun dapat dieksekusi setelah dimuatkan ke dalam memory utama. Dua Status Suspend

Garis putus-putus menandakan suatu transisi namun tidak diperlukan.Transisi-transisi yg penting adalah sbb : Blocked Blocked,Suspend : Apabila tidak terdapat proses dalam keadaan siap, maka sebuah prosesyg di blokir di swap-out untuk memberi ruang proses-proses lainnya yg tidak diblokir. Blocked, Suspend Ready, Suspend : Suatu proses di dalam keadaan Blocked, suspend dipindahkan ke keadaan Ready, suspend apabila event yg ditunggunya terjadi. Ready, Suspend Ready : Apabila di dalam memory utama tidak ada proses yg siap, maka system operasi harus membawa sebuah proses ke dalam memory utama untuk melanjutkan eksekusi.

ReadyReady, suspend : Sistem operasi akan lebih menyukaimenunda proses yg diblokir daripada menunda proses yg sudah siap, karena proses yg siap dapat segera dieksekusi, sedangkan proses yg diblokir memerlukan ruang memory dan tidak dapat dieksekusi. Beberapa transisi yg perlu mendapat pehatian adalah sbb: New Ready,Suspend, dan NewReady Blocked,SuspendBlocked Running Ready,Suspend Various Exit

Alasan Suspensi Proses Alasan Komentar Alasan Swapping

Komentar SO harus membebaskan cukup main memory agar suatu proses siap eksekusi. SO mengira proses menyebabkan suatu masalah. Misalnya, debugging atau berhubungan dengan pemanfaatan sumber daya. Proses dapat dieksekusi secara periodik (misal, system monitoring sistem atau accounting) & boleh di-suspend selama menunggu waktu berikutnya. Proses induk berkeinginan men-suspend eksekusi dari suatu turunan untuk menguji atau mengubah proses turunan tersebut atau mengkoordinasikan aktifitas dari berbagai keturunannya.

Alasan SO lain Request User Interaktif

Timing

Request Proses Induk

Tabel 3.3 Alasan suspensi proses 3.2 Deskripsi Prose Proses & Sumber Daya

Dalam lingkungan system multiprogramming, terdapat sejumlah proses (P1,..,Pn) yg telah dibuat dan berada di dalam virtual memory. Setiap proses selama mengalami eksekusinya memerlukan acces ke sumber daya tertentu pada system, termasuk prosesor, perangkat I/O, dan memory utama. Pada gambar prose P1 sedang berjalan; sedikitnya bagian proses tersebut berada di dalam memory, dan memiliki control atas kedua perangkat I/O.Proses P 2 juga berada di dalam memory utama, namun diblokir menunggu perangkat I/O yg dialokasikan ke P 1. Proses Pn telah di swap-out dank arena itu ditunda.

Struktur Kontrol SO SO bertanggungjawab mengelola proses & sumber daya sehingga harus terkini (current) dari setiap proses dan sumber daya. Tabel (informasi) dibangun untuk setiap entitas yang dikelola sistem operasi Tabel Kontrol SO

Tabel Memory Tabel memory digunakan untuk menjaga track dari memory utama dan sekunder. Harus menyertakan informasi ini: Alokasi dari main memory kepada proses Alokasi dari secondary memory untuk proses Atribut proteksi untuk akses dari region memory yang dishare Informasi yang diperlukan untuk mengelola virtual memory

Tabel I/O Digunakan oleh SO untuk mengelola perangkat & channel I/O dari komputer. SO perlu mengetahui Apakah perangkat I/O tersedia atau assigned Status dari operasi I/O Lokasi di dalam main memory yang digunakan sebagai souce atau destination dari transfer I/O Tabel File Tabel ini menyediakan informasi mengenai : Eksistensi dari file Lokasi pada secondary memory Status terkini Atribut-atribut lain. Kadang kala informasi ini dipelihara oleh suatu sistem manajemen file. Tabel Proses Untuk mengelola proses, SO perlu mengetahui detail dari proses Status terkini (current) Process ID Lokasi di dalam memory dll Process control block (PCB) Disebut pula Process image merupakan koleksi program. Data, stack & atribut. Struktur Control Process Lokasi Proses Lokasi proses image akan bergantung pada teknik manajemen memori yg digunakan.Pada teknik yg paling sederhana, proses image dijaga sebagai blok memory yg kontigus. Blok ini tersimpan di dalam memory sekunder biasanya disk. Karena itu system operasi dapat mengelola proses, sedikitnya sebagian kecil process image harus dimuatkan ke dalam memory utama atau ke dalam virtual memory. Jadi, system operasi perlu mengetahui lokasi setiap proses di dalam disk dan setiap proses yg berada di dalam memory utama, lokasi proses di dalam memory utama. Atribut Proses Kita dapat mengelompokkan informasi PCB ke dalam 3 kategori umum: 1.Identifikasi Proses Setiap proses diberikan sebuah pengenal (identifier) numerik yang unik. Banyak tabel lain dikontrol SO dapat menggunakan process identifier untuk cross-reference tabel-tabel proses Identifier numeric yg dapat disimpan pada PCB-PCB adalah : Identifier proses situ

Identifier proses yg membuat prose situ (proses induk) Identifier pengguna

2.Informasi Status Processor Terdiri dari isi register processor. Register user-visible Register kontrol dan status Penunjuk (pointer) stack Program status word (PSW) Mengandung informasi status Contoh: register EFLAGS pada processor Pentium

Register EFLAGS Pentium II

3.Informasi Kontrol Proses Ini merupakan informasi tambahan yang diperlukan oleh SO untuk mengontrol dan mengkoordinasikan berbagai proses aktif. Informasi penjadwalan dan keaadan Penstrukturan data Interprocess communication Privilege proses Manajemen memory Kepemilikan dan utilisasi sumber daya

Peranan Process Control Block Struktur data yang sangat penting dalam sebuah Sistem Operasi. Mendefinisikan status dari OS Process Control Block mempunyai masalah pada proteksi, yaitu : Routine yang salah dapat menyebabkan kerusakan terhadap block meniadakan kemampuan SO untuk mengelola proses Perubahan struktur atau semantic rancangan process control block dapat mempengaruhi banyak modul SO.

Anda mungkin juga menyukai