Apa itu Scheduling?

Nama : I Nyoman Tri Aditya
Nim : 170555117
Mata Kuliah : Network Operating System
Dosen : I Putu Agus Eka Pratama
Jurusan Teknologi Informasi, Fakultas Teknik, Universitas Udayana

Scheduling

Scheduling adalah 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. Scheduling sering diterapkan sehingga membuat semua sumber daya komputer sibuk (seperti dalam load balancing), memungkinkan banyak pengguna untuk berbagi sumber daya sistem secara efektif, atau untuk mencapai target kualitas layanan. Scheduling adalah dasar untuk perhitungan itu sendiri, dan merupakan bagian intrinsik dari model eksekusi sistem komputer; konsep penjadwalan memungkinkan untuk melakukan multitasking komputer dengan satu unit pemrosesan pusat (CPU).
Scheduling merupakan bagian penting dari sistem operasi Multiprogramming. Sistem operasi semacam itu memungkinkan lebih dari satu proses untuk dimuat ke dalam memori yang dapat dieksekusi pada suatu waktu dan proses yang dimuat berbagi CPU menggunakan pengganda waktu.

Multiprogramming

Multiprogramming adalah kemampuan sistem operasi untuk menjalankan 2 aplikasi atau lebih secara bersama – sama, menghasilkan sejumlah proses. Sedangkan multiprocessing adalah kemampuan penanganan 2 process atau lebih secara bersama – sama. Perbedaannya adalah multiprogramming lebih ditekankan di sisi software sedangkan multiprocessing lebih ditekankan di sisi hardware.
OS memelihara semua PCB dalam Process Scheduling Queues. OS mempertahankan scheduling terpisah untuk setiap status proses dan PCB dari semua proses dalam status eksekusi yang sama ditempatkan dalam scheduling yang sama. Ketika status suatu proses diubah, PCB-nya tidak terhubung dari scheduling saat ini dan dipindahkan ke scheduling status baru. Sistem Operasi mempertahankan antrian penjadwalan proses penting berikut -
  • Job queue - Scheduling ini menyimpan semua proses dalam sistem.
  • Ready queue - Scheduling ini menyimpan satu set semua proses yang berada di memori utama, siap dan menunggu untuk dieksekusi. Proses baru selalu dimasukkan dalam antrian ini.
  • Device queue - Proses yang diblokir karena tidak tersedianya perangkat I / O merupakan antrian ini. 
Peran Penjadwalan
  1. Memaksimalkan throughput.
  2. Memaksimalkan kinerja dan waktu processor.
  3. Efsiensi process.
  4. Keadilan (fairness) pada semua job dan aplikasi
  5. Meminimalkan waktu tanggap (time respond).
  6. Optimalisasi sumber daya (resource).


Jenis Penjadwalan

Ada 4 jenis penjadwalan antara lain;

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 yang dapat dilanjutkan kembali berdasarkan ketersediaan perangkat I/O.
Berikut ini penggambaran antrian (queue) pada sistem scheduling (penjadwalan) 

Queue Scheduling

Berikut tingkatan (leveling) dalam system scheduling (penjadwalan)

Tingkatan Scheduling


Algoritma Scheduling

1. Round Robin
Menggunakan konsep antrian (queue). Setiap process memiliki time quantum untuk menandai waktu dari process yaitu apabila time quantum selesai maka proses selesai. Setiap proses diberi nilai yang sama untuk time quantum yaitu 1/n.
Time quantum jangan terlalu kecil (process tidak dapat selesai dalam 1 quantum), jangan juga terlalu besar (akan menjadi FCFS/First Come First Serve). Nilai ideal time quantum adalah 80 (dari skala 0 - 100)
2. 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.
3. 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
- I Putu Agus Eka Pratama,“PPT Matakuliah Network Operating System Pertemuan 3 : Scheduling,”2018.



Komentar

Postingan populer dari blog ini

Flowchart

Tipe Data dan karakter khusus C++

Instalasi dan Review Linux Ubuntu 16.04 LTS