6. Scheduling

17
Pemrosesan Paralel Haddad Sammir, M.Kom Pemrosesan Paralel Scheduling Haddad Sammir, M.Kom March 18, 2015

Transcript of 6. Scheduling

Page 1: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

Pemrosesan ParalelScheduling

Haddad Sammir, M.Kom

March 18, 2015

Page 2: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

Definisi Scheduling

• Secara Etimologi berarti ”penjadwalan”.

• Dalam dunia komputer, scheduling adalah sebuah metodadimana thread, proses dan alur data diberi akses ke sumberdaya sistem (waktu prosesor, bandwidth komunikasi, dll).

• Scheduling bertujuan untuk melakuan load balancing(pendistribusian beban antar sumber daya yang tersedia)dan saling berbagi sumber daya sistem secara efektif.

• Kebutuhan akan algoritma scheduling berangkat darikebutuhan sistem operasi moderen untuk melakukamultitasking dan multiplexing (mengirimkan banyak arusdata secara bersamaan melalui satu kanal fisik).

Page 3: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

Fokus Scheduler

• Throughput. Total jumlah proses yang berhasildiselesaikan berdasarkan unit waktu tertentu.

• Latency. Total waktu antara penyerahan proses hinggapenyelesaian proses.

• Response time. Waktu yang dibutuhkan semenjak prosesdiserahkan hinggal proses dijadwalkan (untuk diselesaikan).

• Fairness. Kesetaraan masing-masing proses untukmendapatkan CPU time.

• Waiting time. Total waktu proses berada dalam keadaanmenunggu untuk diselesaikan setelah dijadwalkan.

Page 4: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

Penjadwalan Antrian (Queue)

Sistem Operasi memiliki dua buat mekanisme antrian (queue)yaitu:

• Job Queue, antrian pekerjaan / proses.

• Device Queue, antrian perangkat (device) / I/O.

• Setiap prangkat memiliki device queue nya sendiri.

• Ketika sebuah proses diserahkan kepada sistem (proseseksekusi), maka proses tersebut akan berada pada jobqueue.

Page 5: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

Penjadwalan Proses

• Antrian digambarkan sebagai kotak segi empat.

• Lingkaran menggambarkan sumber daya yang melayaniantrian.

• Panah menggambarkan arah arus proses pada sistem.

Page 6: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

Penjadwalan Proses

Proses yang berada pada antrian job akan berada pada antrian”Ready Queue”. Scheduler akan mengalokasikan CPU kepadaproses tersebut. Ketika proses dieksekusi, kejadian berikut inidapat terjadi:

• Proses mengajukan permintaan I/O dan akan berada padaDevice Queue.

• Proses dapat membuat subproses baru dan menungguhingga sub proses berakhir.

• Proses dapat dikeluarkan secara paksa dari CPU akibatinterupsi dan diletakkan kembali ke ready queue.

Page 7: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

Two State Process Model

Proses dapat berada pada dua keadaan yaitu:

• Running.

• Not Running.

Page 8: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

Tipe Penjadwalan (Scheduling) Sistem Operasi

Sistem operasi menggunakan tiga tipe penjadwalan yangberbeda yaitu:

• Long-term Scheduler.

• Mid-term / Medium-term Scheduler.

• Long term Scheduler.

Penjadwal sistem operasi adalah sebuah modul yang akanmemilih job berikutya yang akan dijalankan.

Page 9: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

Penjadwal (Scheduler)

• Long-term Scheduler.Long-term scheduler menentukan job / proses mana yangdiizinkan untuk dieksekusi oleh sistem.

• Short-term Scheduler.Short-term scheduler dikenal juga sebagai CPU schedulermenentukan proses (yang telah berada pada antrian ReadyQueue) mana yang akan dieksekusi setelah diterimanyasinyal seperti sinyal time interrupt, I/O interrupt atauSystem Call.

• Mid-term Scheduler.Mid-term scheduler menentukan proses mana yang akandi-swap.

