Anda di halaman 1dari 5

PENJADWALAN CPU

Penjadwalan CPU adalah (CPU scheduling) adalah suatu pengaturan proses-proses yang ada
dalam cpu. Penjadwalan ini sangatlah penting karena menentukan performa dari sebuah cpu.
Penjadwalan cpu adalah dasar dari multiprogramming karena dengan adalnya alokasi itu maka
proses-proses itu mendapatkan alokasi resource dari CPU.

SIKLUS BRUST CPU-M/K

Keberhasilan dari penjadwalan CPU tergantung dari beberapa properti prosesor. Pengeksekusian
dari proses tersebut terdiri atas siklus CPU ekskusi dan M/K Wait. Proses hanya akan bolak-balik
dari dua pernyataan ini, inilah yang disebut Siklus Burst CPU-M/K. Pengeksekusian proses
dimulai dengan Burst CPU, lalu diikuti olehi Burst M/K, kemudian Burst CPU lagi lalu Burst
M/K lagi, dan seterusnya dilakukan secara bergiliran. Burst CPU terakhir akan berakhir dengan
permintaan sistem untuk mengakhiri pengeksekusian melalui Burst M/K lagi.

SIKLUS BRUST CPU M/K


Durasi dari cpu brust ini sangatlah berbeda dari proses ke proses, setiap proses sudah diukur
secara ekstensif. Aetiap sistem memiliki frekuensi kurva yang sama seprti tunjukkan di gambar
di bawah
DISPATCHER

Dispatcher adalah modul yang memberikan kontrol CPU kepada proses yang sedang terjadwal.
fungsinya adalah

1. Context switching . Mengganti state dari suatu proses dan mengembalikannya untuk
menghindari monopoli cpu oleh satu proses tertentu. Context switching dilakukan untuk
menangani suatu interrupt(misalnya menunggu waktu M/K). Untuk menyimpan state
dari proses-proses yang terjadwal sebuah Process Control Block harus dibuat untuk
mengingat proses-proses yang sedang diatur scheduler.

2. Switching to user mode dari kernel mode.

3. Lompat dari suatu bagian di progam user untuk mengulang program.

Dispatch latency adalah waktu yang diperlukan dispatcher untuk menghentikan suatu proses dan
memulai proses yang lain.

PENJADWAL CPU

Suatu proses mengandung suatu cycle atau siklus dari pengeksekusian CPU dan M/K wait. Suatu
proses yang dieksekusi oleh CPU terjadi diantara dua cycle tersebut.

Proses eksekusi dimulai dengan CPU brust lalu M/K brust dan kembali lagi ke M/K brust. Pada
saaat pengeksekusian menjalankan instruksi nya pada CPU Burst dan akan mengalami suatu
M/K Burst pada saat menunggu proses M/K (M/K Burst). Sautu proses akan berada di posisi
kedua siklus tersebut,. Tetapi bisa saja suatu proses memiliki cpu brust yang lama yang disebut
CPU Bound, contohnya seperti proses aritmatika.
Contoh CPU Bound yang lain adalah proses pengeksekusian graphic game, dimana proses ini
banyak menunggu masukkan dan keluaran dari M/K. semakin tinggi kualitas graphic maka
semakin lama waktu yang diperlukan, namun pada jaman sekarang cpu sudah berkembang
sehingga mampu menangani proses ini dengan baik.

Ketika CPU mengalami waktu idle, sistem operasi harus memilih salah satu proses untuk masuk
kedalam antrian yang akan untuk dieksekusi. Pemilihan tersebut dilakukan oleh penjadwal
jangka pendek atau penjadwal CPU. Ada tiga tipe penjadwal yang berada bersama pada sistem
operasi kompleks, yaitu :

a. Penjadwal jangka pendek yang bertugas menjadwalkan alokasi pemroses di antara


proses-proses yang telah siap di memori utama.
b. Penjadwal jangka menengah akan menangani serta mengendalikan transisi dari
suspended-toready dari proses-proses swapping.
c. Penjadwal jangka panjang bekerja terhadap antrian batch dan memilih batch berikutnya
yang harus dieksekusi.

PENJADWALAN PREEMTIVE DAN NON-PREEMPTIVE

Penjadwalan Preemptive mempunyai arti kemampuan sistem operasi untuk memberhentikan


sementara proses yang sedang berjalan untuk memberi ruang kepada proses yang prioritasnya
lebih tinggi. Preemptive memungkinkan sistem untuk lebih bisa menjamin bahwa setiap proses
mendapat sebuah slice waktu operasi. Dan juga membuat sistem lebih cepat merespon terhadap
event dari luar (contohnya seperti ada data yang masuk) yang membutuhkan reaksi cepat dari
satu atau beberapa proses.

Penjadwalan Non Preemptive ialah salah satu jenis penjadwalan dimana sistem operasi tidak
pernah melakukan context switch dari proses yang sedang berjalan ke proses yang lain. Dengan
kata lain, proses yang sedang berjalan tidak bisa di- interupt.

Penjadwalan Non Preemptive terjadi ketika proses hanya:

 Berjalan dari running state sampai waiting state


 Dihentikan.
Ini berarti CPU menjaga proses sampai proses itu dihentikan (proses tidak diganggu)
Atau pindah ke waiting state.

KRITERIA PPENJADWALAN CPU

Banyak kriteria yang bisa digunakan dalam menilai algoritma penjadwalan CPU

1. CPU Utilization
Cpu Utilization adalah persentase dari CPU yang diginakan, memiliki ragen 0-100
persen. Cpu utilization dapat melihat kesibukan dari satu prosesor.
2. Throughput.
Throughput adalahbanyaknya proses yang diselesaikan per satuan waktu. 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 dengan waktu paling singkat mungkin yang terbaik.
3. Turnaround Time . Dari sudut pandang proses tertentu, kriteria yang penting adalah berapa lama
untuk mengeksekusi proses tersebut.
Tapi keefektifan proses algoritma penjadwalan juga berpengaruh dalam menyelesaikan sebuah
proses. Karena setiap proses memiliki keidentikan sendiri dan tentunya memerlukan algoritma
penjadwalan yang berbeda agar efektif
Interval waktu yang diijinkan dengan waktu yang dibutuhkan untuk menyelesaikan sebuah proses
disebut turnaround time. Turnaround time adalah jumlah periode untuk menunggu untuk dapat ke
memori, menunggu di ready queue, eksekusi CPU, dan melakukan operasi M/K.
4. Waiting Time .
Algoritma penjadwalan CPU tidak mempengaruhi waktu untuk melaksanakan proses tersebut
atau M/K, itu hanya mempengaruhi jumlah waktu yang dibutuhkan proses di antrian ready.
Waiting time adalah jumlah waktu yang dibutuhkan proses di antrian ready.

Anda mungkin juga menyukai