PPENJADWALAN PROSES ( CLOCK )
Penjadwalan
merupakan kumpulan kebijaksanaan dan mekanisme di ssistem operasi yang
berkaitan dengan urutan kerja yang dilakkan sistem komputer. Penjadwalan
bertugas
memutuskan :
– Proses yang harus berjalan
– Kapan dan selama berapa lama proses itu berjalan.
Sasaran Utama Penjadwalan Proses
Optimasi kerja menurut kriteria tertentu
Kriteria untuk mengukur dan optimasi kinerja penjadwalan :
– Adil (fariness)
– Efesiensi
– Waktu tanggap (response time)
– Turn Arround Time
– Throughtput
Adil (Fairness)
– Proses yang harus berjalan
– Kapan dan selama berapa lama proses itu berjalan.
Sasaran Utama Penjadwalan Proses
Optimasi kerja menurut kriteria tertentu
Kriteria untuk mengukur dan optimasi kinerja penjadwalan :
– Adil (fariness)
– Efesiensi
– Waktu tanggap (response time)
– Turn Arround Time
– Throughtput
Adil (Fairness)
Adil
adalah proses-proses diperlukan sama yaitu mendapatkan jatah waktu pemroses
yang sama dan tak ada proses yang tidak kebagian layanan pemroses sehingga
mengalami startvision. Sasaran pendjadwalan seharusnya menjamin tiap proses
mendapat pelayanan dari pemroses yang adil.
Efesiensi
Efesiensi
atau utilisasi pemroses dihitung dengan perbandingan (rasio) waktu sibuk
pemroses. Sasaran penjadwalan adalah menjaga agar pemroses tetap dalam keadaan
sibuk sehingga efesiensi mencapai maksimum. Sibuk adalah pemroses tidak
menganggur, termasuk waktu yang dihabiskan untuk mengeksekusi program pemakai
dan sistem operasi.
Waktu Tanggap (Response Time)
Waktu tanggap berbeda untuk :
– Sistem interaktif
– Sistem waktu nyata
Waktu tanggap pada sistem interaktif (Interaktif)
Waktu tanggap berbeda untuk :
– Sistem interaktif
– Sistem waktu nyata
Waktu tanggap pada sistem interaktif (Interaktif)
Waktu
tanggap dalam sistem interaktif didefinisikan sebagai waktu yang dihabiskan
dari saat karakter terakhir dari perintah dimasukkan atau transaksi sampai
hasil pertama muncul dilayar (terminal). Waktu tanggap ini disebut terminal
response time.
Waktu tanggap pada sistem waktu nyata(Real Time)
Pada
sistem waktu nyata, waktu tanggap didefinisikan sebagai waktu dari saat
kejadian (internal atau eksernal) sampai instruksi pertama rutin layanan yang
dimaksud dieksekusi, disebut event response time. Sasaran pendjadwalan adalah
meminimalkan waktu tanggap.
Turn Arround Time
Turn Arround Time
Turn
arround time adalah 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, yaitu; Turn Arround Time = waktu
eksekusi + waktu tunggu Sasaran penjadwalan adalah meminimalkan turn arround
time.
Throughtput
Throughtput
adalah jumlah kerja yang dapat diselesaikan dalam satu unit 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. Kriteria-kriteria
tersebut saling bergabung dan dapat pula saling bertentangan sehingga tidak
dimungkinkan optimasi semua kriteria secara simultan. Contoh :
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.
Sasaran penjadwalan berdasarkan kriteria-kriteria optimasi tersebut :
a. Menjamin tiap proses mendapat pelayanan dari pemroses yang adil.
b. Menjaga agar pemroses tetap dalam keadaan sibuk sehingga efisiensi mencapai maksimum. Pengertian sibuk adalah pemroses tidak menganggur, termasuk waktu yang dihabiskan untuk mengeksekusi program pemakai dan sistem operasi.
c. Meminimalkan waktu tanggap.
d. Meminimalkan turn arround time.
e. Memaksimalkan jumlah job yang diproses persatu interval waktu. Lebih besar angka throughput, lebih banyak kerja yang dilakukan sistem.
Tipe-Tipe Penjadwalan
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.
Sasaran penjadwalan berdasarkan kriteria-kriteria optimasi tersebut :
a. Menjamin tiap proses mendapat pelayanan dari pemroses yang adil.
b. Menjaga agar pemroses tetap dalam keadaan sibuk sehingga efisiensi mencapai maksimum. Pengertian sibuk adalah pemroses tidak menganggur, termasuk waktu yang dihabiskan untuk mengeksekusi program pemakai dan sistem operasi.
c. Meminimalkan waktu tanggap.
d. Meminimalkan turn arround time.
e. Memaksimalkan jumlah job yang diproses persatu interval waktu. Lebih besar angka throughput, lebih banyak kerja yang dilakukan sistem.
Tipe-Tipe Penjadwalan
Terdapat tiga tipe penjadwalan berada secara
bersama-sama pada sistem operasi yang kompleks, yaitu :
1. Penjadwal jangka pendek (short-tem scheduller)
2. Penjadwal jangka menengah (medium-term scheduller)
3. Penjadwal jangka panjang (long-term scheduller)
Penjadwal Jangka Pendek
1. Penjadwal jangka pendek (short-tem scheduller)
2. Penjadwal jangka menengah (medium-term scheduller)
3. Penjadwal jangka panjang (long-term scheduller)
Penjadwal Jangka Pendek
Penjadwal
ini bertugas menjadwalkan alokasi pemroses diantara proses-proses ready di
memori utama. Sasaran utama penjadwal ini memaksimalkan kinerja untuk memenuhi
satu kumpulan kriteria yang diharapakan. Penjadwal ini dijalankan setiap terjadi
pengalihan proses untuk memilih proses berikutnya yang harus dijalankan.
Penjadwal Jangka Menengah
Setelah
eksekusi selama suatu waktu, proses mungkin ditunda karena membuat permintaan
layanan masukan/keluaran atau memanggil suatu system call. Proses-proses
tertunda tidak dapat membuat suatu kemajuan selesai sampai kondisi-kondisi yang
menyebabkan tertunda dihilangkan.
Agar
ruang memori dapat bermanfaat, maka proses dipindah dari memori utama ke memori
sekunder agar tersedia ruang untuk proses-proseslain. Kapasitas memori utama
terbatas untuk sejumlah proses aktif. Aktivitas pemindahan proses yang tertunda
dari memori utama ke memori sekunder disebutswapping.
Penjadwal
jangka menengah adalah menangani proses-proses swapping. Proses-proses
mempunyai kepentingan kecil saat itu sebagai proses yang tertunda. Tetapi,
begitu kondisi yang membuatnya terunda hilang dan proses dimasukkan kembali ke
memori utama dan ready. Penjadwal jangka menengah mengendalikan transisi dari
suspended-ready (dari keadaan suspend ke ready) proses-proses swapping.
Penjadwal Jangka Panjang
Penjadwal
jangka panjang bekerja terhadap antrian batch dan memilih batch berikutnya yang
harus dieksekusi. Batch biasanya adalah proses-proses dengan penggunaan sumber
daya yang intensif (yaitu waktu proses, memori, perangkat I/O), program-program
ini berprioritas rendah, digunakan sebagai pengisi (agar pemroses sibuk) selama
periode aktivitas job-job interaktif rendah. Sasaran utama penjadwal jangka
pangjang adalah memberi keseimbangan job-job campuran. Dikaitkan dengan state-state
proses.
Strategi Pendjadwalan
Terdapat dua strategi penjadwalan, yaitu:
1. Penjadwalan nonpreemptive (run – to – completion)
2. Penjadwalan preemptive
1. Penjadwalan nonpreemptive (run – to – completion)
2. Penjadwalan preemptive
Penjadwalan Nonpreemptive
Begitu proses diberi jatah waktu pemroses
maka pemroses tidak dapat diambil alih oleh proses lain sampai proses itu
selesai.
Penjadwalan Preemptive
Penjadwalan Preemptive
Saat proses diberi jatah waktu pemroses maka
pemroses dapat diambil alih proses lain sehingga proses disela sebelum selesai
dan harus dilanjutkan menunggu jatah waktu pemroses tiba kembali pada proses
itu.
Penjadwalan preemptive berguna pada sistem
dimana proses-proses yang mendapat perhatian tanggapan pemroses secara cepat.
Misalnya :
– Pada sistem waktu nyata, kehilangan interupsi (yaitu interupsi tidak segera dilayani) dapat berakibat fatal.
– Pada sistem interaktif/time-sharing, penjadwalan preemptive penting agar dapat menjamin waktu tanggap yang memadai.
– Pada sistem waktu nyata, kehilangan interupsi (yaitu interupsi tidak segera dilayani) dapat berakibat fatal.
– Pada sistem interaktif/time-sharing, penjadwalan preemptive penting agar dapat menjamin waktu tanggap yang memadai.
Penjadwalan
preemptive bagus, tapi tidak tanpa ongkos. Perlaihan proses (yaitu proses
beralih ke proses lain) memerlukan overhead (karena banyak tabel yang
dikelola). Agar preemptive efektif, banyak proses harus berada di memori utama
sehingga proses-proses tersebut dapat segera running begitu diperlukan.
Menyimpan banyak proses tak running benar-benar di memori merupakan suatu
overhead tersendiri.
0 komentar:
Posting Komentar