Penjadualan Prosesor – Materi Sisop

5-scheduling-software-QuickBooks-720x720

Salam hangat para pembaca. Pada kesempatan kali ini kami akan mencoba untuk melakukan pembahasan mengenai salah satu topik pada sistem operasi. Topik yang akan kita angkat adalah mengenai scheduling (penjadualan) pada prosesor, oleh sistem operasi. Secara garis besar penjadualan prosesor ini digunakan untuk memaksimalkan kinerja dari prosesor, sehingga setiap proses yang ada akan terbagi secara adil dan efisien.

Pengertian

Secara pengertian, Scheduling merupakan pengaturan penggunaan waktu prosesor (processor time) bagi sejumlah proses yang saling berkompetisi. Scheduling ini merupakan salah satu tugas utama sistem operasi agar skema multiprogramming dapat dijalankan. Manfaat lain dari scheduling ini adalah terhindarnya dari overhead dan starvation.

Kriteria Penjadwalan

Suatu algoritma penjadwalan CPU yang berbeda dapat mempunyai nilai yang berbeda untuk sistem yang berbeda. Banyak kriteria yang bisa dipakai untuk menilai algoritma penjadwalan CPU.

Kriteria yang digunakan dalam menilai adalah:

  1. CPU Utilization

Salah satu bentuk kriteria penjadwalan dimana kriteria ini berfungsi untuk menjaga CPU selalu dalam keadaan sibuk, CPU utilization akan mempunyai range dari 0 sampai 100 persen. Di sistem yang sebenarnya ia mempunyai range dari 40 sampai 100 persen.

  1. Throughput

Salah satu ukuran kerja adalah banyaknya proses yang diselesaikan per satuan waktu. Cara untuk mengekspresikan throughput adalah dengan jumlah job pemakai yang dapat dieksekusi dalam satu unit/interval waktu. Sasaran penjadwalan adalah memaksimalkan jumlah job yang diproses per satu interval waktu. Lebih tinggi angka throughput, lebih banyak kerja yang dilakukan sistem Jika kita mempunyai beberapa proses yang sama dan memiliki beberapa algoritma penjadwalan yang berbeda, throughput bisa menjadi salah satu kriteria penilaian, dimana algoritma yang menyelesaikan proses terbanyak mungkin yang terbaik. Contohnya : Untuk memberi waktu tanggap kecil memerlukan penjadwalan yang sering beralih diantara prosesproses itu. Cara ini meningkatkan overhead sistem dan mereduksi throughput. Kebijaksanaan perancangan penjadwalan melibatkan kompromi diantara kebutuhan-kebutuhan yang saling bertentangan. Kompromi ini bergantung sifat dan penggunaan sistem komputer.

  1. Turnaround Time

Dari sudut pandang proses tertentu, kriteria yang penting adalah Turnaround time. Turnaround time adalah jumlah periode untuk menunggu untuk dapat ke memori, menunggu di ready queue, eksekusi CPU, dan melakukan operasi I/O lebih jelasnya waktu yang dihabiskan dari saat program atau job mulai masuk ke system sampai proses diselesaikan sistem. Waktu yang dimaksud adalah waktu yang dihabiskan dalam sistem, diekspresikan sebagai jumlah waktu eksekusi (waktu pelayanan job) dan waktu menunggu,

  1. Waiting Time

Salah satu bentuk kriteria penjadwalan yang mencangkup pada waktu yang diperlukan oleh suatu proses untuk menunggu sampai suatu proses tersebut dalam kondisi ready queue, dimana waiting time tidak dipengaruhi eksekusi proses dan penggunaan I/O. itu hanya mempengaruhi jumlah waktu yang dibutuhkan proses di antrian readyWaiting time adalah jumlah waktu yang dibutuhkan proses di antrian ready.

  1. Response Time

Di sistem yang interaktif, turnaround time mungkin bukan waktu yang terbaik untuk kriteria. Sering sebuah proses dapat memproduksi output di awal, dan dapat meneruskan hasil yang baru sementara hasil yang sebelumnya telah diberikan ke pengguna. Ukuran lain adalah waktu dari pengiriman permintaan sampai respon yang pertama diberikan. Ini disebut response time, yaitu waktu untuk memulai memberikan respon, tetapi bukan waktu yang dipakai output untuk respon tersebut.

Ada dua jenis response time berdasarkan penggunaannya pada sistem interaktif dan sistem waktu nyata (real time), yaitu:

  • Terminal response time merupakan response time pada sistem interaktif sebagai waktu yang dihabiskan dari saat karakter terakhir dari perintah dimasukkan atau transaksi sampai hasil pertama muncul di layar.
  • Event response time merupakan response time pada sistem waktu nyata sebagai waktu dan kejadian (internal/eksternal) sampai instruksi pertama rutin layanan yang dimaksud dieksekusi. Sebaiknya ketika kita akan membuat algoritma penjadwalan yang dilakukan adalah memaksimalkan penggunaan CPU dan throughput, dan meminimalkan turnaround timewaiting time, dan responsetime.
  1. Fairness

Suatu algoritma harus memperhatikan pengawasan nilai prioritas dari suatu proses (menghindari terjadinya starvation CPU time) dan suatu proses untuk meyakinkan bahwa tiap-tiap proses akan mendapatkan pembagian waktu penggunaan CPU secara terbuka (fair).

  1. Efisiensi

Rendahnya overhead dalam context switching, penghitungan prioritas dan sebagainya menentukan apakah suatu algoritma efisien atau tidak.

Dalam pembuatan algoritma penjadwalan yang haruskita lakukan menrut kreteria yang di atas adalah  memaksimalkan CPU utilization dan throughput, dan meminimalkan turnaround timewaiting time, dan response time.

 

Algoritma Scheduling

FCFS Algorithm

Penjadwalan ini merupakan penjadwalan Non Preemptive. Dalam penjadwalan FCFS (First Come First Serve) :

  1. Proses yang pertama kali minta jatah waktu untuk menggunakan CPU akan dilayani terlebih dahulu.
  2. Begitu proses mendapatkan jatah waktu CPU à proses dijalankan sampai selesai / sampai proses tersebut melepaskannya, yaitu jika proses tersebut berhenti atau meminta I / O.

Contoh implementasi algoritma FCFS :

Aa

Shortest Job First (SJF) Algorithm

Sortest job first juga merupakan penjadwalan non-preemptive dan termasuk penjadwalan tak berprioritas. Mekanisme SJF adalah dengan mengeksekusi proses yang memiliki waktu terpendek terlebih dahulu.

Contoh:

bb

 

SJF sangat berguna untuk meminimalkan wasting time pd proses. Tetapi SJF sebenarnya tidak mungkin dilakukan, karena prosesor harus mengetahui secara pasti waktu eksekusi dari setiap proses.

 

Referesensi

http://tugaskelompok-so-ti.blogspot.com/2012/06/penjadwalan-cpu.html

http://www.cs.uic.edu/~jbell/CourseNotes/OperatingSystems/5_CPU_Scheduling.html

http://mahadisuta.blogspot.com/2012/12/penjadwalan-proses.html

http://manajement-info.blogspot.com/2011/12/bab-v-sistem-operasi-penjadwalan-proses.html

http://manajement-info.blogspot.com/2011/12/bab-v-sistem-operasi-penjadwalan-proses.html

http://www.tutorialspoint.com/operating_system/os_process_scheduling_algorithms.htm

 

Leave a Reply

Your email address will not be published. Required fields are marked *