Penjadwalan Waktu Nyata pertemuan 9
Penjadwalan Waktu Nyata
• Penjadwalan (scheduling) merupakan
komponen sistem operasi waktu nyata yang
paling penting.
• Penjadwalan terjadi apabila jumlah pproses
(task) yang aktif lebih banyak dibandingkan
jumlah processor (CPU).
Validasi Algoritma Penjadwalan
Penjadwalan harus divalidasi sebelum diimplementasikan pada RTS
dan memenuhi kondisi berikut :
a.
b.
c.
d.
Setiap processor harus dialokasikan untuk 1 job.
Waktu processor total yang dialokasikan untuk tip job sama
dengan waktu eksekusi actual atau maksimumnya.
Tidak ada job yang dijadwalkan sebelum waktu releasenya, agar
processor tidak idle (standby, sementara ada task lain yang dapat
dikerjakan)
Seluruh precedence dan constraint sumber daya terpakai
terpenuhi harus dipertimbangkan dan mampu diatasi oleh
algoritma
Metode Penjadwalan
• Metode dinamik
Pemroses melakukan scheduling pada saat sistem
berjalan berdasarkan task yang sedang running
atau istilah lain disebut dengan online. Metode ini
didesain dan bekerja atas permintaan layanan.
• Metode Statik
Pemroses melakukan penjadwalan berdasarkan
schedulling tetap yang dibuat, saat perancangan
sistem atau dikenal dengan metode offline
Model kendala waktu
p
d
e
s
waktu
• s = titik mulai pemrosesan task(start/ready time/release time)
• e = waktu pemrosesan T
• d = waktu deadline T
• p =periode dari T
Berlaku 0 ≤ e ≤ d ≤ p
Syarat schedulling algoritma
• Ratio jaminan
Algoritma dapat menjamin penjadwalan task yang baru datang dan menjamin
task dapat diproses sebelum deadline sebanyak mungkin
ideal =1
• Utilitas pemroses
Jumlah waktu pemroses yang digunakan task yang dijamin dibanding total
waktu pemroses
Rate Monotonic Scheduling (RMS)
RMS merupakan algoritma untuk implementasi
Hard Real Time System dengan Processor
tunggal
Sifat-sifat algoritma :
1. Algoritma dinamis
2. Preemtive berbasis prioritas statik
3. Optimal, terdapat prosedur statik yang
digunakan untuk menjalankan task-task saat
runtime
• Beberapa asummsi pada algoritma Rate
Monotonic Scheduling(RMS), antara lain
semua task dalam himpunan task adalah
periodik, batas waktu relatif dari suatu task
adalah sama dengan periodenya. Prioritas
suatu task adalah berbanding terbalik dengan
periodenya.
• Sebagai contoh algoritma RMS, misalnya ada
tiga task yaitu T1, T2 dan T3. Periode masingmasing task adalah P1=2, P2=6, P3=10. Waktu
eksekusi masing-masing task adalah e1=0.5,
e2=2.0, e3=1.5. Waktu penyerahan masingmasing task adalah R1=0, R2=1 dan R3=3
• Pada sistem processor tunggal, waktu eksekusi
tidak boleh lebih besar dari periode
U = e/p
Jika task berpriode 80 milidetik dan waktu
eksekusi 55 milidetik, maka :
Utilitas processor sebesar 55/80 = 0,6875
• Penjadwalan (scheduling) merupakan
komponen sistem operasi waktu nyata yang
paling penting.
• Penjadwalan terjadi apabila jumlah pproses
(task) yang aktif lebih banyak dibandingkan
jumlah processor (CPU).
Validasi Algoritma Penjadwalan
Penjadwalan harus divalidasi sebelum diimplementasikan pada RTS
dan memenuhi kondisi berikut :
a.
b.
c.
d.
Setiap processor harus dialokasikan untuk 1 job.
Waktu processor total yang dialokasikan untuk tip job sama
dengan waktu eksekusi actual atau maksimumnya.
Tidak ada job yang dijadwalkan sebelum waktu releasenya, agar
processor tidak idle (standby, sementara ada task lain yang dapat
dikerjakan)
Seluruh precedence dan constraint sumber daya terpakai
terpenuhi harus dipertimbangkan dan mampu diatasi oleh
algoritma
Metode Penjadwalan
• Metode dinamik
Pemroses melakukan scheduling pada saat sistem
berjalan berdasarkan task yang sedang running
atau istilah lain disebut dengan online. Metode ini
didesain dan bekerja atas permintaan layanan.
• Metode Statik
Pemroses melakukan penjadwalan berdasarkan
schedulling tetap yang dibuat, saat perancangan
sistem atau dikenal dengan metode offline
Model kendala waktu
p
d
e
s
waktu
• s = titik mulai pemrosesan task(start/ready time/release time)
• e = waktu pemrosesan T
• d = waktu deadline T
• p =periode dari T
Berlaku 0 ≤ e ≤ d ≤ p
Syarat schedulling algoritma
• Ratio jaminan
Algoritma dapat menjamin penjadwalan task yang baru datang dan menjamin
task dapat diproses sebelum deadline sebanyak mungkin
ideal =1
• Utilitas pemroses
Jumlah waktu pemroses yang digunakan task yang dijamin dibanding total
waktu pemroses
Rate Monotonic Scheduling (RMS)
RMS merupakan algoritma untuk implementasi
Hard Real Time System dengan Processor
tunggal
Sifat-sifat algoritma :
1. Algoritma dinamis
2. Preemtive berbasis prioritas statik
3. Optimal, terdapat prosedur statik yang
digunakan untuk menjalankan task-task saat
runtime
• Beberapa asummsi pada algoritma Rate
Monotonic Scheduling(RMS), antara lain
semua task dalam himpunan task adalah
periodik, batas waktu relatif dari suatu task
adalah sama dengan periodenya. Prioritas
suatu task adalah berbanding terbalik dengan
periodenya.
• Sebagai contoh algoritma RMS, misalnya ada
tiga task yaitu T1, T2 dan T3. Periode masingmasing task adalah P1=2, P2=6, P3=10. Waktu
eksekusi masing-masing task adalah e1=0.5,
e2=2.0, e3=1.5. Waktu penyerahan masingmasing task adalah R1=0, R2=1 dan R3=3
• Pada sistem processor tunggal, waktu eksekusi
tidak boleh lebih besar dari periode
U = e/p
Jika task berpriode 80 milidetik dan waktu
eksekusi 55 milidetik, maka :
Utilitas processor sebesar 55/80 = 0,6875