ALGORITMA PENJADWALAN PROSES: Pengertian, Jenis, Cara Kerja, dan Contoh Perhitungan

1. Pengertian Algoritma Penjadwalan Proses

Algoritma penjadwalan proses (Process Scheduling Algorithm) adalah mekanisme yang digunakan sistem operasi untuk menentukan proses mana yang memperoleh kesempatan menggunakan Central Processing Unit (CPU), kapan proses dijalankan, dan berapa lama proses tersebut menggunakan CPU.

Dalam sebuah komputer, banyak program dapat berjalan secara bersamaan. Misalnya, pengguna membuka browser, mendengarkan musik, mengedit dokumen, mengunduh berkas, dan menjalankan aplikasi pemrograman. Setiap program yang sedang dieksekusi membutuhkan sumber daya komputer, terutama waktu CPU dan memori.

Karena setiap inti CPU memiliki kapasitas pemrosesan yang terbatas, sistem operasi memerlukan mekanisme untuk membagi kesempatan penggunaan CPU secara teratur dan efisien.

Mekanisme inilah yang disebut penjadwalan proses.

Algoritma penjadwalan proses bertujuan untuk:

  1. Meningkatkan pemanfaatan CPU (CPU utilization).

  2. Mengurangi waktu tunggu proses (waiting time).

  3. Mengurangi waktu penyelesaian proses (turnaround time).

  4. Meningkatkan kecepatan respons sistem (response time).

  5. Menjaga keadilan pembagian waktu CPU.

  6. Mencegah proses tertentu menunggu terlalu lama.

Tidak ada satu algoritma yang selalu menjadi pilihan terbaik untuk semua situasi. Algoritma yang tepat bergantung pada tujuan sistem, karakteristik proses, serta kebutuhan pengguna.

2. Istilah Penting dalam Penjadwalan Proses

Sebelum mempelajari berbagai algoritma, terdapat beberapa istilah yang perlu dipahami.

IstilahPenjelasan
ProcessProgram yang sedang dieksekusi.
Arrival Time (AT)Waktu ketika proses masuk ke sistem atau antrean siap, sesuai asumsi soal.
Burst Time (BT)Total waktu CPU yang dibutuhkan proses.
Completion Time (CT)Waktu ketika proses selesai dieksekusi.
Turnaround Time (TAT)Total waktu sejak proses tiba sampai selesai.
Waiting Time (WT)Total waktu proses menunggu di antrean siap.
Response Time (RT)Waktu dari kedatangan sampai proses pertama kali memperoleh CPU.
Time QuantumBatas waktu CPU yang diberikan kepada proses dalam Round Robin.
PreemptiveProses yang sedang berjalan dapat dihentikan sementara agar CPU dialihkan ke proses lain.
Non-preemptiveProses yang telah memperoleh CPU biasanya berjalan sampai selesai atau sampai memasuki keadaan menunggu.

Tiga rumus dasar yang sering digunakan dalam perhitungan penjadwalan adalah:

Turnaround Time

TAT = CT − AT

Waiting Time

WT = TAT − BT

Response Time

RT = waktu pertama kali memperoleh CPU − AT

Rumus waiting time tersebut berlaku untuk contoh proses CPU-burst tunggal tanpa waktu tunggu I/O yang dihitung terpisah.

Contoh sederhana

Sebuah proses tiba pada waktu 2, mulai menggunakan CPU pada waktu 5, membutuhkan CPU selama 4 satuan waktu, dan selesai pada waktu 9.

  • Arrival Time = 2

  • Burst Time = 4

  • Completion Time = 9

  • Turnaround Time = 9 − 2 = 7

  • Waiting Time = 7 − 4 = 3

  • Response Time = 5 − 2 = 3

Artinya, proses tersebut menghabiskan 7 satuan waktu sejak kedatangan hingga selesai, dengan 3 satuan waktu menunggu dan 4 satuan waktu menggunakan CPU.

3. Preemptive dan Non-Preemptive Scheduling

Berdasarkan cara CPU dialokasikan, algoritma penjadwalan dapat dibedakan menjadi dua pendekatan utama.

