Sistem operasi menggunakan berbagai penjadwal untuk penjadwalan proses yang dijelaskan di bawah ini.
1. Penjadwal jangka panjang
Penjadwal jangka panjang juga dikenal sebagai penjadwal pekerjaan. Itu memilih proses dari kumpulan (memori sekunder) dan menyimpannya dalam antrian siap yang dipertahankan di memori utama.
Penjadwal Jangka Panjang terutama mengontrol tingkat Multiprogramming. Tujuan dari penjadwalan jangka panjang adalah untuk memilih perpaduan sempurna antara proses terikat IO dan proses terikat CPU di antara pekerjaan yang ada di kumpulan.
Jika penjadwal pekerjaan memilih lebih banyak proses yang terikat IO, maka semua pekerjaan mungkin berada dalam keadaan terblokir sepanjang waktu dan CPU akan tetap menganggur hampir sepanjang waktu. Ini akan mengurangi tingkat Multiprogramming. Oleh karena itu, pekerjaan penjadwalan jangka panjang sangat kritis dan dapat mempengaruhi sistem untuk waktu yang sangat lama.
2. Penjadwal jangka pendek
Penjadwal jangka pendek juga dikenal sebagai penjadwal CPU. Itu memilih salah satu Pekerjaan dari antrian siap dan mengirim ke CPU untuk dieksekusi.
Algoritma penjadwalan digunakan untuk memilih pekerjaan mana yang akan dikirim untuk eksekusi. Pekerjaan penjadwalan jangka pendek bisa sangat kritis dalam arti bahwa jika memilih pekerjaan yang waktu ledakan CPU-nya sangat tinggi maka semua pekerjaan setelah itu, harus menunggu dalam antrian siap untuk waktu yang sangat lama.
Masalah ini disebut kelaparan yang mungkin timbul jika penjadwal jangka pendek membuat beberapa kesalahan saat memilih pekerjaan.
3. Penjadwal jangka menengah
Penjadwalan jangka menengah menangani proses yang ditukar. Jika proses keadaan berjalan memerlukan waktu IO untuk penyelesaiannya, maka ada kebutuhan untuk mengubah keadaannya dari berjalan menjadi menunggu.
Penjadwal jangka menengah digunakan untuk tujuan ini. Ini menghapus proses dari keadaan berjalan untuk memberi ruang bagi proses lainnya. Proses seperti itu adalah proses yang ditukar dan prosedur ini disebut swapping. Penjadwal jangka menengah bertanggung jawab untuk menangguhkan dan melanjutkan proses.
Ini mengurangi tingkat multiprogramming. Pertukaran diperlukan untuk memiliki perpaduan proses yang sempurna dalam antrian siap.
Process Queues
Sistem Operasi mengelola berbagai jenis antrian untuk setiap status proses. PCB yang terkait dengan proses juga disimpan dalam antrian dengan status yang sama. Jika Proses dipindahkan dari satu keadaan ke keadaan lain maka PCB-nya juga diputuskan dari antrian yang sesuai dan ditambahkan ke antrian keadaan lain di mana transisi dilakukan.
Ada antrian berikut yang dikelola oleh sistem Operasi.
1. Antrian Pekerjaan
Saat memulai, semua proses disimpan dalam antrian pekerjaan. Itu dipertahankan dalam memori sekunder. Penjadwal jangka panjang (Job scheduler) memilih beberapa pekerjaan dan menempatkannya di memori utama.
2. Antrian Siap
Antrian siap dipertahankan di memori utama. Penjadwal jangka pendek mengambil pekerjaan dari antrian siap dan mengirim ke CPU untuk dieksekusi.
3. Menunggu Antrian
Ketika proses memerlukan beberapa operasi IO untuk menyelesaikan eksekusinya, OS mengubah status proses dari berjalan menjadi menunggu. Konteks (PCB) yang terkait dengan proses disimpan di antrian tunggu yang akan digunakan oleh Prosesor saat proses menyelesaikan IO.
Berbagai Kali terkait Proses
1. Waktu Kedatangan
Waktu dimana proses masuk ke dalam ready queue disebut waktu kedatangan.
2. Waktu Ledakan
Jumlah total waktu yang dibutuhkan oleh CPU untuk menjalankan seluruh proses disebut Burst Time. Ini belum termasuk waktu tunggu. Menghitung waktu eksekusi untuk suatu proses bahkan sebelum mengeksekusinya membingungkan sehingga masalah penjadwalan berdasarkan waktu burst tidak dapat diimplementasikan dalam kenyataan.
3. Waktu Penyelesaian
Waktu di mana proses memasuki keadaan penyelesaian atau waktu di mana proses menyelesaikan eksekusinya, disebut waktu penyelesaian.
4. Waktu penyelesaian
Jumlah total waktu yang dihabiskan oleh proses dari kedatangannya hingga penyelesaiannya, disebut waktu penyelesaian.
5. Waktu Menunggu
Jumlah total waktu proses menunggu CPU ditugaskan disebut waktu tunggu.
6. Waktu Respons
Selisih antara waktu kedatangan dan waktu dimana proses pertama kali mendapatkan CPU disebut Response Time.
Penjadwalan CPU
Dalam sistem uniprogramming seperti MS DOS, ketika sebuah proses menunggu operasi I/O selesai, CPU tetap menjadi idola. Ini adalah overhead karena membuang-buang waktu dan menyebabkan masalah kelaparan. Namun, Dalam sistem Multiprogramming, CPU tidak diam selama waktu tunggu Proses dan mulai menjalankan proses lainnya. Sistem Operasi harus menentukan proses mana yang akan diberikan CPU.
Dalam sistem Multiprogramming, sistem Operasi menjadwalkan proses pada CPU untuk memanfaatkannya secara maksimal dan prosedur ini disebut penjadwalan CPU. Sistem Operasi menggunakan berbagai algoritma penjadwalan untuk menjadwalkan proses.
Ini adalah tugas penjadwal jangka pendek untuk menjadwalkan CPU untuk jumlah proses yang ada di Job Pool. Setiap kali proses yang berjalan meminta beberapa operasi IO maka penjadwal jangka pendek menyimpan konteks proses saat ini (juga disebut PCB) dan mengubah statusnya dari berjalan menjadi menunggu. Selama ini, proses dalam keadaan menunggu; Penjadwal jangka pendek mengambil proses lain dari ready queue dan menugaskan CPU ke proses ini. Prosedur ini disebut pengalihan konteks.
Apa yang disimpan di Blok Kontrol Proses?
Sistem Operasi mempertahankan blok kontrol proses selama masa proses. Blok kontrol proses dihapus ketika proses dihentikan atau dimatikan. Ada informasi berikut yang disimpan di blok kontrol proses dan berubah dengan keadaan proses.

