27th Feb 2022
3 min read
Selamat datang dan selamat kembali lagi dalam artikel pembahasan terkait Network Operating System (NOS). Pada kesempatan kali ini, saya akan membahas sedikit tentang peran dan penjelasan dari scheduling pada sistem operasi. Oleh karena itu mari kita awali dengan pengenalan terkait Scheduling itu sendiri.
Scheduling merupakan satu atau beberapa buah aturan, mekanisme, dan prosedur di dalam sistem operasi (melibatkan kernel, aplikasi, process) terkait dengan urutan kerja yang dilakukan oleh komputer dan sistem computer. Scheduling ada di dalam semua sistem operasi apapun. Hal ini sangat diperlukan karena pada saat ini komputer berbasiskan multiprogramming.
Multiprogramming merupakan kemampuan sistem operasi untuk menjalankan 2 aplikasi atau lebih secara bersama – sama, menghasilkan sejumlah proses. Multiprocessing merupakan kemampuan penanganan 2 process atau lebih secara bersama – sama. Multiprogramming dengan Multiprocessing memiliki perbedaan yaitu :
Jadi ada lebih dari satu pemrosesan pada satu waktu. Tanenbaum menyebut bagian pemilihan sistem operasi sebagai penjadwal dan algoritma yang digunakan adalah algoritma penjadwalan.
Berikut ini adalah peran penjadwalan dalam Network Operating System (NOS) :
Periksa waktu pemrosesan (waktu pemrosesan/waktu eksekusi) dari setiap pekerjaan, letakkan yang terpendek di antrian sebelumnya dan yang terpanjang di belakang. Algoritma penjadwalan ini memecahkan masalah algoritma penjadwalan Shortest Job First ketika ada beberapa proses dengan waktu pemrosesan yang lama, tetapi antrian ditempatkan terlebih dahulu.
Fokusnya adalah "waktu yang dibutuhkan untuk mengeksekusi", bukan waktu eksekusinya. Prosesnya seperti ini, tugas ditempatkan dalam berapa banyak antrian, fokus pada berapa banyak waktu yang dibutuhkan, dan ketika waktu habis mereka dibebaskan (release), dan metode ini berjalan sampai semua proses selesai. Tetapi bagaimana jika ada kerugian dan jika tidak dilakukan? Kemudian Anda dapat menggunakan algoritma Round Robin (RR).
Highest response ratio next adalah algoritma pemrosesan yang berfokus pada proses dengan tingkat respons tertinggi. Untuk bisa mendapatkan tingkat respons menggunakan rumus Rasio = (waktu tunggu + waktu_layanan_yang diharapkan) / (waktu_layanan_perkiraan). Jadi, dalam algoritma ini, proses kecil memberikan persentase yang tinggi, sehingga proses memiliki prioritas di atas CPU. Berikut ini adalah contoh dari algoritma scheduling HRRN.
Pada algoritma penjadwalan Shortest Remaining Time (SRT), proses dengan total waktu eksekusi terpendek langsung diproses tanpa menunggu proses yang sedang berjalan. Jika waktu eksekusi proses yang tersisa lebih pendek dari proses lainnya, proses yang berjalan sebelumnya akan di-requeued. Berikut ini adalah contoh dari algoritma scheduling SRT.
Pada praktik kali ini, saya akan mempraktikan untuk melihat list dari cronjob yang terdaftar pada sistem operasi linux. Berikut ini adalah contoh dari cronjob yang ada pada sistem operasi linux :
Pada gambar di atas, adalah list cronjob pada sistem operasi linux yang akan berjalan setiap harinya. untuk mengeceknya dapat menggunakan command :
ls -lah /etc/cron.daily
Pada gambar di atas, adalah list cronjob pada sistem operasi linux yang akan berjalan setiap minggunya. untuk mengeceknya dapat menggunakan command :
ls -lah /etc/cron.weekly
Pada gambar di atas, adalah list cronjob pada sistem operasi linux yang akan berjalan setiap bulannya. untuk mengeceknya dapat menggunakan command :
ls -lah /etc/cron.monthly
Jika kamu melihat flag -lah
maka artinya adalah sebagai berikut :
Sekian informasi yang dapat saya sampaikan, mohon maaf apabila terdapat kesalahan penulisan yang tidak disengaja. Akhir kata saya ucapkan terimakasih! 😊