A. Non-Preemptive Scheduling

Pada penjadwalan non-preemptive, proses yang sudah memperoleh CPU akan terus berjalan sampai menyelesaikan CPU-burst-nya atau melepaskan CPU, misalnya karena menunggu operasi input/output.

Contoh nyata:

Bayangkan tiga pekerjaan masuk ke sebuah loket pelayanan. Ketika satu pekerjaan mulai dilayani, pekerjaan tersebut diselesaikan terlebih dahulu sebelum pekerjaan berikutnya dipanggil.

Jika pekerjaan pertama membutuhkan waktu lama, pekerjaan lain harus menunggu meskipun hanya membutuhkan waktu singkat.

Kondisi ini menggambarkan kelemahan penjadwalan non-preemptive ketika pekerjaan panjang berada di depan antrean.

B. Preemptive Scheduling

Pada penjadwalan preemptive, sistem operasi dapat menghentikan sementara proses yang sedang berjalan dan memberikan CPU kepada proses lain sesuai aturan algoritma.

Contoh nyata:

Seseorang sedang mengunduh berkas besar. Ketika pengguna menekan tombol untuk membuka aplikasi kalkulator, sistem operasi dapat segera memberikan waktu CPU kepada aplikasi tersebut tanpa harus menunggu unduhan selesai.

Perlu dipahami bahwa operasi unduh umumnya lebih banyak menunggu jaringan dan perangkat I/O. Contoh ini menggambarkan pergantian kesempatan CPU, bukan berarti seluruh aktivitas unduh selalu memakai CPU secara terus-menerus.

Penjadwalan preemptive dapat meningkatkan respons sistem, tetapi membutuhkan pengelolaan pergantian proses yang lebih kompleks dan menimbulkan overhead context switching.

4. First-Come, First-Served (FCFS)

Pengertian

First-Come, First-Served (FCFS), yang dalam materi disebut Pertama Tiba Pertama Dilayani (PTPD), adalah algoritma penjadwalan yang melayani proses berdasarkan urutan kedatangannya.

FCFS menggunakan prinsip antrean FIFO (First In, First Out): proses yang masuk lebih dahulu akan memperoleh layanan lebih dahulu.

Dalam bentuk standar yang dibahas di sini, FCFS bersifat non-preemptive.

Cara kerja

  1. Proses masuk ke antrean siap.

  2. Sistem operasi mengurutkan proses berdasarkan kedatangan.

  3. Proses paling depan mendapatkan CPU.

  4. Proses tersebut berjalan sampai CPU-burst selesai atau proses melepaskan CPU.

  5. CPU kemudian diberikan kepada proses berikutnya.

Contoh nyata

Di sebuah loket administrasi sekolah, siswa dilayani sesuai urutan kedatangan. Siswa yang datang lebih awal memperoleh layanan terlebih dahulu, meskipun urusan administrasinya membutuhkan waktu lebih lama daripada siswa berikutnya.

Simulasi FCFS

Diketahui empat proses berikut.

ProsesArrival Time (AT)Burst Time (BT)
A04
B17
C33
D78

Karena proses A tiba paling awal, urutan pelaksanaan adalah A → B → C → D.

Gantt Chart

0        4               11       14                    22
|   A    |       B        |   C    |         D           |

Perhitungan setiap proses:

ProsesATBTCTTAT = CT − ATWT = TAT − BT
A04440
B1711103
C3314118
D7822157
Jumlah


4018
Rata-rata


104,5

Dengan demikian, rata-rata turnaround time adalah 10 satuan waktu, sedangkan rata-rata waiting time adalah 4,5 satuan waktu.

Perhatikan bahwa proses B tiba pada waktu 1, tetapi baru selesai pada waktu 11. B harus menunggu proses A selesai sebelum memperoleh CPU.

Kelebihan FCFS

  • Sederhana dan mudah diimplementasikan.

  • Urutan pelaksanaan mudah dipahami.

  • Tidak membutuhkan pengaturan prioritas yang rumit.

  • Relatif adil berdasarkan urutan kedatangan.

