Dokumen tersebut membahas tentang teknik penjadwalan (scheduling) dalam sistem operasi, meliputi definisi penjadwalan, mekanisme yang dilakukan oleh scheduler, dan strategi-strategi penjadwalan seperti FCFS, SJF, SRT. Juga dibahas kasus penjadwalan beberapa job dengan berbagai teknik dan parameter waktu.
1. Teknik Scheduling dalam
Sistem Operasi
Ir. Sihar, MT.
Program studi Teknik Informatika
Fak. Teknologi Informasi
Bandung – 2013
FTI306 Sistem Operasi (3 sks)
2. Daftar Pustaka
1) Patterson, D., Hennessy, J. Computer Organization
and Design, 3rd edition. Morgan Kaufman. 2004.
2) Silberschatz, A., Galvin, P.B., Gagne, G. Operating
Systems Concepts-seventh edition. John Wiley & Sons.
2005.
3) Simamora, S.N.M.P. Diktat CE112-Sistem Operasi.
Program studi T.Komputer. Politeknik TELKOM
Bandung. 2008.
4) Simamora, S.N.M.P. Diktat FTI306 Sistem Operasi.
Program studi T.Informatika. Fak.Teknologi Informasi.
Univ. BALE. Bandung. 2012.
5) Tanenbaum, A.S. Modern Operating Systems-third
edition. Prentice-Hall. 2009.
3. Penjadwalan (scheduling) dalam sistem operasi (sistem komputer) dapat
didefinisikan sebagai sejumlah keputusan dan mekanismenya untuk
memprioritaskan urutan task/job yang akan dilayani dimana berlangsung
secara periode waktu.
Tugas scheduling dilakukan oleh
scheduler dalam sistem operasi
memutuskan proses mana yang akan berjalan
memutuskan kapan dan berapa lama
process berjalan
Mekanisme scheduling yang dilakukan oleh scheduler dalam sistem operasi,
dikontrol berdasar 3 aspek, yaitu:
Antrian (queueing): menunggu untuk dilayani
Priority: masih dalam blok antrian untuk terlebih dahulu dilayani
Preemptive: persyaratan/kondisional; suatu process dikondisikan preemptive
maka akan didahulukan untuk dilayani
4. Strategi scheduling
dilakukan dengan
cara:
Non-preemptive: process tidak dapat di-sela
(diinterupsi) oleh kondisi apa pun. Misalkan:
sebuah job yang telah diambil-alih oleh virus/trojan
tidak akan mungkin bisa dihentikan kecuali dengan
bruce-force mechanism.
Preemptive: saat process berjalan, dapat di-sela
(diinterupsi) oleh process yang lain, sehingga
process dengan status preemptive akan dilayani
terlebih dahulu sampai selesai. Misalkan: sebuah
download process yang bisa diasumsikan sebagai
job, saat sedang berjalan dapat di-sela (diinterupsi)
dengan dua kondisi yakni: subjektivitas end-user
atau temporary condition (kondisi jaringan atau
keterbatasan resources).
5. First-Come-First-Served (FCFS) yaitu:
yang pertama sekali datang adalah yang
pertama sekali dilayani.
First-Come-First-Served* (FCFS*) yaitu: yang pertama
kali datang yang akan dilayani terlebih dahulu dalam
waktu (perioda tertentu) yang disebut dengan
Quantum-Time (QT); jika belum selesai akan diantrikan
kembali.
Shortest-Job-First (SJF) yaitu proses
dengan waktu terpendek akan dipilih
(diprioritaskan) untuk dilayani sampai
selesai.
Shortest Remaining Time (SRT) yaitu
proses dengan periode waktu terpendek
akan diproditaskan untuk dilayani dalam
waktu tertentu (Quantum-Time, QT), jika
belum selesai akan dilayani kembali.
Untuk semua teknik
schedulling, job/task
dengan TKed=0
dijalankan terlebih
dahulu (algoritma
initialization)
6. Turn-Arround-Time (TAT) = )(
1
∑=
+
N
i
DT ii
tt
tT = waktu-process
tD = waktu-tunggu
N = jumlah job/task
Metric
i = job ke-i
Beban-Komputasi (Φ) = )}({
1
1
∑=
+
N
i
DT ii
tt
N
)(
1
TAT
N
=
7. Kasus: Jika diketahui suatu sistem operasi dengan scheduling yang ditunjukkan pada
tabel berikut untuk masing-masing parameter TKed dan tT:
Diagram-state:
TAT-Jx = 4+0 = 4-ssw
TAT-Jy = 2+2 = 4-ssw
TAT-Jx1 = 3+1 = 4-ssw
TAT-Jx0 = 2+1 = 3-ssw
TAT-Jz = 2+2 = 4-ssw
5
4
3)43444(
5
1
=++++=Φ
19)( =∑ TAT
Setiap job mulai
dikerjakan sesuai TKed
secara sekuensial
8. Diagram-state:
TAT-Jx = 4+2 = 6-ssw
TAT-Jy = 2+0 = 2-ssw
TAT-Jx1 = 3+3 = 6-ssw
TAT-Jx0 = 2+0 = 2-ssw
TAT-Jz = 2+2 = 4-ssw
4)42626(
5
1
=++++=Φ
20)( =∑ TAT
Setiap job mulai dikerjakan
sesuai TKed secara
sekuensial namun
berpenggalan berdasar QT
13. Kasus: Berdasar pada layanan pada sejumlah job/task oleh suatu sistem operasi
dengan scheduling yang ditunjukkan pada tabel berikut untuk masing-masing
parameter TKed dan tT:
b. Selisih (∆) tT Jx1 terhadap Jx0 untuk setiap teknik scheduling yang digunakan
adalah sama, yakni: |2-3| = 1-ssw
a. Selisih (∆) TAT Jx1 terhadap Jx0 untuk setiap teknik scheduling sbb:
∆ TAT FCFS = |4-3| = 1-ssw
∆ TAT FCFS* (QT=2) = |6-2| = 4-ssw
∆ TAT FCFS* (QT=1) = |6-4| = 2-ssw
∆ TAT SJF = |4-3| = 1-ssw
∆ TAT SRT (QT=2) = |5-4| = 1-ssw
∆ TAT SRT (QT=1) = |6-7| = 1-ssw
14. Kasus: Berdasar pada layanan pada sejumlah job/task oleh suatu sistem operasi
dengan scheduling yang ditunjukkan pada tabel berikut untuk masing-masing
parameter TKed dan tT:
Diagram-state:
TAT-Pa = 4+0 = 4-ssw
TAT-P1 = 4+2 = 6-ssw
TAT-P3 = 3+3 = 6-ssw
TAT-P2 = 2+3 = 5-ssw
4
1
5)5664(
4
1
=+++=Φ
21)( =∑ TAT