Penjadwalan Proses Dalam Sistem Operasi

PENJADWALAN PROSES

Penjadwalan merupakan kumpulan kecerdikan dan prosedur di sistem operasi yang berkaita Penjadwalan Proses Dalam Sistem Operasi
Penjadwalan Proses Dalam Sistem Operasi

Hello good millennial, jumpa lagi di blogger joeshapictures tema hari ini ialah perihal "Penjadwalan Proses Dalam Sistem Operasi" penasaran, yuk kita baca !

Definisi
  • Penjadwalan merupakan kumpulan kecerdikan dan prosedur di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer. 
  • Penjadwalan bertugas tetapkan proses yang harus berjalan dan kapan atau berapa usang proses itu berjalan. 

Kriteria Penjadwalan

1. Adil  
  • Proses-proses menerima jatah waktu pemroses. 
  • Tak ada proses yang tak kebagian layanan pemroses.

2. Efisiensi 
  • Efisiensi atau utilisasi pemroses dihitung dengan perbandingan (rasio) waktu sibuk pemroses. 
  • Menjaga biar pemroses tetap dalam keadaan sibuk efisiensi mencapai maksimum. 

3. Waktu tanggap (response time) 
  • Waktu tanggap pada sistem interaktif waktu yang dihabiskan dari dikala huruf terakhir dari perintah dimasukkan  sampai hasil pertama muncul di layar (terminal) terminal response time 
  • Waktu tanggap pada sistem waktu konkret (real-time) waktu dari dikala insiden (internal atau eksternal) hingga arahan pertama rutin layanan yang dimaksud dihukum event response time 

4. Turn arround time 
  • Waktu yang dihabiskan dari dikala acara atau job mulai masuk ke sistem hingga proses diselesaikan sistem. 
  • Waktu yang dihabiskan di dalam sistem.       
  • Turn arround time = waktu sanksi + waktu menunggu. 
  • Sasaran penjadwalan ialah meminimalkan turn arround time. 

5. Throughput
  • Jumlah kerja atau jumlah job yang sanggup diselesaikan dalam satu unit waktu. 
  • Sasaran penjadwalan ialah memaksimalkan jumlah job yang diproses per satu interval waktu. 
  • Lebih tinggi angka throughput, lebih banyak kerja yang dilakukan sistem. 

Tipe Penjadwalan

Penjadwal jangka pendek (short-term scheduler)
menjadwalkan alokasi pemroses diantara proses-proses ready di memori utama.

Penjadwal jangka menengah 
Aktifitas pemindahan proses yang tertunda dari memori utama ke memori sekunder (swapping) tersedia ruang untuk proses lain

Penjadwal jangka panjang
bekerja terhadap antrian batch dan menentukan batch berikutnya yang harus dieksekusi.
Batch biasanya ialah proses-proses dengan penggunaan sumber daya yang intensif (yaitu waktu pemroses, memori, perangkat masukan/keluaran), program-program ini berprioritas rendah, dipakai sebagai pengisi (agar pemroses sibuk) selama periode acara job-job interaktif rendah. Sasaran utama penjadwal jangka panjang ialah memberi keseimbangan job-job campuran. 

Strategi Penjadwalan

Penjadwalan nonpreemptive 
Proses yang sedang berjalan tidak sanggup disela. Sekali proses berada di status running (sedang berjalan), maka proses tersebut akan dihukum terus hingga proses berhenti alasannya ialah selesai atau diblok untuk menunggu I/O atau untuk meminta beberapa layanan dari sistem operasi; dan CPU tidak sanggup diambil alih oleh proses yang lain. 

Penjadwalan preemptive 
Proses yang sedang berjalan sanggup diinterupsi dan dipindah ke status ready oleh sistem operasi sehingga CPU sanggup diambil alih proses yang lain.  

Algoritma Penjadwalan

- FIFO (First-in, First-out) atau FCFS (First-come, First-serve) 
- SJF (Shortest Job First)  
- RR (Round Robin) 
- PS (Priority Schedulling) 

Klasifikasi menurut prioritas :
-Algoritma penjadwalan tanpa prioritas 
-Algoritma penjadwalan berprioritas : Terbagi Menjadi dua yaitu algoritma penjadwalan berprioritas statik dan algoritma penjadwalan berprioritas dinamis

Penjadwalan FIFO

Penjadwalan nonpreemptive dan tidak berprioritas, proses-proses diberi jatah waktu pemroses menurut waktu kedatangan, proses yang tiba terlebih dahulu, juga dilayani terlebih dahulu. Saat proses menerima jatah waktu pemroses, proses dijalankan hingga selesai. Job usang menciptakan job pendek menunggu, job tidak penting menciptakan job penting menunggu.

Contoh : ada 3 proses P1, P2, P3 dengan usang waktu kerja CPU (CPU Burst-time) masing-masing sbb : 


