Kumpulan Contoh Soal Penjadwalan Proses Bertingkat Beserta Cara Menghitung Gantt Chart: Panduan Lengkap Mahir Sistem Operasi

Halo, Sobat IT! Kembali lagi di sesi belajar seru seputar dunia sistem operasi. Kalau sebelumnya kita sudah sering membahas penjadwalan sederhana seperti FCFS (First Come First Served) atau Round Robin, kali ini kita akan naik level ke materi yang sedikit lebih menantang tapi sangat aplikatif di dunia nyata: Penjadwalan Proses Bertingkat (Multilevel Queue Scheduling).

Baca juga:Contoh Soal Accurate Terbaru Disertai Jawaban dan Cara Penyelesaiannya

Pernahkah kamu membayangkan bagaimana komputer bisa tetap lancar memutar musik sambil mengerjakan update sistem yang berat di latar belakang, tanpa membuat kursor mouse-mu lag? Rahasianya ada pada pembagian kasta atau tingkatan proses. Di artikel ini, kita akan membedah kumpulan contoh soal penjadwalan bertingkat lengkap dengan cara menggambar Gantt Chart-nya secara mendetail. Siapkan alat tulis dan mari kita asah logika komputasi kita!

Apa Itu Penjadwalan Proses Bertingkat?

Dalam sistem operasi, tidak semua proses diciptakan sama. Ada proses yang butuh respon instan (seperti pengetikan keyboard) dan ada proses yang bisa menunggu (seperti download file). Multilevel Queue Scheduling membagi antrean proses menjadi beberapa tingkat berdasarkan kasta atau prioritasnya.

Biasanya, antrean dibagi menjadi dua kategori besar:

🔖 Baca juga:
Master Aljabar: Strategi Jitu Menguasai Perkalian Aljabar Beserta Contoh Soal Terlengkap
  1. Foreground Processes (Interactive): Antrean untuk proses yang berinteraksi langsung dengan pengguna. Biasanya menggunakan algoritma Round Robin (RR) agar responnya cepat.
  2. Background Processes (Batch): Antrean untuk proses yang berjalan di belakang layar. Biasanya menggunakan algoritma FCFS karena lebih hemat daya CPU (overhead rendah).

Aturan mainnya sederhana: CPU tidak akan mengerjakan antrean tingkat rendah selama masih ada proses di antrean tingkat tinggi.


Cara Menghitung dan Menggambar Gantt Chart

Gantt Chart adalah peta waktu yang menunjukkan proses mana yang sedang memakai CPU pada waktu tertentu. Untuk penjadwalan bertingkat, kuncinya adalah Preemption. Jika sebuah proses di antrean tinggi datang saat proses di antrean rendah sedang jalan, CPU akan langsung “mengusir” proses rendah tersebut.


Kumpulan Contoh Soal dan Pembahasan

Berikut adalah beberapa skenario soal yang sering muncul dalam ujian Sistem Operasi:

Soal 1: Dua Antrean dengan Prioritas Tetap

Sebuah sistem memiliki dua antrean:

  • Queue 1 (Q1): Prioritas Tinggi, menggunakan FCFS.
  • Queue 2 (Q2): Prioritas Rendah, menggunakan FCFS.

Data Proses:

  • P1 masuk ke Q1 pada $t=0$ dengan Burst Time 4.
  • P2 masuk ke Q2 pada $t=0$ dengan Burst Time 6.
  • P3 masuk ke Q1 pada $t=2$ dengan Burst Time 2.

Pertanyaan: Buatlah Gantt Chart dan hitung waktu tunggunya!

Pembahasan:

  1. Pada $t=0$, P1 (Q1) dan P2 (Q2) masuk. Karena Q1 lebih tinggi, P1 jalan.
  2. Pada $t=2$, P3 (Q1) masuk. Karena P1 dan P3 sama-sama di Q1, dan Q1 menggunakan FCFS, P1 tetap jalan sampai selesai.
  3. Pada $t=4$, P1 selesai. Masih ada P3 di Q1. P3 harus selesai sebelum Q2 boleh jalan.
  4. Pada $t=6$, P3 selesai. Akhirnya Q2 bisa jalan, P2 mulai dikerjakan.
  5. Pada $t=12$, P2 selesai.

