Selasa, 19 Februari 2019

Scheduling? Apa itu?

Nama : I Gusti Ngurah Dwi Prajanatha Dauh
NIM : 1705551010
Prodi : Teknologi Informasi
Fakultas : Teknik
Universitas : Udayana
Mata Kuliah : Network Operating System
Dosen : I Putu Agus Eka Pratama, ST MT


Scheduling adalah suatu prosedur atau aturan dimana “penjadwalan” suatu proses yang melibatkan sistem operasi, kernel, dan software lainnya yang sudah diatur dengan ketentuannya agar tidak terjadi suatu interfrensi dengan proses lainnya, dengan adanya scheduling, dapat ditentukan sebuah proses itu mulai bekerja kapan dan harus berhenti kapan. Sasaran utama dari Scheduling adalah.
·         Adil
Dimana semua proses dapat melakukan eksekusi mendapat kesempatan yang sama.

·         Efisiensi
Waktu yang digunakan untuk mengeksekusi suatu proses harus seminimal mungkin, agar tidak terjadi interrupt atau critical

·         Response Time
Waktu yang dibutuhkan untuk mengeksekusi dibagi menjadi dua interaktif dan real time. Interaktif adalah waktu dimana sampai karakter pertama tampil di terminal. sedangkan real time adalah dimana waktu yang dibutuhkan dari intruksi pertama di eksekusi.

·         Turn Around Time
Waktu yang digunakan dari awal proses dieksekusi samapai akhir. Turn arround time = waktu eksekusi + waktu menunggu

·         Throughput
Jumlah proses yang dapat dikerjakan dalam satu waktu.

Scheduling diterapkan pada sistem operasi karena Kernel memiliki utilitas, fungsi – fungsi utama dan dukungan terhadap software dan hardware. Multiprogramming adalah kemampuan suatu sistem operasi untuk menjalankan dua software atau lebih secara bersamaan dan menghasilkan suatu proses. Multiprocessing adalah kemampuan sistem operasi menangani dua process atau lebih secara bersamaan. Scheduling memiliki 4 jenis sebagai berikut.
·         Long Term Scheduling
Penjadwalan dengan menambahkan pool untuk proses yang akan dieksekusi

·         Medium Term Scheduling
Penjadwalan dengan menambahkan jumlah dari process baik secara penuh maupun parsial di dalam memori utama

·         Short Term Scheduling
Penjadwalan dengan memilih process mana yang akan dijalankan terlebih dahulu

·         I/O Scheduling
Penjadwalan dengan memilih process mana yang tertunda yang dapat dilanjutkan kembali berdasarkan ketersediaan perangkat I/O

Scheduling menjadwalkan proses yang berbeda untuk ditugaskan ke CPU berdasarkan pada algoritma penjadwalan tertentu. Ada banyak sekali agoritma scheduling di dalam sistem operasi, Algoritma scheduling membantu alur scheduling pada sistem serta membantu programmer di dalam pengembangan aplikasi terkait dengan sistem operasi.
·         Round Robin (RR) Scheduling
Menggunakan konsep antrian (queue). Setiap process memiliki time quantum untuk menandai waktu dari process --> time quantum selesai = proses selesai setiap proses diberi nilai yang sama untuk time quantum yaitu 1/n
·         First In First Out

Process yang lebih dahulu datang = segera dieksekusi, else ikuti atrian.

·         Shortest Job First


Memperbaiki FIFO Process yang lebih pendek akan didahulukan/diprioritaskan

·         Shortest Process Next (SPN)
Mengecek processing time (waktu pemrosesan/waktu eksekusi) setiap job, yang terpendek dimasukkan ke urutan antrian (queue) terdepan, yang terpanjang paling belakang.


·         Highest Response Ratio Next (HRRN)
Memilih job yang nilai Response Time-nya terbesar (R). Nilai R diperoleh dengan rumus (w+s)/s (di mana w = waiting time = waktu tunggu processor, s = service time)

·         Shortest Remaining Time (SRT)
Pilih yang waktu tunggunya lebih pendek → job yang masuk ke dalam queue memiliki waktu tunggu < job yang sedang diproses

·         Multilevel Queue
Ide dasar dari algoritma ini adalah berdasarkan pada sistem prioritas proses. Prinsipnya adalah, jika setiap proses dapat dikelompokkan berdasarkan prioritasnya. 

·         Multilevel Feedback Queue 
Algoritma ini mirip sekali dengan algoritma Multilevel Queue.  Perbedaannya ialah algoritma ini mengizinkan proses untuk pindah antrian. Jika suatu proses menyita CPU terlalu lama, maka proses itu akan dipindahkan ke antrian yang lebih rendah. Ini menguntungkan proses interaksi, karena proses ini hanya memakai waktu CPU yang sedikit. Demikian pula dengan proses yang menunggu terlalu lama. Proses ini akan dinaikkan tingkatannya
.
Dalam menilai baik atau buruknya suatu algoritma penjadwalan kita bisa memakai beberapa kriteria, diantaranya CPU utilizationthroughputturnaround timewaiting time, dan response time. Algoritma yang baik adalah yang mampu memaksimalkan CPU utilization dan throughput, dan meminimalkan turnaround timewaiting time, dan response time.


Daftar Pustaka :

Adhitama, A. (2013, 11 20). Teknik Penjadwalan Sistem Operasi. Retrieved from Agung Adhitama: http://agungadhitama.blogspot.com/2013/11/teknik-penjadwalan-sistem-operasi.html


Hasanah, U. (2012, 5 18). Real – Time Scheduling. Retrieved from Blog Universitas Brawijaya: https://blog.ub.ac.id/tyayoya/2012/05/18/real-time-scheduling/

0 komentar:

Posting Komentar