180 likes | 399 Views
Rahmady Liyantanto liyantanto@gmail.com liyantanto.wordpress.com. Manajemen Proses 2 Pembagian Kerja OS :Scheduling. Sistem Operasi. Sub Pokok Pembahasan. Penjadualan Proses Queue Scheduling Penjadwal Context Switch. Penjadualan Proses.
E N D
Rahmady Liyantanto liyantanto@gmail.com liyantanto.wordpress.com ManajemenProses 2PembagianKerja OS :Scheduling Sistem Operasi D3 Manajemen Informatika Universitas Trunojoyo
Sub PokokPembahasan • Penjadualan Proses • Queue Scheduling • Penjadwal • Context Switch
PenjadualanProses • Multiprogramming bertujuan untuk memaksimalkan penggunaan CPU dengan cara mengatur alokasi waktu yang digunakan oleh CPU, sehingga proses berjalan sepanjang waktu dan memperkecil waktu idle. • Untuk sistem yang bersifat prosesor tunggal (uniprosesor), hanya ada satu proses yang dapat berjalan setiap waktunya. Jika proses yang ada lebih dari satu, maka proses yang lain harus menunggu sampai CPU bebas dan siap untuk dijadualkan kembali.
Queue Scheduling (2) • Ketika sebuah proses memasuki sistem, proses itu diletakkan di dalam job queue. Pada antrian ini terdapat seluruh proses yang berada dalam sistem. Sedangkan proses yang berada pada memori utama, siap dan menunggu untuk mengeksekusi disimpan dalam sebuah daftar yang bernama ready queue. • Antrian ini biasanya disimpan sebagai linked list. Header dari ready queue berisi pointer untuk PCB pertama dan PCB terakhir pada list. Setiap PCB memiliki pointer field yang menunjuk kepada PCB untuk proses selanjutnya dalam ready queue.
Queue Scheduling (3) • Sistem operasi juga memiliki antrian lain. Ketika sebuah proses dialokasikan ke CPU, proses tersebut berjalan sebentar lalu berhenti, di-interupsi, atau menunggu suatu hal tertentu, seperti selesainya suatu permintaan M/K. Dalam permintaan M/K, dapat saja yang diminta itu adalah tape drive, atau peralatan yang di-share secara bersama-sama, seperti disk. • Karena ada banyak proses dalam sistem, disk dapat saja sibuk dengan permintaan M/K dari proses lainnya. Untuk itu proses tersebut mungkin harus menunggu disk tersebut. Daftar dari proses-proses yang menunggu peralatan M/K tertentu disebut dengan device queue.
Queue Scheduling (4) • Umumnyaproses-proses yang adapadasistemakanadadalambeberapatahapantrianyaitu job queue, ready queue, dan device queue. • Job queue, menyimpanseluruhproses yang beradapadasistem. Ketikasebuahprosesmemasukisebuahsistem, prosestersebutakandiletakkandidalam job queue. • Ready queue merupakansebuahdaftarproses-proses yang beradapadamemoriutama (main memori), siapdanmenungguuntukdieksekusidandialokasikanke CPU. Antrianinibiasanyadisimpansebagai linked-list. Header dari ready queue iniberisi pointer untuk PCB pertamadan PCB terakhirpada linked-list tersebut. Dan setiap PCB memiliki pointer field yang menunjukkepada PCB untukprosesselanjutnyapada ready queue.
Queue Scheduling (4) • Umumnyaproses-proses yang adapadasistemakanadadalambeberapatahapantrianyaitu job queue, ready queue, dan device queue. • Job queue, menyimpanseluruhproses yang beradapadasistem. Ketikasebuahprosesmemasukisebuahsistem, prosestersebutakandiletakkandidalam job queue. • Ready queue merupakansebuahdaftarproses-proses yang beradapadamemoriutama (main memori), siapdanmenungguuntukdieksekusidandialokasikanke CPU. Antrianinibiasanyadisimpansebagai linked-list. Header dari ready queue iniberisi pointer untuk PCB pertamadan PCB terakhirpada linked-list tersebut. Dan setiap PCB memiliki pointer field yang menunjukkepada PCB untukprosesselanjutnyapada ready queue.
Queue Scheduling (5) • Device queue adalah daftar dari proses-proses yang menunggu peralatan M/K tertentu. Ketika sebuah proses dialokasikan ke CPU, proses tersebut berjalan sebentar lalu berhenti karena ada interrupt atau menunggu permintaan M/K. Dalam permintaan M/K, dapat saja yang diminta itu adalah peralatan yang di share secara bersama-sama seperti disk. Karena ada banyak proses dalam sistem, disk tersebut dapat saja sibuk dengan permintaan M/K dari proses lainnya. Untuk itu proses tersebut mungkin harus menununggu disk tersebut sampai siap untuk memenuhi permintaan M/K tersebut.
DigaramAntrian Setiap kotak segi empat menunjukkan sebuah antrian. Dua antrian diantaranya menunjukkan ready queue dan seperangkat device queue. Lingkaran menunjukkan sumber daya yang melayani antrian dan tanda panah mengindikasikan alur dari proses-proses yang ada dalam sistem.
Penjadwal (1) Sebuah proses berpindah-pindah di antara berbagai penjadwalan antrian seumur hidupnya. Sistem operasi harus memilih dan memproses antrian-antrian ini berdasarkan kategorinya dengan cara tertentu. Oleh karena itu, proses seleksi ini harus dilakukan oleh scheduler yang tepat.
Penjadwal (2) • Terdapatduajenis scheduler pada CPU yang umumdipakai, yaitu: • Long-Term Scheduler atau Job Scheduler yang bertugasmemilihprosesdaritempatinidanmengisinyakedalammemori. • Short-Term Scheduler atau CPU scheduler yang bertugasmemilihproses yang sudahsiapuntukmelakukaneksekusi,dandialokasikandi CPU untukprosestersebut. • Perbedaansignifikanpadakedua scheduler iniadalahfrekuensidarieksekusinya.
Long-Term Scheduler(1) • Long-Term Scheduler mengatur degree of multiprogramming, yaitu jumlah proses dalam memori. Jadi jika degree of multi programming stabil, maka rata-rata jumlah proses baru sama dengan jumlah proses yang telah selesai. • Long-term scheduler dipanggil bila sudah ada proses yang selesai atau telah meninggalkan sistem sehingga eksekusinya jauh lebih jarang dibandingkan short-term scheduler.
Long-Term Scheduler(2) • Secaraumum, prosespada Long-Term Scheduler dapatdibagimenjadidua, yaitu: • M/K Bound yaitu proses yang lebih banyak mengerjakan permintaan M/K dibandinkan komputasi. • CPU Bound yaituproses yang lebihbanyakmengerjakankomputasidibandingkanpermintaan M/K.
Context Switch(1) • Mengganti CPU ke proses lain memerlukan penyimpanan keadaan dari proses lama dan mengambil keadaan dari proses yang baru. Hal ini dikenal dengan sebutan context switch. • Context switch sebuah proses direpresentasikan dalam PCB dari suatu proses; termasuk nilai dari CPU register, status proses dan informasi manajemen memori.
Context Switch(3) • Ketika context switch terjadi, kernel menyimpan data dari proses lama ke dalam PCB nya dan mengambil data dari proses baru yang telah terjadwal untuk berjalan. Waktu context switch adalah murni overhead, karena sistem melakukan pekerjaan yang tidak begitu berarti selama melakukan pengalihan. • Kecepatannya bervariasi dari mesin ke mesin, bergantung pada kecepatan memori,jumlah register yang harus di-copy, dan ada tidaknya instruksi khusus (seperti instruksi tunggal untuk mengisi atau menyimpan seluruh register). Tingkat kecepatan umumnya berkisar antara 1 sampai 1000 mikro detik.
Rangkuman • Sebuah proses, ketika sedang tidak dieksekusi, ditempatkan pada antrian yang sama. Disini ada dua kelas besar dari antrian dalam sebuah sistem operasi: permintaan antrian M/K dan ready queue. PCB dapat digunakan untuk mencatat sebuah ready queue. • Penjadwalan Long-term adalah pilihan dari proses-proses untuk diberi izin menjalankan CPU. Normalnya, penjadwalan long-term memiliki pengaruh yang sangat besar bagi penempatan sumber daya, terutama manajemen memori. Penjadwalan short-term adalah pilihan dari satu proses dari ready queue.