Scheduling Pada OS
Nama : Muhammad Abel Jollando
NIM : 2005551073
Matakuliah : Network Operating System
Dosen : I Putu Agus Eka Pratama, S.T., M.T.
TEKNOLOGI INFORMASI/TEKNIK/UNIVERSITAS UDAYANA
Abstrak :
Mata kuliah Network Operating System merupakan matakuliah yang membahas seputar sistem operasi yang digunakan dalam dunia jaringan komputer. Dalam mata kuliah ini, mahasiswa dan dosen membahas seputar konsep dasar dari sistem operasi, evolusi sistem operasi, fungsionalitas sistem operasi, konsep dasar Network Operating System, infrastruktur pendukung Network Operating System, karakteristik dari Network Operating System, jenis-jenis Network Operating System, serta penggunaan Network Operating System dalam jaringan komputer.
Pendahuluan :
Apa itu scheduling? mungkin kata scheduling ini cukup akrab kita dengar jika kita sering mempelajari Bahasa Inggris. Selain ada di dalam Bahasa inggris, tahukah kamu bahwa sistem operasi komputer juga memiliki proses yang dinamakan scheduling juga?
Yaps, scheduling merupakan satu atau beberapa buah aturan, mekanisme, dan prosedur di dalam sistem operasi (melibatkan kernel, aplikasi, dan proses) terkait dengan urutan kerja yang dilakukan oleh komputer dan sistem komputer. Scheduling ini sendiri selalu terdapat di berbagai sistem operasi yang bertujuan untuk mengelola proses agar tidak terjadi hal-hal yang tidak diinginkan seperti bottleneck.
Kenapa perlu penjadwalan pada sistem operasi? :
Seperti yang sudah kita bahas pada artikel sebelumnya, kita tahu bahwa kernel (inti sistem oeprasi) memiliki utilitas, fungsi-fungsi utama, dan dukungan terhadap software dan hardware (sesuai dengan arsitektur komputer 32-bit maupun 64-bit), kemudian kita tahu juga bahwa adanya proses yang berjalan pada sistem operasi. Inilah alasan mengapa scheduling atau penjadwalan itu diperlukan agar setiap proses dan fungsi-fungsi utama dalam sistem operasi dapat berjalan dengan kinerja yang baik, dan memperkecil kemungkinan kegagalan saat sistem operasi berjalan. Selain itu, penjadwalan ini ada juga karena dalam sistem operasi ada istilah multi-programming.
Multi-Programming, apa itu? :
Multi-programming adalah kemampuan sistem operasi untuk menjalankan 2 aplikasi atau lebih secara bersamaan, menghasilkan sejumlah proses. Sedangkan multi-processing, adalah kemampuan penanganan 2 proses atau lebih secara bersamaan. Perbedaannya adalah multi-programming lebih ditekankan di software, sedangkan multi-processing lebih ditekankan pada hardware.
Peran penjadwalan :
- Memaksimalkan throughput.
- Memaksimalkan kinerja waktu processor.
- Efisiensi process.
- Keadilan (fairness) pada semua job dan aplikasi.
- Meminimalkan waktu tanggap (time respond).
- Optimalisasi sumber daya atau resources.
4 Jenis Penjadwalan :
Terdapat 4 jenis penjadwalan yang ada pada sistem operasi. Dimana proses berjalannya adalah sebagai berikut :
Gambar 1 Scheduling
- Long Term Scheduling, yaitu penjadwalan dengan menambahkan pool untuk process yang akan dieksekusi.
- Medium Term Scheduling, yaitu penjadwalan dengan menambahkan jumlah dari process baik secara penuh maupun parsial di dalam memori utama.
- Short Term Scheduling, yaitu penjadwalan dengan memilih process mana yang akan dieksekusi terlebih dahulu oleh processor dalam waktu singkat.
- I/O Scheduling, yaitu penjadwalan dengan memilih process mana yang tertunda dan memungkinkan untuk dilanjutkan kembali berdasarkan ketersediaan perangkat I/O.
Penggambaran antrian :
Berikut ini penggamabaran antrian (queue) pada sistem scheduling (penjadwalan)
Gambar 2 Queue Scheduling.
Penggambaran antrian :

Algoritma Scheduling :
Ada banyak sekali agoritma scheduling di dalam sisem operasi, namun akan dibahas yang terpenting saja (fundamental dan digunakan di banyak sistem operasi : windows, linux, mac, free bsd, android). Algoritma scheduling membantu alur scheduling pada sistem serta membantu programmer di dalam pengembangan aplikasi terkait dengan sistem operasi.
Berikut ini adalah macam-macam algoritma scheduling :
- Round Robin
- Menggunakan konsep antrian (queue). Setiap proses memiliki time quantum untuk menandai waktu dari proses yaitu apabila time quantum selesai, maka proses juga akan selesai. Setiap proses diberi nilai sama untuk time quantum yaitu 1/n. Time Quantum juga tidak boleh terlalu besar maupun terlalu kecil, dan harus pas. Jika terlalu kecil, maka proses tidak dapat selesai dalam satu quantum. Namun, jika terlalu besar, maka nanti algoritma akan berubah menjadi FCFS (First Come First Serve). Nilai ideal dari quantum sendiri adalah sebesar 80 dengan skala 0-100.
- First In First Out (FIFO)
- Process yang lebih dahulu datang akan segera dieksekusi. Bagaimana jika
ada process panjang dan process pendek? Tetap sesuai waktu kedatangan,
oleh karena itu algoritma ini merugikan process pendek.
- Shortest Job First (SJF)
- Memperbaiki FIFO Process, pada algoritma ini proses yang lebih pendek
akan didahulukan / diprioritaskan algoritma ini akan melakukan cek pada
masing – masing process.
Referensi :
[1] I Putu Agus Eka Pratama,“PDF Matakuliah Network Operating System Pertemuan 3 : Scheduling,”2022.
Komentar
Posting Komentar