Gantt Chart:

[P1: 0-4] [P3: 4-6] [P2: 6-12]

Cara Menghitung Waiting Time (WT):

  • WT P1 = $0 – 0 = 0$
  • WT P3 = $4 – 2 = 2$
  • WT P2 = $6 – 0 = 6$
  • Rata-rata WT: $(0 + 2 + 6) / 3 = 2,67$

Soal 2: Antrean Interaktif (RR) dan Antrean Batch (FCFS)

Sistem memiliki dua antrean:

  • Queue 1 (High): Round Robin (Quantum = 2).
  • Queue 2 (Low): FCFS.

Data Proses:

  • P1 (Q1) masuk pada $t=0$, Burst Time 5.
  • P2 (Q2) masuk pada $t=0$, Burst Time 4.

Pertanyaan: Gambarkan Gantt Chart-nya!

Pembahasan:

  1. $t=0$: P1 (Q1) jalan. Karena RR Q=2, P1 jalan sampai $t=2$, lalu diputus. Namun karena Q1 tidak ada proses lain, P1 lanjut lagi $t=2$ ke $t=4$, lalu sisa 1 ms sampai $t=5$.
  2. $t=5$: Q1 kosong. P2 (Q2) baru boleh masuk ke CPU.
  3. $t=9$: P2 selesai.

Gantt Chart:

[P1: 0-5] [P2: 5-9]

Catatan: Meskipun P1 menggunakan RR, jika tidak ada saingan di antrean yang sama, dia akan menghabiskan jatahnya sampai Q1 benar-benar kosong.


Soal 3: Kasus Interupsi (Preemptive)

Ada dua antrean: Q1 (Sistem – Tinggi) dan Q2 (User – Rendah).

  • $t=0$: P1 (Q2) masuk, Burst 10. P1 mulai jalan.
  • $t=3$: P2 (Q1) masuk, Burst 2.

Apa yang terjadi?

Pembahasan:

Sesuai aturan penjadwalan bertingkat, pada $t=3$ saat P2 masuk, CPU akan segera menghentikan P1 karena P2 berada di antrean yang lebih tinggi (Q1). P1 harus “mengalah” dan kembali masuk antrean Q2 dengan sisa Burst 7. Setelah P2 selesai pada $t=5$, barulah P1 boleh lanjut lagi.

Gantt Chart:

[P1: 0-3] [P2: 3-5] [P1: 5-12]


Tips Menghitung Agar Tidak Salah

  1. Identifikasi Kasta: Selalu tulis di sebelah nama proses, dia masuk antrean mana (High atau Low).
  2. Perhatikan Waktu Kedatangan: Jangan sampai kamu menjalankan proses Q1 di $t=0$ padahal dia baru datang di $t=5$.
  3. Gunakan Sisa Waktu: Selalu catat sisa Burst Time jika sebuah proses diputus di tengah jalan (preempted).
  4. Cek Kondisi Antrean: Sebelum menjalankan proses dari antrean bawah, pastikan semua antrean di atasnya sudah kosong melompong.

Baca juga:Mahasiswa Teknik Elektro Universitas Teknokrat Indonesia Berikan Edukasi Kendaraan Listrik kepada mahasiswa dan guru SMK Esa Kencana

Penutup: Teruslah Berlatih!

Sobat IT, memahami penjadwalan bertingkat adalah kunci untuk mengerti bagaimana sistem operasi yang kompleks bekerja. Konsep ini mengajarkan kita tentang prioritas dan efisiensi. Memang di awal terlihat rumit saat harus memindahkan proses di Gantt Chart, tapi dengan banyak latihan, kamu akan terbiasa melihat pola “pemutusan” aliran CPU tersebut.

Penulis:Mahasiswa Teknik Elektro Universitas Teknokrat Indonesia Berikan Edukasi Kendaraan Listrik kepada mahasiswa dan guru SMK Esa Kencana

Post Comment