Jika proses tiba dengan urutan P1, P2, P3 dan dilayani dengan algoritma FIFO maka sanggup digambarkan Gantt Chart-nya : 


Waktu tunggu P1 : 0 milidetik, P2 : 24, P3: 27
Rata-rata waktu tunggu (Average Waiting Time / AWT) : (0+24+27)/3 = 17 milidetik.
Jika waktu kedatangan proses ialah P3, P2, P1 maka Gantt Chartnya ialah :


AWT = (0+3+6)/3 = 3 milidetik. Menentukan Turn Around Time


Turn around time (waktu penyelesaian) P1 ialah 24, P2 = 27, P3 = 30, maka rata-rata turn around time = (24+27+30)/3 = 27 milidetik 

Penjadwalan SJF

Asumsi : waktu jalan proses (sampai selesai) sudah diketahui sebelumnya. Menjadwalkan proses dengan waktu terpendek lebih dulu hingga selesai

Contoh : 


Gantt Chart :


Nilai waktu tunggu : P1 = 3 milidetik, P2 = 16 milidetik, P3 = 9 milidetik, P4 = 0 milidetik. AWT : (3+16+9+0) / 4 = 7 milidetik.

Contoh menentukan Turn Around Time :


Contoh menentukan AWT untuk SJF nonpreemptive:


A = 0 milidetik 
B = waktu mulai dilayani – waktu dikala tiba = 8-2 = 6 milidetik 
C = waktu mulai dilayani – waktu dikala tiba = 7-4 = 3 milidetik  
D = waktu mulai dilayani – waktu dikala tiba = 12-5 = 7 milidetik
AWT : (0+6+3+7) / 4 = 4 milidetik

Contoh menentukan AWT untuk SJF preemptive :


A = 0 + (11-2) = 9 milidetik 
B = 0 + (5-4) = 1 milidetik 
C = 0 milidetik 
D = 7-5 = 2 milidetik  
AWT : (9+1+0+2) / 4 = 3 milidetik. 
Menentukan Turn Around Time :


Penjadwalan Round Robin (RR)

Penjadwalan preemptive dan tanpa prioritas, semua proses dianggap penting dan diberi sejumlah waktu pemroses yang disebut kwanta (quantum) atau time-slice dimana proses itu berjalan. 

Ketentuan algoritma RR : 

  • Jika quantum habis dan proses belum selesai maka proses menjadi runnable dan pemroses dialihkan ke proses lain.
  • Jika quantum belum habis dan proses menunggu suatu insiden (selesainya I/O), maka proses menjadi blocked dan pemroses dialihkan ke proses lain. 
  • Jika quantum belum habis tapi proses telah selesai maka proses diakhiri dan pemroses dialihkan ke proses lain.

Contoh : kumpulan proses tiba pada waktu 0


Quantum 4 milidetik :
P1 menerima 4 milidetik pertama
20 milidetik berikutnya akan disela P2 dan P3

Gambar Gantt Chart


Waktu tunggu tiap proses


AWT : (6+4+7)/3 = 5,66 milidetik 

Contoh : Menentukan Turn Around Time untuk quantum waktu (q) = 3 


Penjadwalan PS

Tiap proses dilengkapi dengan prioritas. CPU dialokasikan untuk proses yang mempunyai prioritas paling tinggi. Jika beberapa proses mempunyai prioritas yang sama, maka akan dipakai algoritma FIFO.

Contoh : ada 5 proses P1,P2,P3,P4,P5


Gantt Chart


Waktu tunggu tiap-tiap proses :


AWT = (6+0+16+18+1) / 5= 8,2 ms

Prioritas biasanya menyangkut persoalan : waktu, memori yang dibutuhkan, banyaknya file yang boleh dibuka, dan perbandingan antara rata-rata I/O burst dengan rata-rata CPU burst.  

Priority schedulling bersifat preemptive atau nonpreemptive. Jika ada proses P1 yang tiba pada dikala P0 sedang berjalan, maka akan dilihat prioritas P1. 

Seandainya prioritas P1 lebih besar dibanding dengan prioritas P0 maka pada non preemptive, algoritma tetap akan menuntaskan P0 hingga habis CPU burst-nya, dan meletakkan P1 pada posisi head queue. Sedangkan pada preemptive, P0 akan tidak boleh dulu, dan CPU ganti dialokasikan untuk P1. 

Terima kasih sudah membaca semoga apa yang kita baca hari ini sanggup bermanfaat bagi kita semua, sebelum meninggalkan blogger joeshapictures sebaiknya di share dulu, apa yang kita sanggup hari ini ada baiknya kalau kita membagikan pengetahuan kepada orang lain. Sampai jumpa di artikel selanjutnya . . .

Belum ada Komentar untuk "Penjadwalan Proses Dalam Sistem Operasi"

Posting Komentar

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel