Algoritma Penjadwalan SJF & Cara Perhitungannya - Panen Koding
Algoritma Shortest Job First
adalah algoritma non-preemptive dan tidak berprioritaskan atau tidak dapat di-interupt, algoritma ini sangat jarang digunakan, algoritma ini menjadwalkan proses dengan waktu yang paling pendek untuk dijalankan terlebih dahulu.
Masalah dengan SJF Non Pra-emptive
pemilihan proses adalah proses dalam antrian yang memiliki waktu eksekusi tercepat. CPU tidak memperbolehkan proses yang ada di ready queue untuk menggeser proses yang sedang dieksekusi oleh CPU meskipun proses yang baru tersebut mempunyai burst time yang lebih kecil.
Atau
Jika waktu kedatangan untuk proses berbeda, yang berarti semua proses tidak tersedia dalam antrian siap pada waktunya 0, dan beberapa pekerjaan tiba setelah beberapa waktu, dalam situasi seperti itu, kadang-kadang proses dengan waktu burst singkat harus menunggu proses eksekusi saat ini untuk menyelesaikan, karena di SJF Non Pra-emptif, pada saat kedatangan suatu proses dengan durasi pendek, eksekusi pekerjaan / proses yang ada tidak terhenti / dihentikan untuk melakukan pekerjaan yang lebih pendek terlebih dahulu.
Contoh Soal & Penyelesaiannya
Maka Gentt Chart & Waiting Timenya
Seperti yang Anda lihat di GANTT CHART di atas, proses A akan diambil / dieksekusi pertama karena memiliki Arrival Time 0 / datang terlebih dahulu, kemudian D datang kemudian B dan C ,Lalu kita bandingkan Burst Time mana yang waktunya lebih singkat dari D,B,C (Burst Time yang lebih singkat akan dieksekusi selanjutnya dan seterusnya)
Kenapa kok bisa 0-8-12-17-28,
Begini penjelasannya :
- Pertama , dimulai dari 0 terlebih dahulu
- Kemudian, masukkan burs time A karena A yang pertama datang dan dieksekusi
- Kemudian, jumlahkan Burst Time (A+B) lalu masukkan
- Kemudian, jumlahkan Burst Time (A+B+D) lalu masukkan
- Kemudian, jumlahkan Burst Time (A+B+D+C) lalu masukkan
Nah Prosess selanjutnya,
Untuk Mendapatkan WT(Waiting Time)nya
Kita hanya mengambil angka Waktu Mulai dari yang pertama,
Kemudian di kurangi Arrival Time(Waktu Datang)
Dibawah ini adalah Waktu Mulainya,
0 - 8 - 12 - 17 - 28
A - B - D - C - X
rumusnya :
Waktu Mulai - Arrival Time(Waktu Datang) = Waiting Time (WT)
Jadi WT masing masing Prosess :
Kemudian di kurangi Arrival Time(Waktu Datang)
Dibawah ini adalah Waktu Mulainya,
0 - 8 - 12 - 17 - 28
A - B - D - C - X
rumusnya :
Waktu Mulai - Arrival Time(Waktu Datang) = Waiting Time (WT)
Jadi WT masing masing Prosess :
Untuk Mendapatkan AWT(Average Waiting Time)nya
rumusnya : Jumlahkan Waiting Timenya
Jumlah Prosess
Jadi AWTnya ( 0 + 6 + 14 + 3 ) /4 = 5.7 ms
#ampas
0 Response to "Algoritma Penjadwalan SJF & Cara Perhitungannya - Panen Koding"
Post a Comment