• Tidak ada hasil yang ditemukan

Bab-5 Penjadwalan Proses(1)

N/A
N/A
Protected

Academic year: 2017

Membagikan "Bab-5 Penjadwalan Proses(1)"

Copied!
24
0
0

Teks penuh

(1)
(2)

 Penjadwalan CPU didasarkan pada SO yg

menggunakan prinsip multiprogramming. Dengan cara mengalihkan kerja CPU untuk beberapa proses, maka CPU akan semakin produktif.

 Pada multiprogramming, selalu akan terjadi

beberapa proses berjalan dalam suatu

(3)

 Konsep dasar multiprogramming adalah :

suatu proses akan menggunakan CPU

sampai proses tersebut dalam status wait (mis. meminta I/O) atau selesai.

 Pada saat wait, maka CPU akan nganggur.

Untuk mengatasi hal ini, maka CPU

dialihkan ke program lain pada saat suatu proses sedang dalam keadaan wait,

(4)

 Pada saat CPU nganggur, maka SO harus

menyeleksi proses-proses yg ada di memori utama (ready queue) untuk dieksekusi.

Seleksi ini disebut dengan shortterm scheduler (CPU scheduler).

Scheduler tersebut harus dapat menyeleksi

proses-proses dalam memori utama yg telah siap untuk dieksekusi, dan

(5)

Ada 4 keadaan yg menjadi pertimbangan

bagi penjadwalan oleh CPU, yaitu :

1. Pada saat proses berpindah dari

4. Pada saat proses berhenti.

Jika model penjadwalan yg dipilih adalah

keadaan 1 dan 4, maka ini disebut

non-preemptive.

Sebaliknya jika yg digunakan

adalah keadaan 2 dan 3, maka disebut

(6)

 Pada non-preemptive, jika suatu proses

sedang menggunakan CPU, maka proses tersebut akan tetap membawa CPU sampai proses tersebut melepaskannya (berhenti atau dalam keadaan waiting).

Preemptive scheduling memiliki kelemahan,

yaitu biaya yg dibutuhkan sangat tinggi.

Antara lain harus selalu dilakukan perbaikan data. Hal ini terjadi jika suatu proses

(7)

Dispatcher adalah suatu modul yg akan

memberikan kontrol pada CPU terhadap

penyeleksian proses yg dilakukan selama

short-term scheduling.

 Fungsi-fungsi yg terkandung didalam Dispatcher :

Switching context

Switching ke user-mode

◦ Melompat ke lokasi tertentu pada user program

untuk memulai program

 Waktu yg diperlukan dispatcher untuk

menghentikan suatu proses dan memulai untuk menjalankan proses yg lainnya disebut dengan

(8)

 Beberapa kriteria yg digunakan untuk

perbandingan algoritma penjadwalan CPU antara lain :

CPU utilization, diharapkan agar CPU selalu dalam keadaan sibuk. Utilitas CPU dinyatakan dalam

prosentase 0 – 100%. Namun kenyataannya hanya berkisar antara 40-90%.

(9)

Turnaround time, banyaknya waktu yg diperlukan untuk mengeksekusi proses, dari mulai menunggu di ready queque, eksekusi oleh CPU, dan

mengerjakan I/O.

Waiting Time, waktu yg diperlukan oleh suatu

proses untuk menunggu di ready queque. Waiting

(10)

Response Time, waktu yg dibutuhkan oleh suatu proses dari minta dilayani hingga ada respon

pertama yg menanggapi permintaan tersebut.

Fairness, meyakinkan bahwa tiap-tiap proses akan mendapatkan pembagian waktu

penggunaan CPU secara terbuka (fair).

 Selanjutnya kriteria yg akan digunakan

untuk membandingkan algoritma

(11)

First-Come-First-Served Scheduling (FCFS)

Shortest Job First Scheduler (SJF)

Priority Scheduling

Round-Robin Scheduling

Multilevel Queue Scheduling

Multilevel Feedback Queue

(12)

 Proses yg pertama kali meminta jatah

waktu untuk menggunakan CPU akan

dilayani terlebih dahulu. AWT dari algoritma ini cukup besar.

 Misalnya ada 3 proses : P1, P2, dan P3 yang

meminta layanan CPU sebagai berikut :

Proses Burst Time (ms)

P1 24

P2 3

(13)

Gant chart :

0 24 27 30

Waktu tunggu yang diberikan untuk tiap-tiap proses terlihat pada tabel dibawah ini :

Sehingga AWT = (0+24+27)/3 = 17 ms.

P1 P2 P3

Proses Waiting Time (ms)

P1 0

P2 24

(14)

 Hal ini akan menjadi sangat berbeda jika

urutan kedatangan proses adalah: P2, P3, baru P1.

0 3 6 30