Page 10: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

Proses Swapping

Swapping adalah memindahkan proses dari memori utama(RAM) ke memori sekunder (Harddisk) apa bila proses tersebuttidak aktif untuk waktu tertentu, atau apabila proses tersebutmemiliki prioritas yang rendah. Tujuan swapping adalah untukmenjamin ketersediaan memori bagi proses lain yang sedangmembutuhkan.

Page 11: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

Context Switch

• Context Switch adalah mekanisme menyimpan danmengambil kembali status keadaan (state) atau contextCPU dari Process Control Block (PCB) sehingga eksekusisebuah proses dapata dilanjutkan kembali (resume) darititik terakhirnya.

• Teknik ini memungkinkan banyak proses dapat salingberbagi satu CPU.

• Context switching adalah bagian penting dari sistemoperasi multitasking.

Page 12: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

Prinsip Kerja Context Switching

Ketika scheduler mengalihkan aktifitas CPU pada sebuah proseske proses lainnya, context switcher menyimpan data semuaregister prosesor ke dalam Process Control Block (PCB).Data yang telah disimpan akan diambil kembali dari PCBapabila proses bersangkutan akan di-resume.

Page 13: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

Prinsip Kerja Context Switching

Informasi yang disimpan oleh context switcher:

• Program counter.

• Informasi penjadwalan.

• Nilai base dan limit register.

• Register yang sedang digunakan.

• Keadaan yang diubah.

• Keadaan I/O.

• Perhitungan lainnya.

Page 14: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

Algoritma Penjadwalan

• FCFS (First Come, First Serve).Algoritma ini akan menjadwalkan proses sesuai denganwaktu kedatangannya pada Ready Queue.

• Round Robin Scheduling.Algoritma Round Robin bekerja dengan cara memberikantime slice kepada setiap proses dalam jumlah yang sama.Pendekatan ini memberikan keadilan bagi setiap proses.Contoh: Slot waktu yang diberikan adalah 100ms. Jikaproses1 membutuhkan 250ms untuk selesai, maka RoundRobin akan menunda eksekusi proses1 setelah 100ms daneksekusi dilanjutkan pada proses berikutnya dalam waktu100ms. Proses1 akan dilanjutkan kembali setelah semuaproses mendapatkan 100ms yang sama dan aktifitas inidiulang kembali hingga seluruh proses selesai dieksekusi.

Page 15: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

Algoritma Penjadwalan

• Shortest Job First (SJF).SJF merupakan algoritma penjadwalan yangmemprioritaskan proses / job dengan waktu eksekusiterpendek. Algoritma ini memberikan kontribusi padathroughput karena banyak proses / job yang dapatdiselesaikan pada selang waktu tertentu.

• Shortest Remaining Time First.Algoritma ini memilih proses yang memiliki sisa waktueksekusi paling sedikit untuk dieksekusi terlebih dahulu.Dengan algoritma ini, proses dengan proses / job denganwaktu terpendek akan diselesakan dengan lebih cepat.

Page 16: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

Algoritma Penjadwalan

• Multilevel Feedback Queues (MLFQ).MLFQ bekerja dengan cara memperbolehkan prosesberpindah antar antrian. Algortma akan memilih prosesdengan prioritas tertinggi untuk dieksekusi, jika prosestersebut mengkonsumsi terlalu banyak sumber daya CPU,maka proses tersebut akan dipindahkan ke antrian denganprioritas yang lebih rendah. Proses yang sedang menunggu(prioritas lebih rendah), otomatis akan naik ke antriandengan prioritas lebih tinggi.

• Lottery Scheduling.Algoritma penjadwalan ini menggunakan pendekatanprobabilistik. Setiap proses diberikan tiket yang akandiundi oleh scheduler. Proses yang terpilih akan dieksekusilebih dahulu.

Page 17: 6. Scheduling

PemrosesanParalel

HaddadSammir,M.Kom

SekianTerima Kasih