Pemrosesan
Paralel
Haddad
Sammir,
M.Kom
Pemrosesan Paralel
Scheduling
Haddad Sammir, M.Kom
March 18, 2015
Pemrosesan
Paralel
Haddad
Sammir,
M.Kom
Definisi Scheduling
• Secara Etimologi berarti ”penjadwalan”.
• Dalam dunia komputer, scheduling adalah sebuah metoda
dimana thread, proses dan alur data diberi akses ke sumber
daya 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 dari
kebutuhan sistem operasi moderen untuk melakuka
multitasking dan multiplexing (mengirimkan banyak arus
data secara bersamaan melalui satu kanal fisik).
Pemrosesan
Paralel
Haddad
Sammir,
M.Kom
Fokus Scheduler
• Throughput. Total jumlah proses yang berhasil
diselesaikan berdasarkan unit waktu tertentu.
• Latency. Total waktu antara penyerahan proses hingga
penyelesaian proses.
• Response time. Waktu yang dibutuhkan semenjak proses
diserahkan hinggal proses dijadwalkan (untuk diselesaikan).
• Fairness. Kesetaraan masing-masing proses untuk
mendapatkan CPU time.
• Waiting time. Total waktu proses berada dalam keadaan
menunggu untuk diselesaikan setelah dijadwalkan.
Pemrosesan
Paralel
Haddad
Sammir,
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 (proses
eksekusi), maka proses tersebut akan berada pada job
queue.
Pemrosesan
Paralel
Haddad
Sammir,
M.Kom
Penjadwalan Proses
• Antrian digambarkan sebagai kotak segi empat.
• Lingkaran menggambarkan sumber daya yang melayani
antrian.
• Panah menggambarkan arah arus proses pada sistem.
Pemrosesan
Paralel
Haddad
Sammir,
M.Kom
Penjadwalan Proses
Proses yang berada pada antrian job akan berada pada antrian
”Ready Queue”. Scheduler akan mengalokasikan CPU kepada
proses tersebut. Ketika proses dieksekusi, kejadian berikut ini
dapat terjadi:
• Proses mengajukan permintaan I/O dan akan berada pada
Device Queue.
• Proses dapat membuat subproses baru dan menunggu
hingga sub proses berakhir.
• Proses dapat dikeluarkan secara paksa dari CPU akibat
interupsi dan diletakkan kembali ke ready queue.
Pemrosesan
Paralel
Haddad
Sammir,
M.Kom
Two State Process Model
Proses dapat berada pada dua keadaan yaitu:
• Running.
• Not Running.
Pemrosesan
Paralel
Haddad
Sammir,
M.Kom
Tipe Penjadwalan (Scheduling) Sistem Operasi
Sistem operasi menggunakan tiga tipe penjadwalan yang
berbeda yaitu:
• Long-term Scheduler.
• Mid-term / Medium-term Scheduler.
• Long term Scheduler.
Penjadwal sistem operasi adalah sebuah modul yang akan
memilih job berikutya yang akan dijalankan.
Pemrosesan
Paralel
Haddad
Sammir,
M.Kom
Penjadwal (Scheduler)
• Long-term Scheduler.
Long-term scheduler menentukan job / proses mana yang
diizinkan untuk dieksekusi oleh sistem.
• Short-term Scheduler.
Short-term scheduler dikenal juga sebagai CPU scheduler
menentukan proses (yang telah berada pada antrian Ready
Queue) mana yang akan dieksekusi setelah diterimanya
sinyal seperti sinyal time interrupt, I/O interrupt atau
System Call.
• Mid-term Scheduler.
Mid-term scheduler menentukan proses mana yang akan
di-swap.
Pemrosesan
Paralel
Haddad
Sammir,
M.Kom
Proses Swapping
Swapping adalah memindahkan proses dari memori utama
(RAM) ke memori sekunder (Harddisk) apa bila proses tersebut
tidak aktif untuk waktu tertentu, atau apabila proses tersebut
memiliki prioritas yang rendah. Tujuan swapping adalah untuk
menjamin ketersediaan memori bagi proses lain yang sedang
membutuhkan.
Pemrosesan
Paralel
Haddad
Sammir,
M.Kom
Context Switch
• Context Switch adalah mekanisme menyimpan dan
mengambil kembali status keadaan (state) atau context
CPU dari Process Control Block (PCB) sehingga eksekusi
sebuah proses dapata dilanjutkan kembali (resume) dari
titik terakhirnya.
• Teknik ini memungkinkan banyak proses dapat saling
berbagi satu CPU.
• Context switching adalah bagian penting dari sistem
operasi multitasking.
Pemrosesan
Paralel
Haddad
Sammir,
M.Kom
Prinsip Kerja Context Switching
Ketika scheduler mengalihkan aktifitas CPU pada sebuah proses
ke proses lainnya, context switcher menyimpan data semua
register prosesor ke dalam Process Control Block (PCB).
Data yang telah disimpan akan diambil kembali dari PCB
apabila proses bersangkutan akan di-resume.
Pemrosesan
Paralel
Haddad
Sammir,
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.
Pemrosesan
Paralel
Haddad
Sammir,
M.Kom
Algoritma Penjadwalan
• FCFS (First Come, First Serve).
Algoritma ini akan menjadwalkan proses sesuai dengan
waktu kedatangannya pada Ready Queue.
• Round Robin Scheduling.
Algoritma Round Robin bekerja dengan cara memberikan
time slice kepada setiap proses dalam jumlah yang sama.
Pendekatan ini memberikan keadilan bagi setiap proses.
Contoh: Slot waktu yang diberikan adalah 100ms. Jika
proses1 membutuhkan 250ms untuk selesai, maka Round
Robin akan menunda eksekusi proses1 setelah 100ms dan
eksekusi dilanjutkan pada proses berikutnya dalam waktu
100ms. Proses1 akan dilanjutkan kembali setelah semua
proses mendapatkan 100ms yang sama dan aktifitas ini
diulang kembali hingga seluruh proses selesai dieksekusi.
Pemrosesan
Paralel
Haddad
Sammir,
M.Kom
Algoritma Penjadwalan
• Shortest Job First (SJF).
SJF merupakan algoritma penjadwalan yang
memprioritaskan proses / job dengan waktu eksekusi
terpendek. Algoritma ini memberikan kontribusi pada
throughput karena banyak proses / job yang dapat
diselesaikan pada selang waktu tertentu.
• Shortest Remaining Time First.
Algoritma ini memilih proses yang memiliki sisa waktu
eksekusi paling sedikit untuk dieksekusi terlebih dahulu.
Dengan algoritma ini, proses dengan proses / job dengan
waktu terpendek akan diselesakan dengan lebih cepat.
Pemrosesan
Paralel
Haddad
Sammir,
M.Kom
Algoritma Penjadwalan
• Multilevel Feedback Queues (MLFQ).
MLFQ bekerja dengan cara memperbolehkan proses
berpindah antar antrian. Algortma akan memilih proses
dengan prioritas tertinggi untuk dieksekusi, jika proses
tersebut mengkonsumsi terlalu banyak sumber daya CPU,
maka proses tersebut akan dipindahkan ke antrian dengan
prioritas yang lebih rendah. Proses yang sedang menunggu
(prioritas lebih rendah), otomatis akan naik ke antrian
dengan prioritas lebih tinggi.
• Lottery Scheduling.
Algoritma penjadwalan ini menggunakan pendekatan
probabilistik. Setiap proses diberikan tiket yang akan
diundi oleh scheduler. Proses yang terpilih akan dieksekusi
lebih dahulu.
Pemrosesan
Paralel
Haddad
Sammir,
M.Kom
Sekian
Terima Kasih

