-->
g2QFCKwavghUp2yzjKrIFwEeG13RASCerFTCMH35

Pengertian Penjadwalan SJF (Shortest-Job First)

Pengertian Sistem Operasi
Shortest Job First ( SJF )
Kali ini akan dibahas mengenai algoritma penjadwalan Shortest Job First (SJF). SJF merupakan proses penjadwalan yang ada di ready queue dan akan dieksekusi berdasarkan burst time terkecil. Hal ini mengakibatkan waiting time yang pendek untuk setiap proses. Karena hal tersebut, maka waiting time rata-ratanya juga menjadi pendek, sehingga dapat dikatakan bahwa algoritma ini adalah algoritma yang optimal.
SJF memiliki 2 sifat :
  • non-preemptive (tidak dapat diinterupt), 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.
  • preemptive (dapat diinterupsi), proses yang dipilih adalah proses yang memiliki waktu sisa eksekusi terkecil. Teknik ini juga dikenal dengan nama Shortest Remaining Time First.
Contoh Jika ada proses P1 yang datang pada saat P0 sedang berjalan lalu akan dilihat CPU burst P1 apabila :
  • Preemptive, Jika CPU burst P1 lebih kecil dari sisa waktu yang dibutuhkan oleh P0 maka CPU ganti dialokasikan untuk P1.
  • Non-Preemptive, Akan tetap menyelesaikan P0 sampai habis CPU burst-nya.
Preemptive Shortest Job First ( PSJF )
Preemptive Shortest Job First (PSJF) disebut juga sebagai Shortest Remaining Time First. PSJF merupakan penjadwalan dengan prioritas dan dengan preempsi. Prioritas didasarkan kepada pendeknya sisa proses. Makin pendek sisa proses makin tinggi prioritasnya. Selanjutnya dengan ketentuan ini, ketika tiba, proses terpendek di bagian belakang antrian tidak saja berpindah ke bagian depan antrian, melainkan juga melalui preempsi, mengeluarkan proses yang pada saat itu berada di dalam proses (jika ada).
Pada PSJFjika ada proses yang sedang dieksekusi oleh CPU dan terdapat proses di ready queue dengan burst time yang lebih kecil daripada proses yang sedang dieksekusi tersebut, maka proses yang sedang dieksekusi oleh CPU akan digantikan oleh proses yang berada di ready queue tersebut. Beberapa istilah yang akan sering muncul :
  • Process : Urutan proses yang akan dilakukan
  • Arrival Time : Waktu kedatangan dari proses yang akan dilakukan
  • Average Turn Around Time : Rata-rata waktu total yg dibutuhkan sebuah proses dari datang sampai selesai dieksekusi oleh CPU
  • Burst Time: Waktu yg dibutuhkan untuk mengeksekusi sebuah proses
  • Average Waiting Time: Rata-rata waktu yang dihabiskan proses selama berada pada status ready ( menunggu eksekusi CPU )
Misalnya ada 2 buah proses yang datang berurutan yaitu P1 dengan arrival time pada 0.0 ms dan burst time 10 ms, P2 dengan arrival time pada 2.0 ms dan burst time 2 ms.
Process
Arrival Time
Burst Time
P1
0.0
10
P2
2.0
2
Capture
waiting time PSJF nya :
P1 = 0 + ( 4 ms – 2 ms ) = 2 ms
P2 = 0
Average waiting time : (2 ms + 0 ms ) / 2 = 2 ms
Average turn around : (12 ms + 0 ) / 2 = 12 ms

Tabel Solusi
Process
Arrival Time
Burst Time
Waktu Mulai
Waktu selesai
Waiting Time
Turn Around
P1
0
10
0
12
2
12
P2
2
2
0
4
0
0
Average
2
12

Related Posts

Related Posts

Post a Comment