Post on 01-Apr-2019
SISTEM OPERASIISG2B3
PENJADWALAN CPU
Agus Setiawan
Program Studi Sistem Informasi
Fakultas Rekayasa Industri
Telkom University
KONSEP DASAR
• Dengan sistem multiprogramming akan diperolehutilitas CPU yang maksimal
• Pada saat proses dieksekusi, terdiri dari siklus eksekusi CPU dan menunggu I/O (CPU–I/O Burst Cycle)
CPU SCHEDULER
Memilih diantara proses yang ada di memori yang siap dieksekusi (ready) dan mengalokasikan CPU untuk satu diantara proses-proses tersebut
Keputusan penjadwalan CPU diambil pada saatproses:
1. Berpindah dari state running ke waiting.
2. Berpindah dari state running ke ready.
CPU SCHEDULER
3. Berpindah dari state waiting ke ready.
4. Di terminasi.
Penjadwalan nomor 1 dan 4 tidak dapat ditunda(nonpreemptive).
Penjadwalan nomor 2 dan 3 dapat ditunda (preemptive)
DISPATCHER
• Modul dispatcher module memberi kontrol ke CPU untuk memilih proses dengan short-term scheduler; yang melibatkan:
switching context
switching ke user mode
Melompat ke lokasi yang tepat pada user program untuk restart program
DISPATCHER
• Dispatch latency – waktu yang dibutuhkandispatcher untuk menghentikan satu proses danmemulai proses lain yang sedang berjalan
KRITERIA PENJADWALAN
• Utilitas CPU – membuat CPU sesibuk mungkin
• Throughput – jumlah proses yang menyelesaikaneksekusi pada satu unit waktu
• Waktu Turnaround – jumlah waktu untukmengeksekusi proses tertentu
• Waktu Tunggu – jumlah waktu suatu prosesmenunggu dalam ready queue
• Waktu Respon – jumlah waktu yang dibutuhkan darisebuah permintaan dikirim sampai mendapatkanrespon pertama, bukan output (untuk lingkungantime-sharing)
KRITERIA OPTIMAL
• Untilitas CPU maksimal
• Throughput maksimal
• Waktu turnaround minimal
• Waktu tunggu minimal
• Waktu respon minimal
PENJADWALANSHORTEST-JOB-FIRST (SJF)
• Hubungan antar proses berdasarkan panjang CPU burst berikutnya. CPU dialokasikan untuk proses yang mempunyai waktu terpendek terlebih dahulu
• Terdapat 2 skema:
nonpreemptive – ketika CPU diberikan ke proses, makaproses tidak dapat ditunda sampai menyelesaikan CPU burst nya
PENJADWALANSHORTEST-JOB-FIRST (SJF)
preemptive – jika proses baru datang dengan CPU burst lebih kecil dibandingkan sisa waktu proses yang sedang dieksekusi, maka proses ditunda dan digantidengan proses baru. Skema ini disebut juga enganShortest-Remaining-Time-First (SRTF).
• SJF optimal – menghasilkan rata-rata waktu tungguminimal pada sekumpulan proses
PENJADWALAN PRIORITY
• Setiap proses mempunyai nilai prioritas (integer)
• CPU dialokasikan untuk proses dengan prioritas tertinggi(nilai integer terkecil = prioritas tertinggi). (nilai integer terkecil = prioritas tertinggi).
Preemptive
nonpreemptive
• SJF adalah penjadwalan prioritas dimana prioritasnyaadalah berdasarkan hasil prediksi waktu CPU burst berikutnya.
PENJADWALAN PRIORITY
• Problem = Starvation – proses prioritas rendah tidakpernah dieksekusi
• Solution = Aging – seiring waktu berjalan meningkatkanprioritas proses.