Waktu tunggu yang diberikan untuk tiap-tiap proses terlihat pada tabel dibawah ini :

(15)

 Metode FCFS adalah metode yg sangat

sederhana dan mudah diimplementasikan.

 Namun metode ini memiliki kelemahan,

yaitu dengan adanya convoy effect, yang akan mengakibatkan membengkaknya AWT jika proses yg dilayani terlebih dahulu

(16)

 Proses yg memiliki CPU burst paling kecil

akan dilayani terlebih dahulu.

 Misalkan ada 4 proses : P1, P2, P3, dan P4

yang meminta layanan CPU sebagai berikut :

Proses Burst Time (ms)

P1 6

P2 8

P3 7

(17)

Gant chart :

0 3 9 16 24

Waktu tunggu yang diberikan untuk tiap-tiap proses terlihat pada tabel dibawah ini :

(18)

 Meskipun algoritma ini optimal, namun pada

kenyataannya sulit diimplementasikan karena sulit untuk mengetahui panjang CPU burst

berikutnya. Namun nilai ini dapat diprediksi.

 CPU burst berikutnya biasanya diprediksi

(19)

 Algoritma SJF adalah suatu kasus khusus dari

priority scheduling. Tiap proses dilengkapi

dengan prioritas. CPU dialokasikan untuk proses yg memiliki prioritas paling tinggi.

 Jika beberapa proses memiliki prioritas yang

sama, maka akan digunakan algoritma FCFS.

 Contoh: jika ada 5 proses : P1, P2, P3, P4 dan

P5 dengan CPU burst :

Proses Burst Time (ms) Prioritas

P1 10 3

P2 1 1

P3 2 3

P4 1 4

(20)

Gant chart :

0 1 6 16 18 19

Waktu tunggu untuk tiap-tiap proses adalah:

(21)

 Prioritas biasanya menyangkut masalah

waktu, memori yang dibutuhkan,

banyaknya file yang boleh dibuka, dan perbandingan antara rata-rata I/O burst dengan rata-rata CPU burst.

Priority Scheduling bersifat preemptive atau

(22)

 Konsep dasar dari algoritma ini adalah

menggunakan time sharing. Pada dasarnya algoritma ini sama dengan FCFS, hanya saja bersifat preemptive. Digunakan quantum

time untuk membatasi waktu proses.

 Jika suatu proses memiliki CPU burst lebih

kecil dibandingkan dengan quantum time, maka proses tersebut akan melepaskan CPU jika telah selesai bekerja, sehingga CPU

(23)

 Sebaliknya, jika suatu proses memiliki CPU

burst yang lebih besar dibandingkan dengan quantum-time, maka proses tersebut akan dihentikan sementara jika sudah mencapai quantum-time, dan selanjutnya mengantri kembali pada posisi ekor dari ready queue, CPU kemudian menjalankan proses

berikutnya

 Misalkan ada 3 proses : P1, P2, dan P3 yang

meminta layanan CPU. Jika quantum-time sebesar 4 ms, maka :Proses Burst Time (ms)

P1 24

P2 3

(24)

Gant chart :

0 4 7 10 14 18 22 26 30

Waktu tunggu tiap-tiap proses :

Sehingga AWT = (6+4+7)/3 = 5,66 ms. Hal 24.

P1 P2 P3 P1 P1 P1 P1 P1

Proses Waiting Time (ms)

P1 0+(10-4) = 6

P2 4

Referensi

Dokumen terkait

(1) Pengajuan Pendaftaran untuk CPDB dapat dilakukan secara online mandiri maupun datang langsung ke Satuan Pendidikan yang menggunakan sistem PPDB

[r]

Penelitian ini bertujuan untuk mengetahui perbedaan denyut jantung janin pada ibu hamil trimester tiga yang memiliki tekanan darah tinggi dengan tekanan darah

Terkait ayat tersebut dapat ditarik pemaha- man bahwa orang yang saleh dan memiliki ke- kayaan dalam suatu komunitas hendaknya tidak bersumpah untuk tidak memberikan

Memunculkan norma baru dan jaminan kepastian hukum sebagaimana yang diamanahkan oleh Pasal 28 D ayat (1) UUD NRI tahun 1945 terutama dalam hal penyelesaian sengketa

Kepedulian Kepala Sekolah terhadap IPA ditunjukkan dalam supervisi kepada Guru yang mengajar.. IPA di

Perlakuan pupuk kandang sapi mampu meningkatkan jumlah cabang, jumlah daun, diameter batang, jumlah bunga, jumlah bintil akar, dan luas daun per pot tanaman kacang pinto

Lokasi Landmark Residence apartment berada di tengah Kota Bandung, hanya beberapa langkah dari Jalan Pasirkaliki / Jalan Pajajaran dengan akses yang mudah can cepat ke