Kekurangan FCFS

  • Proses pendek dapat menunggu lama di belakang proses panjang.

  • Rata-rata waktu tunggu dapat menjadi tinggi.

  • Respons terhadap pekerjaan interaktif kurang baik.

  • Dapat mengalami convoy effect, yaitu proses-proses pendek tertahan oleh proses panjang di depan antrean.

Kesimpulan: FCFS cocok untuk memahami konsep antrean dan untuk situasi ketika kesederhanaan lebih penting daripada respons yang cepat.

5. Shortest Job Next (SJN) atau Shortest Job First (SJF)

Pengertian

Shortest Job Next (SJN), yang juga dikenal sebagai Shortest Job First (SJF), memilih proses dengan perkiraan kebutuhan waktu CPU paling pendek di antara proses yang telah siap dijalankan.

Dalam bentuk standar non-preemptive, proses yang dipilih akan berjalan sampai CPU-burst-nya selesai atau proses melepaskan CPU.

Cara kerja

  1. Sistem memeriksa proses yang sudah berada dalam antrean siap.

  2. Sistem membandingkan perkiraan burst time proses-proses tersebut.

  3. Proses dengan burst time paling pendek dipilih.

  4. Proses berjalan hingga CPU-burst selesai.

  5. Pemilihan diulang untuk proses yang tersisa.

Penting: SJF tidak selalu menjalankan proses terpendek secara global. Algoritma ini hanya dapat memilih dari proses yang sudah tersedia dan siap ketika keputusan penjadwalan dibuat.

Contoh nyata

Sebuah laboratorium komputer menerima tiga pekerjaan:

  • Pekerjaan A: membuat laporan sederhana, 2 menit.

  • Pekerjaan B: mengolah data besar, 8 menit.

  • Pekerjaan C: menghitung statistik sederhana, 3 menit.

Jika ketiganya sudah tersedia saat CPU kosong dan tidak ada pertimbangan prioritas lain, SJF memilih A, kemudian C, lalu B.

Simulasi SJF

Asumsikan semua proses tiba pada waktu 0.

ProsesATBT
A06
B02
C04

Urutan SJF adalah B → C → A.

0       2           6                   12
|   B   |     C     |         A          |
ProsesBTCTTATWT
B2220
C4662
A612126
Rata-rata

6,672,67

Jika dibandingkan dengan FCFS pada data yang sama, urutan FCFS adalah A → B → C. Rata-rata waiting time FCFS sebesar 4,67 satuan waktu, sedangkan SJF sebesar 2,67 satuan waktu.

Contoh ini menunjukkan bahwa SJF dapat menurunkan rata-rata waktu tunggu apabila seluruh proses tersedia sejak awal dan burst time diketahui.

Kelebihan SJF

  • Dapat menghasilkan rata-rata waiting time yang minimal dalam kondisi klasik tertentu.

  • Menguntungkan ketika banyak pekerjaan pendek.

  • Cocok untuk beban kerja batch yang kebutuhan waktu CPU-nya dapat diperkirakan.

Kekurangan SJF

  • Kebutuhan waktu CPU proses berikutnya tidak selalu diketahui secara pasti.

  • Proses panjang dapat mengalami kelaparan (starvation) apabila terus berdatangan proses pendek.

  • Kurang ideal sebagai satu-satunya algoritma untuk sistem interaktif.

  • Hasilnya bergantung pada proses yang sudah tersedia ketika keputusan dibuat.

Kesimpulan: SJF sangat bermanfaat untuk menjelaskan cara mengoptimalkan waktu tunggu, tetapi memerlukan perkiraan burst time yang memadai.

6. Priority Scheduling

Pengertian

Priority Scheduling adalah algoritma yang memilih proses berdasarkan tingkat prioritas. Proses dengan prioritas lebih tinggi akan dipilih lebih dahulu daripada proses dengan prioritas lebih rendah.

Prioritas dapat ditentukan berdasarkan kebutuhan layanan, batas waktu, jenis pekerjaan, atau kebijakan sistem.

