PENJADWALAN PROSES AGUS PAMUJI
SISTEM OPERASI - Penjadwalan Proses
1
Penjadwalan Proses • Bertugas memutuskan proses itu berjalan, kapan, dan selama berapa lama proses itu berjalan • Latar belakang Penjadwalan CPU didasarkan pada OS yang menggunakan prinsip multiprograming dengan cara mengalihkan kerja CPU untuk beberapa proses. SISTEM OPERASI - Penjadwalan Proses
2
Konsep Dasar • Pada multiprograming selalu akan terjadi beberapa proses berjalan. • Konsep dasarnya adalah suatu proses akan menggunakan CPU sampai proses tsb dalam keadaan wait, maka CPU akan nganggur. • Sebagai antisipasi CPU dialihkan ke proses lain.
SISTEM OPERASI - Penjadwalan Proses
3
CPU Scheduller • Saat CPU nganggur maka OS menyeleksi proses dimemori utama untuk dieksekusi yang disebut : shortterm scheduller (CPU scheduller). • Scheduller harus dapat menyeleksi proses dalam memori utama yang telah siap akan dieksekusi.
SISTEM OPERASI - Penjadwalan Proses
4
Preemptive Scheduling • 4 keadaan pertimbangan penjadwalan 1. Pada saat proses berpindah dari keadaan running ke waiting. 2. Pada saat proses berpindah dari keadaan running ke ready. 3. Pada saat proses berpindah dari keadaan waiting ke ready. 4. Pada saat proses berhenti.
SISTEM OPERASI - Penjadwalan Proses
5
Preemptive Scheduling • Penjadwalan keadaan 1 dan 4 disebut nonpreemptive. • Penjadwalan keadaan 2 dan 3 disebut preemptive. • Pada non-preeemptive jika proses menggunakan CPU maka prose tetap membawa CPU sampai proses melepaskan (berhenti atau dalam waiting) SISTEM OPERASI - Penjadwalan Proses
6
Dispatcher • Merupakan Suatu modul yang akan memberikan kontrol pada CPU terhadap penyeleksian proses yang dilakukan selama short-term schedulling. • Fungsi – fungsi dispatcher : – Switching context – Switching ke user mode – Melompat ke lokasi tertentu pada user program untuk memulai program.
SISTEM OPERASI - Penjadwalan Proses
7
Batch System • Batch system merupakan kumpulan job-job yang sama dalam 1 angkatan. • Pengurutan job didasarkan untuk mengatasi PC yang nganggur. • Teknik ini mampu mentransfer kontrol secara otomatis dari satu job ke job lainnya. • Job – job yang sama cukup disetup sekali, contoh : proses P1 (ms excel), P2 (ms word), P3 (pw point), P4 (ms excel). • Tanpa batch sytem maka diambil sendiri-sendiri ( P,P2,P3,P4) • Dengan batch system maka P1 dan P4 sekali proses
SISTEM OPERASI - Penjadwalan Proses
8
Multiprogramming System • Beberapa job yang siap dikumpulkan pada suatu pool. • OS mengambil job yang siap dieksekusi. • Jika job yang sedang dieksekusi menunggu beberapa task(seperti input dari keyboard) maka diganti dengan job berikutnya.
SISTEM OPERASI - Penjadwalan Proses
9
Multiprogramming System Proses P1 P2 P3 P4
Burst Time (ms) 10 4 6 3
Memori Utama Sistem Operasi
P1 P2 P3 P4
Gant Chart P1
0
P2
10
P3
14
SISTEM OPERASI - Penjadwalan Proses
P4
20
23 10
Time Sharing System • Disebut dengan multitasking, sama seperti multiprogramming hanya saja waktu proses nya dibatasi. • Waktu maksimum yang digunakan CPU adalah quantum time. • Keuntungan time sharing adalah tingkat kebersamaannya tinggi. • Kelemahan : switching time nya besar sehingga utilitasnya rendah. SISTEM OPERASI - Penjadwalan Proses
11
Time Sharing System • Jika proses memiliki CPU burst < quantum time, proses tsb akan melepaskan CPU jika telah selesai bekerja, sehingga CPU dapat digunakan proses lainnya. • Sebaliknya, jika suatu proses memiliki CPU burst time > quantum time maka proses akan dihentikan dan selanjutnya mengantri kembali pada posisi ekor dari ready queue dan dijalankan kembali prosesnya. SISTEM OPERASI - Penjadwalan Proses
12
Time Sharing System P1
0
P2 2
P3 4
P4 6
P1 8
P2 10
P3 12
P4 14
P1 15
SISTEM OPERASI - Penjadwalan Proses
P3 17
P1 19
P1 21
23
13
Multiprocessing System • Sistem memiliki lebih dari 1 prosesor untuk running 1 atau lebih program menggunakan BUS, clock, memori. • Multiprocessing system terdiri atas : – Symmetric Multiprocessing Tiap – tiap prosesor mempunyai sistem operasi yang sama. – Asymmetric Multiprocessing Satu prosesor berfungsi sebagai master prosesor (mengatur penjadwalan) dan prosesor lainnya sebagai slave SISTEM OPERASI - Penjadwalan Proses
14
Multiprocessing System P1 P2
0
P4 P3
4
10
SISTEM OPERASI - Penjadwalan Proses
23
15
Kriteria Penjadwalan • CPU Utilization – Diharapkan keadaan sibuk, – Dinyatakan dalam % • Throughput Banyaknya proses yang dikerjakan dalam 1 satuan waktu. • Turnaround Time Waktu yang dibutuhkan untuk mengeksekusi proses SISTEM OPERASI - Penjadwalan Proses
16
Kriteria Penjadwalan • Waiting time Waktu yang diperlukan untuk menunggu. • Respontime Waktu yang dibutuhkan untuk minta dilayani hingga ada respon pertama. • Fairness Tiap-tiap proses akan mendapatkan pembagian waktu. SISTEM OPERASI - Penjadwalan Proses
17