6. Scheduling

  • 1.
  • 2.
    Pemrosesan Paralel Haddad Sammir, M.Kom Definisi Scheduling • SecaraEtimologi berarti ”penjadwalan”. • Dalam dunia komputer, scheduling adalah sebuah metoda dimana thread, proses dan alur data diberi akses ke sumber daya 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 dari kebutuhan sistem operasi moderen untuk melakuka multitasking dan multiplexing (mengirimkan banyak arus data secara bersamaan melalui satu kanal fisik).
  • 3.
    Pemrosesan Paralel Haddad Sammir, M.Kom Fokus Scheduler • Throughput.Total jumlah proses yang berhasil diselesaikan berdasarkan unit waktu tertentu. • Latency. Total waktu antara penyerahan proses hingga penyelesaian proses. • Response time. Waktu yang dibutuhkan semenjak proses diserahkan hinggal proses dijadwalkan (untuk diselesaikan). • Fairness. Kesetaraan masing-masing proses untuk mendapatkan CPU time. • Waiting time. Total waktu proses berada dalam keadaan menunggu untuk diselesaikan setelah dijadwalkan.
  • 4.
    Pemrosesan Paralel Haddad Sammir, M.Kom Penjadwalan Antrian (Queue) SistemOperasi 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 (proses eksekusi), maka proses tersebut akan berada pada job queue.
  • 5.
    Pemrosesan Paralel Haddad Sammir, M.Kom Penjadwalan Proses • Antriandigambarkan sebagai kotak segi empat. • Lingkaran menggambarkan sumber daya yang melayani antrian. • Panah menggambarkan arah arus proses pada sistem.
  • 6.
    Pemrosesan Paralel Haddad Sammir, M.Kom Penjadwalan Proses Proses yangberada pada antrian job akan berada pada antrian ”Ready Queue”. Scheduler akan mengalokasikan CPU kepada proses tersebut. Ketika proses dieksekusi, kejadian berikut ini dapat terjadi: • Proses mengajukan permintaan I/O dan akan berada pada Device Queue. • Proses dapat membuat subproses baru dan menunggu hingga sub proses berakhir. • Proses dapat dikeluarkan secara paksa dari CPU akibat interupsi dan diletakkan kembali ke ready queue.
  • 7.
    Pemrosesan Paralel Haddad Sammir, M.Kom Two State ProcessModel Proses dapat berada pada dua keadaan yaitu: • Running. • Not Running.
  • 8.
    Pemrosesan Paralel Haddad Sammir, M.Kom Tipe Penjadwalan (Scheduling)Sistem Operasi Sistem operasi menggunakan tiga tipe penjadwalan yang berbeda yaitu: • Long-term Scheduler. • Mid-term / Medium-term Scheduler. • Long term Scheduler. Penjadwal sistem operasi adalah sebuah modul yang akan memilih job berikutya yang akan dijalankan.
  • 9.
    Pemrosesan Paralel Haddad Sammir, M.Kom Penjadwal (Scheduler) • Long-termScheduler. Long-term scheduler menentukan job / proses mana yang diizinkan untuk dieksekusi oleh sistem. • Short-term Scheduler. Short-term scheduler dikenal juga sebagai CPU scheduler menentukan proses (yang telah berada pada antrian Ready Queue) mana yang akan dieksekusi setelah diterimanya sinyal seperti sinyal time interrupt, I/O interrupt atau System Call. • Mid-term Scheduler. Mid-term scheduler menentukan proses mana yang akan di-swap.
  • 10.
    Pemrosesan Paralel Haddad Sammir, M.Kom Proses Swapping Swapping adalahmemindahkan proses dari memori utama (RAM) ke memori sekunder (Harddisk) apa bila proses tersebut tidak aktif untuk waktu tertentu, atau apabila proses tersebut memiliki prioritas yang rendah. Tujuan swapping adalah untuk menjamin ketersediaan memori bagi proses lain yang sedang membutuhkan.
  • 11.
    Pemrosesan Paralel Haddad Sammir, M.Kom Context Switch • ContextSwitch adalah mekanisme menyimpan dan mengambil kembali status keadaan (state) atau context CPU dari Process Control Block (PCB) sehingga eksekusi sebuah proses dapata dilanjutkan kembali (resume) dari titik terakhirnya. • Teknik ini memungkinkan banyak proses dapat saling berbagi satu CPU. • Context switching adalah bagian penting dari sistem operasi multitasking.
  • 12.
    Pemrosesan Paralel Haddad Sammir, M.Kom Prinsip Kerja ContextSwitching Ketika scheduler mengalihkan aktifitas CPU pada sebuah proses ke proses lainnya, context switcher menyimpan data semua register prosesor ke dalam Process Control Block (PCB). Data yang telah disimpan akan diambil kembali dari PCB apabila proses bersangkutan akan di-resume.
  • 13.
    Pemrosesan Paralel Haddad Sammir, M.Kom Prinsip Kerja ContextSwitching 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.
  • 14.
    Pemrosesan Paralel Haddad Sammir, M.Kom Algoritma Penjadwalan • FCFS(First Come, First Serve). Algoritma ini akan menjadwalkan proses sesuai dengan waktu kedatangannya pada Ready Queue. • Round Robin Scheduling. Algoritma Round Robin bekerja dengan cara memberikan time slice kepada setiap proses dalam jumlah yang sama. Pendekatan ini memberikan keadilan bagi setiap proses. Contoh: Slot waktu yang diberikan adalah 100ms. Jika proses1 membutuhkan 250ms untuk selesai, maka Round Robin akan menunda eksekusi proses1 setelah 100ms dan eksekusi dilanjutkan pada proses berikutnya dalam waktu 100ms. Proses1 akan dilanjutkan kembali setelah semua proses mendapatkan 100ms yang sama dan aktifitas ini diulang kembali hingga seluruh proses selesai dieksekusi.
  • 15.
    Pemrosesan Paralel Haddad Sammir, M.Kom Algoritma Penjadwalan • ShortestJob First (SJF). SJF merupakan algoritma penjadwalan yang memprioritaskan proses / job dengan waktu eksekusi terpendek. Algoritma ini memberikan kontribusi pada throughput karena banyak proses / job yang dapat diselesaikan pada selang waktu tertentu. • Shortest Remaining Time First. Algoritma ini memilih proses yang memiliki sisa waktu eksekusi paling sedikit untuk dieksekusi terlebih dahulu. Dengan algoritma ini, proses dengan proses / job dengan waktu terpendek akan diselesakan dengan lebih cepat.
  • 16.
    Pemrosesan Paralel Haddad Sammir, M.Kom Algoritma Penjadwalan • MultilevelFeedback Queues (MLFQ). MLFQ bekerja dengan cara memperbolehkan proses berpindah antar antrian. Algortma akan memilih proses dengan prioritas tertinggi untuk dieksekusi, jika proses tersebut mengkonsumsi terlalu banyak sumber daya CPU, maka proses tersebut akan dipindahkan ke antrian dengan prioritas yang lebih rendah. Proses yang sedang menunggu (prioritas lebih rendah), otomatis akan naik ke antrian dengan prioritas lebih tinggi. • Lottery Scheduling. Algoritma penjadwalan ini menggunakan pendekatan probabilistik. Setiap proses diberikan tiket yang akan diundi oleh scheduler. Proses yang terpilih akan dieksekusi lebih dahulu.
  • 17.