Ada dua bentuk utama:

  • Non-preemptive Priority: Proses yang sedang berjalan tetap menggunakan CPU sampai CPU-burst selesai atau CPU dilepaskan, meskipun proses dengan prioritas lebih tinggi tiba.

  • Preemptive Priority: Proses yang sedang berjalan dapat dihentikan sementara ketika proses dengan prioritas lebih tinggi siap dijalankan.

Perhatikan bahwa angka prioritas tidak memiliki arti universal. Dalam beberapa sistem angka yang lebih kecil berarti prioritas lebih tinggi, sedangkan sistem lain menggunakan aturan berbeda.

Contoh nyata

Dalam sistem layanan digital rumah sakit, proses yang berkaitan dengan sistem pemantauan pasien kritis dapat diberi prioritas lebih tinggi daripada pekerjaan pelaporan rutin.

Contoh ini merupakan ilustrasi kebijakan penjadwalan. Sistem nyata harus dirancang dan diuji dengan mekanisme keselamatan yang sesuai.

Simulasi Priority Scheduling

Asumsikan semua proses tiba pada waktu 0 dan angka prioritas lebih kecil berarti prioritas lebih tinggi. Algoritma yang digunakan adalah non-preemptive.

ProsesBurst TimePrioritas
A53
B31
C24
D42

Urutan pelaksanaan: B → D → A → C.

0       3           7               12      14
|   B   |     D     |       A       |   C   |
ProsesBTPrioritasCTTATWT
B31330
D42773
A5312127
C24141412
Rata-rata


95,5

Kelebihan Priority Scheduling

  • Mendukung penanganan pekerjaan berdasarkan kepentingan.

  • Dapat memberikan respons lebih cepat bagi proses penting.

  • Fleksibel karena prioritas dapat disesuaikan dengan kebijakan sistem.

Kekurangan Priority Scheduling

  • Proses berprioritas rendah berisiko menunggu terlalu lama.

  • Penetapan prioritas yang kurang tepat dapat merugikan proses lain.

  • Perlu kebijakan untuk mengatasi starvation.

Salah satu solusi yang dapat digunakan adalah aging, yaitu meningkatkan prioritas proses secara bertahap selama proses tersebut menunggu.

Kesimpulan: Priority Scheduling sesuai untuk sistem yang membedakan tingkat kepentingan pekerjaan, asalkan pengaturan prioritas dan keadilan dirancang dengan baik.

7. Shortest Remaining Time (SRT)

Pengertian

Shortest Remaining Time (SRT), sering disebut Shortest Remaining Time First (SRTF), adalah versi preemptive dari SJF.

SRT memilih proses siap yang memiliki sisa waktu CPU paling pendek. Jika proses baru datang dengan sisa waktu yang lebih kecil daripada proses yang sedang berjalan, CPU dapat dialihkan kepada proses baru tersebut.

Cara kerja

  1. Sistem memeriksa proses yang siap dijalankan.

  2. Sistem membandingkan sisa burst time seluruh proses yang siap.

  3. Proses dengan sisa waktu paling pendek memperoleh CPU.

  4. Jika proses baru tiba dan memiliki sisa waktu lebih pendek, proses berjalan dapat dihentikan sementara.

  5. Proses yang dihentikan akan kembali ke antrean siap untuk dijadwalkan lagi.

Contoh nyata

Sebuah server sedang menjalankan pekerjaan pengolahan data yang diperkirakan membutuhkan waktu 10 satuan waktu. Kemudian datang pekerjaan singkat yang hanya membutuhkan 2 satuan waktu.

Jika sistem menggunakan SRT dan pekerjaan baru memiliki sisa waktu yang lebih pendek daripada pekerjaan yang sedang berjalan, sistem dapat mendahulukan pekerjaan singkat tersebut.

Simulasi SRT

Diketahui proses berikut:

ProsesArrival TimeBurst Time
A08
B14
C22

Untuk contoh ini, jika terdapat nilai sisa waktu yang sama, diasumsikan proses yang sedang berjalan tetap dipilih.

  • Waktu 0–1: A berjalan.

  • Waktu 1: B tiba; sisa A adalah 7, sedangkan B membutuhkan 4, sehingga B mengambil CPU.

  • Waktu 2: C tiba; sisa B adalah 3, sedangkan C membutuhkan 2, sehingga C mengambil CPU.

  • Waktu 2–4: C berjalan hingga selesai.

  • Waktu 4–7: B melanjutkan proses hingga selesai.

  • Waktu 7–14: A melanjutkan proses hingga selesai.

