Scheduling Pada Sistem Operasi




Nama Mata Kuliah   : Network Operating System
Nama Dosen             : I Putu Agus Eka Pratama, S.T., M.T
Jurusan                      : Teknologi Informasi
Fakultas                     : Teknik
Universitas                : Universitas Udayana
Pertemuan 3


Oke, hari ini mimin bakal melanjutkan artikel tentang sistem operasi. Pada artikel ini mimin akan membahas tentang Scheduling pada sistem operasi dan algoritma yang digunakan untuk scheduling pada sistem operasi. Oke langsung saja, check this out..
               

Definisi Scheduling

Scheduling adalah sebuah aktifitas process manajer untuk mengatur pengeluaran suatu proses pada CPU dan memilih proses selanjutnya yang akan dieksekusi oleh CPU dengan menggunakan strategi tertentu. Disisi lain, willian staling mengartikan bahwa scheduling sebagai satu atau beberapa buah aturan, mekanisme dan prosedur di dalam sistem operasi yang melibatkan kernel, aplikasi dan proses terkait dengan urutan kerja yang dilakukan oleh komputer dan sistem komputer. Jadi pada dasarnya scheduling itu menentukan apa yang selanjutnya akan dikerjakan komputer setelah menyelesaikan suatu pekerjaan. Scheduling menjadi bagian yang penting dari multiprogramming pada sistem operasi. Multiprogramming memungkinkan lebih dari satu aplikasi dijalankan secara bersamaan.

Dalam sistem operasi terdapat dua istilah yang kadang kita salah artikan yaitu multiprogramming dan multiprocessing. Multiprogramming adalah kemampuan sistem operasi untuk menjalankan dua atau lebih aplikasi secara bersamaan. Sedangkan multiprocessing adalah kemampuan untuk melakukan penanganan terhadap dua atau lebih proses secara bersamaan. Tampak mirip tapi sebenarnya berbeda. Bedanya adalah multiprogramming lebih menekankan pada sisi aplikasinya sedangkan multiprocessing lebih menekankan pada sisi perangkat yang memprosesnya.


Peran Scheduling

Scheduling memiliki beberapa peran, diantaranya adalah seperti dibawah ini. 
  • Memaksimalkan throughput
  • Memaksimalkan kinerja dan waktu processor. Dengan adanya penjadwalan maka process yang membutuhkan waktu yang pendek akan dijalankan lebih dahulu sehingga memaksimalkan kinerja processor.
  • Efisiensi process
  • Keadilan pada semua job dan aplikasi
  • Meminimalkan waktu tanggap/respond time. Dengan adanya penjadwalan process yang alebih cepat selesai akan dijalankan duluan sehingga respond time nya menjadi rendah.
  • Meminimalkan waktu tanggap/respond time. Dengan adanya penjadwalan process yang alebih cepat selesai akan dijalankan duluan sehingga respond time nya menjadi rendah.
     

Jenis Scheduling

Terdapat empat jenis scheduling, diantaranya adalah sebagai berikut

Long Term Scheduling

Menyeleksi proses-proses mana yang harus dimasukan ke dalam ready queue dan membawanya ke memori untuk dieksekusi. Long term scheduler mengeksekusi lebih jarang, dibutuhkan beberapa menit untuk pembuatan proses baru dalam sistem. Long term scheduler mengontrol jumlah proses dalam memori (degree of multiprogramming). Jika degree of multiprogramming stabil maka tingkat rata-rata penciptaan proses baru harus sama dengan tingkat rata-rata proses yang meninggalkan sistem.

Medium Term Scheduler

Penjadwalan ini akan menguntungkan untuk memindahkan proses dari memori maka jumlah proses dalam memori akan berkurang skema Medium term scheduler disebut swapping. swapping diperlukan untuk meningkatkan mutu penggabungan proses karena terjadi perubahan dalam kebutuhan memori yang mengakibatkan memori harus dibebaskan. Sebuah proses mungkin saja ditangguhkan ketika menunggu I/O Request. Pada kondisi tersebut menghapus proses dan memberikan ruang untuk proses lain maka proses yang tertangguhkan tadi dipindahkan ke memori sekunder. Proses itulah yang disebut dengan swapping.

Short Term Scheduling


Short Term Scheduling disebut juga CPU scheduler. Tujuan utamanya adalah meningkatkan sistem sesuai dengan kriteria yang dipilih. CPU scheduler merubah keadaan ready pada proses menjadi keadaan running. CPU scheduler memilih proses diantara proses yang ada untuk siap dijalankan dan mengalokasikan CPU kepada proses yang dipilih. Short Term Scheduling disebut juga dispatcher yang membuat keputusan proses mana yang akan dijalankan selanjutnya.

I/O Scheduling

I/O Scheduling adalah penjadwalan  dengan  memilih  process  mana  yang tertunda yang dapat dilanjutkan kembali berdasarkan ketersediaan perangkat I/O.

Jika digambarkan ke dalam bentuk diagram, beginilah apa yang terjadi.



Algoritma Scheduling

Sebenarnya terdapat banyak sekali algoritma yang digunakan untuk scheduling pada sistem operasi. Namun pada kesempatan kali ini, mimin akan membahas beberapa algoritma yang digunakan pada berbagai sistem operasi, ini diaa...

Round Robin

Round Robin adalah algoritma penjadwalan yang memberikan waktu fix kepada setiap proses yang disebut quantum. Ketika waktu quantum selesai berarti waktu proses juga selesai. Nilai ideal untuk waktu quantum adalah 80 dari 100.

First Come First Serve/First In First Out

Proses yang lebih dahulu datang akan diproses terlebih dahulu, jika tidak maka akan mengikuti antrian seperti biasa. Namun sayangnya algoritma ini akan bekerja buruk ketika rata-rata wait time tinggi. Dan ketika ada proses panjang dan pendek maka akan sesuai urutan kedatangan sehingga akan merugikan proses yang pendek. Solusi permasalahan tersebut adalah algortima Shortest Job First.

Shortest Job First

Proses yang pendek akan didahulukan sehingga meskipun antrian panjang, proses yang pendek akan tetap didahulukan. Algoritma ini memperbaiki algoritma FIFO.
 

Komentar

Postingan populer dari blog ini

Membuat Segitiga Sama Sisi Menggunakan Bahasa C

Algoritma Penjadwalan Pada Sistem Operasi

Fungsi dan Prosedur dalam Bahasa C