Mengapa kita membutuhkan Penjadwalan?
Dalam Multiprogramming, jika penjadwal jangka panjang memilih lebih banyak proses yang terikat I/O maka sebagian besar waktu, CPU tetap menjadi idola. Tugas sistem operasi adalah mengoptimalkan pemanfaatan sumber daya.
Jika sebagian besar proses yang sedang berjalan mengubah statusnya dari berjalan menjadi menunggu, maka selalu ada kemungkinan kebuntuan dalam sistem. Oleh karena itu untuk mengurangi overhead ini, OS perlu menjadwalkan pekerjaan untuk mendapatkan pemanfaatan CPU yang optimal dan untuk menghindari kemungkinan kebuntuan.
Algoritma Penjadwalan di OS (Sistem Operasi)
Ada berbagai algoritma yang digunakan oleh Sistem Operasi untuk menjadwalkan proses pada prosesor dengan cara yang efisien.
Tujuan Algoritma Penjadwalan
- Pemanfaatan CPU maksimum
- Alokasi tarif CPU
- Hasil maksimal
- Waktu pengerjaan minimal
- Waktu tunggu minimal
- Waktu respons minimal
Ada algoritma berikut yang dapat digunakan untuk menjadwalkan pekerjaan.
1. First Come First Serve
Ini adalah algoritma paling sederhana untuk diterapkan. Proses dengan waktu kedatangan minimal akan mendapatkan CPU terlebih dahulu. Semakin sedikit waktu kedatangan, semakin cepat proses mendapatkan CPU. Ini adalah jenis penjadwalan non-preemptive.
2. Putaran Robin
Dalam algoritma penjadwalan Round Robin, OS mendefinisikan kuantum waktu (slice). Semua proses akan dieksekusi dengan cara siklik. Setiap proses akan mendapatkan CPU untuk sejumlah kecil waktu (disebut time quantum) dan kemudian kembali ke ready queue untuk menunggu giliran berikutnya. Ini adalah jenis penjadwalan preemptive.
3. Pekerjaan Terpendek Pertama
Pekerjaan dengan waktu burst terpendek akan mendapatkan CPU terlebih dahulu. Semakin sedikit waktu burst, semakin cepat proses mendapatkan CPU. Ini adalah jenis penjadwalan non-preemptive.
4. Sisa waktu tersingkat terlebih dahulu
Ini adalah bentuk preemptive dari SJF. Dalam algoritme ini, OS menjadwalkan Job sesuai dengan sisa waktu eksekusi.
5. Penjadwalan berdasarkan prioritas
Dalam algoritma ini, prioritas akan diberikan pada setiap proses. Semakin tinggi prioritasnya, semakin cepat proses mendapatkan CPU. Jika prioritas kedua proses sama maka akan dijadwalkan sesuai dengan waktu kedatangannya.
6. Rasio Respon Tertinggi Selanjutnya
Pada Algoritma penjadwalan ini, proses dengan rasio respon tertinggi akan dijadwalkan selanjutnya. Ini mengurangi kelaparan dalam sistem.
Jangan lupa untuk terus berkunjung dan mengikuti update terbarunya dari blog
arahinfotech.com, Oh iya lupa, jika Sahabat memiliki tips-tips yang lebih bagus dari tips di atas, boleh dituliskan dimari caranya kelik menu bar lalu kelik kerja sama scrool kirim artikel. Selain itu juga, mohon dishare ketemen-temen atau keluarga jika memang artikel ini sangatlah bermanfaat untuk Sahabat.