0   1       2       4           7                       14
| A |   B   |   C   |     B     |           A            |
ProsesATBTCTTATWT
A0814146
B14762
C22420
Rata-rata


7,332,67

Kelebihan SRT

  • Memungkinkan proses pendek yang baru tiba segera memperoleh CPU.

  • Dapat mengurangi rata-rata waktu tunggu dalam kondisi tertentu.

  • Cocok untuk contoh sistem batch yang mengutamakan penyelesaian pekerjaan pendek.

Kekurangan SRT

  • Membutuhkan perkiraan burst time atau sisa waktu CPU.

  • Proses panjang dapat mengalami starvation.

  • Pergantian proses lebih sering dapat menambah overhead.

  • Perhitungan dan implementasinya lebih kompleks daripada SJF non-preemptive.

Kesimpulan: SRT memberi kesempatan kepada pekerjaan yang lebih dekat ke penyelesaian, tetapi membutuhkan informasi waktu proses dan pengelolaan preemption.

8. Round Robin (RR)

Pengertian

Round Robin adalah algoritma penjadwalan preemptive yang memberikan setiap proses jatah waktu CPU yang disebut time quantum atau kuantum waktu.

Jika proses belum selesai ketika kuantumnya habis, sistem operasi menghentikan sementara proses tersebut dan menempatkannya kembali di belakang antrean siap. Proses berikutnya kemudian memperoleh kesempatan menggunakan CPU.

Round Robin banyak digunakan sebagai model pembelajaran penjadwalan sistem interaktif karena membagi kesempatan CPU secara bergiliran.

Contoh nyata

Bayangkan tiga mahasiswa menggunakan satu komputer laboratorium secara bergantian. Setiap mahasiswa diberi waktu dua menit untuk mengerjakan tugas.

Jika waktu dua menit habis sebelum tugas selesai, mahasiswa tersebut kembali ke antrean dan menunggu giliran berikutnya. Dengan cara ini, setiap mahasiswa memperoleh kesempatan menggunakan komputer.

Simulasi Round Robin

Asumsikan semua proses tiba pada waktu 0, dengan kuantum waktu sebesar 2 satuan waktu.

ProsesBurst Time
A5
B3
C1

Urutan pelaksanaan:

  • A berjalan 0–2, tersisa 3.

  • B berjalan 2–4, tersisa 1.

  • C berjalan 4–5 dan selesai.

  • A berjalan 5–7, tersisa 1.

  • B berjalan 7–8 dan selesai.

  • A berjalan 8–9 dan selesai.

0       2       4   5       7   8   9
|   A   |   B   | C |   A   | B | A |
ProsesBTCTTATWT
A5994
B3885
C1554
Rata-rata

7,334,33

Pada simulasi ini, semua proses tiba pada waktu 0 sehingga turnaround time sama dengan completion time.

Pengaruh pemilihan time quantum

  • Kuantum terlalu besar: Round Robin mendekati FCFS karena setiap proses dapat berjalan lama sebelum dialihkan.

  • Kuantum terlalu kecil: Proses lebih sering berganti, sehingga overhead context switching dapat meningkat.

  • Kuantum yang sesuai: Membantu menyeimbangkan respons pengguna dan biaya pergantian proses.

Kelebihan Round Robin

  • Memberikan kesempatan CPU secara bergiliran.

  • Respons awal untuk proses yang siap dapat menjadi lebih baik.

  • Relatif adil jika proses berada pada antrean yang sama dan kuantum diterapkan konsisten.

  • Cocok untuk mempelajari penjadwalan sistem interaktif.

Kekurangan Round Robin

  • Hasilnya sangat dipengaruhi nilai kuantum.

  • Waktu penyelesaian total dapat lebih panjang daripada algoritma tertentu yang mengutamakan pekerjaan pendek.

  • Pergantian proses menimbulkan overhead.

  • Keadilan tetap bergantung pada kebijakan antrean dan prioritas yang diterapkan.

