Rabu, 28 Februari 2018

Pertemuan III: Scheduling (Penjadwalan)


Nama               : Ida Ayu Shinta Dewi Paramitha
NIM                 : 1605551003
Dosen              : I Putu Agus Eka Pratama ST., MT.
Mata Kuliah     : Network Operating System
Kampus           : Program Studi Teknologi Informasi, Fakultas Teknik, Universitas Udayana.

Pertemuan ketiga membahas mengenai penjadwalan atau scheduling dan bagaimana peranannya terhadap sistem operasi.
  


Scheduling atau penjadwalan adalah satu atau beberapa buah aturan, mekanisme, dan prosedur di dalam sistem operasi, yang melibatkan kernel, aplikasi, process, terkait dengan urutan kerja yang dilakukan oleh komputer dan sistem komputer. Scheduling ada di setiap sistem operasi.

Mengapa ada scheduling?
Scheduling merupakan hal yang penting dan berkaitan dengan beberapa hal berikut.
1.  Kernel, yang merupakan inti sistem operasi, memiliki utilitas, fungsi-fungsi utama, dan dukungan terhadap software dan hardware sesuai dengan arsitektur komputernya masing-masing.
2.     Proses pada sistem operasi, di mana kernel memiliki peran di dalamnya.
3.     Multiprogramming pada sistem operasi

Multiprogramming adalah kemampuan sistem operasi untuk menjalankan 2 aplikasi atau lebih secara bersama-sama dan menghasilkan sejumlah proses. Multiprogramming lebih menekankan pada sisi software.

Sedangkan multiprocessing adalah kemampuan penanganan 2 proses atau lebih secara bersama-sama. Multiprocessing lebih menekankan pada sisi hardware.

Peran Scheduling
Konsep penjadwalan atau scheduling memiliki beberapa peranan dalam sistem operasi, antara lain sebagai berikut.
1.     Memaksimalkan throughput
2.     Memaksimalkan kinerja dan waktu processor
3.     Efisiensi process
4.     Keadilan pada semua aplikasi dan proses yang dijalankan
5.     Meminimalkan waktu tanggan (time respond)
6.     Optimalisasi sumber daya (resource)

Jenis Scheduling
Ada empat jenis konsep penjadwalan atau scheduling, yaitu:
1.     Long Term Scheduling
Jenis ini merupakan penjadwalan dengan menambahkan ruang temporari (pool) untuk proses yang akan dieksekusi.
2.     Medium Term Scheduling
Medium term scheduling merupakan penjadwalan dengan menambahkan jumlah dari proses baik secara penuh maupun parsial dalam memori utama.
3.     Short Term Scheduling
Short term scheduling merupakan penjadwalan dengan memilih proses mana yang kan diekskusi terlebih dahulu oleh proses dalam waktu singkat.
4.     I/O Scheduling
Jenis ini merupakan penjadwalan dengan memilih proses mana yang tertunda yang dapat dilanjutkan berdasarkan ketersediaan I/O.

Scheduling dan State Proses
Seperti yang diketahui bahwa penjadwalan atau scheduling memiliki hubungan dengan proses, sehingga scheduling juga berhubungan dengan kondisi (state) dari proses yang sebelumnya telah dibahas di Pertemuan II. Adapun hubungan penjadwalan dengan kondisi proses tersebut adalah sebagai berikut.
1.     Kondisi New menjadi kondisi Ready/Suspend termasuk dalam long term scheduling.
2.     Kondisi Ready/Suspend menjadi kondisi Ready termasuk dalam medium term scheduling.
3.     Kondisi Ready menjadi Running termasuk dalam short term scheduling.
4. Kondisi Blocked/Suspend menjadi kondisi Blocked termasuk dalam medium term scheduling.
Hubungan kondisi proses dan penjadwalan tersebut memiliki timeout dan dapat digambarkan dengan diagram seperti berikut.




Algoritma Scheduling
Algoritma Scheduling membantu alur penjadwalan pada sistem serta membantu programmer di dalam pengembangan aplikasi terkait dengan sistem operasi. Ada beberapa algoritma scheduling yang dapat digunakan, antara lain sebagai berikut.
1.     Round Robin
Algoritma ini menggunakan konsep antrian (queue), di mana setiap proses memiliki time quantum untuk menandai waktu dari proses. Setiap proses diberi nilai yang sama untuk time quantumnya yaitu 1/n. Nilai ideal time quantum = 80 (dari skala 0-100)
2.     First In First Out (FIFO)
Algoritma ini merugikan proses pendek, karena proses yang terlebih dahulu dieksekusi adalah proses yang datang pertama. Algoritma ini tidak mementingkan apakah proses tersebut merupakan proses panjang atau pendek.
3.     Shortest Job First (SJF)
Algoritma ini memperbaiki algoritma FIFO, di mana proses yang lebih pendek akan didahulukan/diprioritaskan. Algoritma akan memeriksa masing-masing proses terlebih dahulu sebelum dieksekusi.


0 komentar:

Posting Komentar