Minggu/Sesi : IX/3
Kode : 1031202, 1041202
Matakuliah
Nama : Sistem Operasi
Matakuliah
Tugas : 4 – Penjadwalan CPU
Setoran : Jawaban diketik dengan menggunakan word processor, selanjutnya disetor di
e-course
Batas Waktu : 24 Maret 2023
Setoran
Tujuan : 1. Mampu menjelaskan konsep penjadwalan CPU meliputi latar
belakang, kriteria penjadwalan, komponen, dan algorithma
2. Mampu menjabarkan algorithma-algorithma penjadwalan CPU
3. Mampu menjelaskan konsep dasar penjadwalan thread, dan
penjadwalan multi-prosesor.
4. Mampu menjelaskan model evaluasi dalam pemilihan algorithma
untuk penjadwalan meliputi: model deterministik, model antrian, dan
simulasi
5. Mampu menjelaskan konsep dasar penjadwalan CPU real-time
6. Mampu menjelaskan model evaluasi dalam pemilihan algorithma
untuk penjadwalan meliputi: model deterministik, model antrian,
dan simulasi
Petunjuk
Referensi
A. Silberschatz, P.B. Galvin, and G. Gagne, Operating System Concepts, 9th edition,
Chapter 1 and 2, John Wiley & Sons, Inc., 2013.
Konsep Dasar
b. Throughput = Kriteria ini mengukur jumlah tugas yang selesai dieksekusi oleh CPU
dalam unit waktu tertentu. Semakin tinggi throughput, semakin banyak tugas yang
selesai dieksekusi oleh CPU dalam waktu yang lebih singkat. Oleh karena itu,
algoritma penjadwalan CPU yang baik harus dapat meningkatkan throughput
tanpa mengorbankan kriteria lain seperti turnaround time.
d. Waiting time = Kriteria ini mengukur waktu yang dihabiskan oleh suatu tugas dalam
antrian penjadwalan sebelum tugas tersebut dieksekusi oleh CPU. Semakin rendah
waiting time, semakin cepat tugas dapat diselesaikan. Oleh karena itu, algoritma
penjadwalan CPU yang baik harus dapat meminimalkan waiting time sehingga tugas-
tugas dapat diselesaikan dengan cepat.
e. Response time = Kriteria ini mengukur waktu yang dibutuhkan oleh sistem untuk
merespons permintaan pengguna setelah pengguna mengirimkan permintaan
tersebut. Semakin rendah response time, semakin cepat sistem merespons
permintaan pengguna. Oleh karena itu, algoritma penjadwalan CPU yang baik harus
dapat meminimalkan response time sehingga pengguna dapat merasakan respons
yang cepat dari sistem.
3. [10 poin] Terdapat 3 proses yaitu A, B dan C yang spesifikasinya sebagai berikut:
Proses Burst-time
(millisecon
ds)
A 10
B 5
C 5
A B C
0 10 15 20
Dalam hal ini, terdapat tiga proses, sehingga kita harus menghitung total waktu
tunggu untuk ketiga proses. Waktu tunggu untuk setiap proses dapat dihitung
dengan cara menghitung selisih antara waktu kedatangan (arrival time) dan waktu
mulai (start time).
Jadi, total waktu tunggu untuk ketiga proses adalah 0 + 10 + 15 = 25, dan rata-rata
waktu tunggu adalah 25 / 3 = 8.33 ms.
4. [15 poin] Mengacu pada soal No. 3, semisalnya spesifikasi dari ketiga proses menjadi
sebagai berikut:
Proses Burst-time
(millisecon
ds)
B 5
C 5
A 10
B C A
0 5 10 20
c. Apakah ada perbedaan antara hasil dari No.3 dan No.4? Jika ada, apa
konsekuensi yang disebabkan dari penggunaan FCFS?
Jawab:
Perbedaan terletak pada urutan pelaksanaan proses. Nomor 3 dimulai
dengan urutan ABC, sementara nomor 4 dimulai dengan urutan BCA.
Penyebabnya adalah urutan kedatangan proses yang menentukan, dan
jika metode FCFS digunakan, proses akan dieksekusi sesuai urutannya
tanpa memperhatikan durasi burst-time atau nama proses
5. [10 poin] Terdapat 4 proses yaitu A, B, C dan D yang spesifikasinya sebagai berikut:
Laporan Praktikum Sistem Operasi 5
Proses Burst-time
(millisecon
ds)
A 8
B 10
C 9
D 5
Waktu tunggu adalah selisih antara waktu mulai dan waktu tiba. Waktu selesai
adalah waktu ketika proses selesai dijalankan.
6. [10 poin] Untuk menjalankan algoritma penjadwalan CPU secara SJF diperlukan
prediksi terhadap burst-time dari proses selanjutnya. Prediksi ditentukan dengan
menggunakan formula berikut:
Index (n) 0 1 2 3 4 5 6
CPU Burst (𝒕𝒏) 6 4 8 4 13 13
Guess(𝑟𝒏) 10 8 … … … … …
Dengan menggunakan formula di atas dan nilai dari 𝑟𝑛` serta 𝑡𝑛, jawablah pertanyaan
berikut:
a. Nilai prediksi dari 𝑟2 sampai dengan 𝑟6 (tuliskan cara untuk
mendapatkan nilai prediksinya kemudian tuliskan seperti tabel di
atas).
Jawab:
𝑇𝑛 + 1 = 𝛼 𝑡𝑛 + (1 – 𝛼)𝑇𝑛 – 1
𝛼 = 0,5; 𝑡1 = 6; 𝑇1 = 8
𝑇2 = 0,5(4) + (1 – 0,5)8 = 2 + (0,5)8 = 2 + 4 = 6
𝑇3 = 0,5(8) + (1 – 0,5)6 = 4 + 3 = 7
𝑇4 = 0,5(4) + (1 – 0,5)7 = 2 + 3,5 = 5,5
𝑇5 = 0,5(13) + (1 – 0,5) 5,5 = 6,5 + (0,5) 5,5 = 6,5 + 2,75 = 9,25
𝑇6 = 0,5(13) + (1 – 0,5)9,25 = 11,25
b. Adakah nilai prediksi dengan nilai CPU burst yang akurat sama?
Jawab: Tidak Ada
7. [20 poin] Terdapat 4 proses yaitu A, B, C dan D yang spesifikasinya sebagai berikut:
B 1 6
C 4 11
D 6 5
8. [10 poin] Terdapat lima proses yaitu A, B, C, D dan E yang tiba secara berurutan
dengan spesifikasi pada tabel di bawah.
B 1 1
C 4 2
D 5 5
E 6 4
B C A E D
0 1 5 25 31 36
10. [15 poin] Terdapat lima proses yaitu A, B, C, D dan E yang tiba secara berurutan
dengan spesifikasi pada tabel di bawah.
Laporan Praktikum Sistem Operasi 9
Prose Burst
s - time
A 10
B 1
C 4
D 5
E 6
Proses B membutuhkan waktu burst-time sebesar 1 unit saja, sehingga CPU akan
mengeksekusi seluruh burst-time pada saat proses B tiba. Turnaround time untuk
proses B adalah 3 - 0 = 3
Jawab:
Dalam sistem multilevel feedback, sebuah proses akan ditempatkan pada antrian tertentu
ketika pertama kali masuk ke dalam sistem dan tidak akan dipindahkan antar antrian.
Meskipun pengaturan ini memiliki keuntungan dari overhead penjadwalan yang rendah,
namun kekurangannya adalah kurang fleksibel.
Artinya, dalam sistem multilevel feedback, suatu proses akan tetap berada di antrian awal
saat pertama kali masuk ke dalam sistem dan tidak akan dipindahkan ke antrian lain.
Meskipun hal ini mengurangi biaya penjadwalan, namun kurang fleksibel karena tidak
memungkinkan untuk memindahkan proses antar antrian sesuai dengan kondisi sistem
yang berubah-ubah.