Kesimpulan: Round Robin merupakan pilihan penting ketika sistem perlu membagi waktu CPU secara bergiliran, terutama untuk menjelaskan kebutuhan respons pada lingkungan interaktif.

9. Multilevel Queue Scheduling

Pengertian

Multilevel Queue Scheduling atau penjadwalan antrean bertingkat membagi proses ke dalam beberapa antrean berdasarkan kategori atau karakteristik tertentu.

Sebagai contoh, proses dapat dikelompokkan menjadi:

  • Proses sistem.

  • Proses interaktif.

  • Proses batch.

  • Proses latar belakang.

Setiap antrean dapat menggunakan algoritma penjadwalan yang berbeda. Misalnya, antrean interaktif menggunakan Round Robin, sedangkan antrean batch menggunakan FCFS.

Selain mengatur proses di dalam antrean, sistem juga harus menentukan bagaimana CPU dibagi di antara antrean. Pembagian ini dapat menggunakan prioritas tetap atau jatah waktu tertentu.

Contoh nyata

Bayangkan sebuah kantor pelayanan dengan tiga antrean:

  1. Antrean layanan prioritas.

  2. Antrean layanan reguler.

  3. Antrean pengurusan dokumen yang tidak mendesak.

Masing-masing antrean memiliki aturan pelayanan sendiri. Pengelola juga menetapkan aturan untuk menentukan kapan antrean prioritas atau reguler dilayani.

Prinsip ini menyerupai Multilevel Queue Scheduling, yaitu mengelompokkan pekerjaan berdasarkan jenis layanan dan mengatur penggunaan sumber daya untuk setiap kelompok.

Kelebihan

  • Mengelompokkan proses berdasarkan kebutuhan.

  • Memungkinkan penggunaan algoritma berbeda untuk kategori berbeda.

  • Memudahkan penerapan kebijakan layanan khusus.

Kekurangan

  • Proses yang berada dalam antrean berprioritas rendah dapat menunggu lama.

  • Pengelompokan proses harus dirancang dengan tepat.

  • Kebijakan pembagian CPU antarantrean dapat menjadi kompleks.

Multilevel Queue dan Multilevel Feedback Queue

Keduanya perlu dibedakan.

Multilevel Queue menempatkan proses dalam antrean tertentu berdasarkan kategori yang ditetapkan; perpindahan antarantrean umumnya tidak menjadi mekanisme utama.

Multilevel Feedback Queue (MLFQ) memungkinkan proses berpindah antarantrean berdasarkan perilakunya, penggunaan CPU, atau aturan penjadwalan. Karena itu, MLFQ lebih fleksibel, tetapi lebih rumit untuk dikonfigurasi.

10. Perbandingan Enam Algoritma Penjadwalan

AlgoritmaDasar pemilihanBentuk standarKelebihan utamaKeterbatasan utama
FCFSUrutan kedatanganNon-preemptiveSederhanaProses pendek dapat menunggu lama
SJF/SJNBurst time terpendekNon-preemptiveRata-rata waiting time dapat rendahMembutuhkan perkiraan burst time
PriorityTingkat prioritasPreemptive atau non-preemptiveMendahulukan pekerjaan pentingRisiko starvation
SRT/SRTFSisa waktu terpendekPreemptiveMengutamakan pekerjaan dengan sisa waktu pendekPerhitungan lebih kompleks
Round RobinGiliran dan time quantumPreemptivePembagian CPU bergiliranBergantung pada kuantum
Multilevel QueueKategori antreanBergantung kebijakanMemisahkan kelas prosesProses dapat tertahan pada antrean tertentu

Perlu diingat bahwa bentuk algoritma di atas adalah bentuk standar untuk pembelajaran. Sistem operasi modern dapat menggunakan mekanisme yang lebih kompleks, termasuk penjadwalan berbasis prioritas dinamis dan kebijakan khusus untuk jenis beban kerja tertentu.

11. Bagaimana Sistem Operasi Memilih Algoritma?

Pemilihan algoritma tidak hanya didasarkan pada kecepatan penyelesaian satu proses. Sistem operasi perlu mempertimbangkan beberapa tujuan sekaligus.

A. Sistem batch

Sistem batch memproses pekerjaan yang dikumpulkan untuk dijalankan tanpa interaksi terus-menerus dari pengguna.

SJF dapat menjadi pendekatan yang menarik jika perkiraan burst time tersedia dan rata-rata waktu tunggu menjadi pertimbangan penting.

B. Sistem interaktif

Sistem interaktif harus merespons tindakan pengguna dengan cepat.

Round Robin merupakan contoh algoritma yang baik untuk mempelajari pembagian kesempatan CPU secara bergiliran. Namun, implementasi sistem operasi nyata dapat menggunakan kebijakan yang lebih canggih.

C. Sistem dengan prioritas

Sistem yang harus membedakan kepentingan pekerjaan dapat menerapkan penjadwalan berbasis prioritas.

Akan tetapi, prioritas tinggi perlu dikelola dengan hati-hati agar proses lain tidak mengalami kelaparan.

D. Sistem dengan beragam jenis pekerjaan

Multilevel Queue dapat membantu memisahkan proses berdasarkan kelas pekerjaan, misalnya proses sistem, interaktif, dan batch.

Tujuan akhirnya adalah menemukan keseimbangan antara throughput, waktu tunggu, waktu tanggap, keadilan, serta overhead sistem.

12. Latihan untuk Mahasiswa Informatika

Untuk memperdalam pemahaman, kerjakan latihan berikut.

Diketahui tiga proses dengan data:

ProsesArrival TimeBurst Time
P105
P213
P321

Tugas:

  1. Buat Gantt Chart menggunakan FCFS.

  2. Hitung completion time, turnaround time, dan waiting time setiap proses.

  3. Hitung rata-rata turnaround time dan waiting time.

  4. Ulangi perhitungan dengan SJF non-preemptive.

  5. Bandingkan hasil kedua algoritma.

  6. Jelaskan mengapa urutan kedatangan dan burst time dapat menghasilkan waktu tunggu yang berbeda.

Petunjuk: Jangan menjalankan proses yang belum tiba. Untuk setiap algoritma, tentukan dahulu proses yang tersedia dan aturan pemilihan yang berlaku pada saat CPU siap digunakan.

13. Kesimpulan

Algoritma penjadwalan proses merupakan bagian penting dari sistem operasi karena menentukan bagaimana CPU dibagikan kepada berbagai proses yang membutuhkan sumber daya komputasi.

FCFS mengutamakan urutan kedatangan, SJF memilih burst time terpendek, Priority Scheduling mendahulukan proses berdasarkan prioritas, SRT memilih sisa waktu terpendek, Round Robin memberikan giliran CPU berdasarkan kuantum waktu, sedangkan Multilevel Queue mengelompokkan proses ke dalam beberapa antrean.

Setiap algoritma memiliki kelebihan dan keterbatasan. FCFS mudah diterapkan, SJF dan SRT dapat mengurangi waktu tunggu dalam kondisi tertentu, Priority Scheduling mendukung pekerjaan penting, Round Robin membantu pembagian CPU secara bergiliran, dan Multilevel Queue memungkinkan pengelolaan berbagai kelas proses.

Bagi mahasiswa Informatika, memahami algoritma penjadwalan tidak cukup hanya dengan menghafal definisi. Mahasiswa perlu berlatih menyusun Gantt Chart, menghitung waiting time dan turnaround time, serta membandingkan hasil beberapa algoritma menggunakan data proses yang sama.

Dengan demikian, mahasiswa dapat memahami bagaimana teori sistem operasi digunakan untuk mengelola sumber daya komputer secara efisien.

Referensi

  1. Silberschatz, A., Galvin, P. B., dan Gagne, G. Operating System Concepts. Wiley.

  2. Tanenbaum, A. S., dan Bos, H. Modern Operating Systems. Pearson.

  3. Stallings, W. Operating Systems: Internals and Design Principles. Pearson.

  4. Maulana, Muhammad Sony. Modul Sistem Operasi. Pontianak, 17 September 2019.

0 Komentar