PENJADWALAN PROSES
Latar Belakang
Peningkatan kualitas pembelajaran
merupakan tanggung jawab semua orang (mahasiswa), peningkatan kualitas ini
penting karena dengan adanya kualitas akan meningkatkan daya saing. Sebagai
bangsa yang besar, diperlukan usaha-usaha yang besar pula guna mereformasi
semua lini pembangunan bangsa, terutama pendidikan. Pendidikan merupakan jalur
penting setiap anak di Indonesia yang tentu saja mereka akan menjadi penerus
bangsa ini.
Beranjak dari
hal di atas, kami mendapatkan tugas dalam membuat makalah tentang pembahasan
materi “Penjadwalan Proses” secara berkelompok, dan tentu saja akan kami
kerjakan dengan penuh tanggung jawab.
Terdapat
banyak algoritma penjadwalan, baik non-preemptive maupun preemptive.Sebaliknya
pada penjadwalan preemptive proses dapat disela dan diambil
alih dengan proses lainnya, walaupun prosesnya belum selesai dikerjakan, dan
menunggu jatah waktu untuk melanjutkan proses semula
Pada
masing-masing algoritma terdapat proses-proses yang berbeda-beda. Masing-masing
proses membutuhkan suatu pemahaman yang baik, dan proses-proses tersebut sulit
untuk dipahami dengan hanya dibaca atau dibayangkan tanpa melihat langsung
gambaran dari penjadwalan proses yang dilakukan oleh system operasi tersebut.
Istilah-istilah dalam Penjadwalan Proses
Scheduler adalah bagian sistem operasi
yang mengatur penjadwalan eksekusi proses. Algoritma penjadwalan atau
scheduling algorithm adalah algoritma yang digunakan. Antrian, karena banyak
proses yang muncul secara serentak maka dibuat antrian di depan prosesor.
Antrian, karena banyak proses yang muncul secara serentak maka dibuat antrian di depan prosesor, yang berada dalam keadaan siap dan hanya ada 1 proses yang berada dalam status kerja Prioritas, mengutamakan pada antrian proses karena tidak semua proses sama pentingnya, sehingga dibuat suatu prioritas.
Dalam prioritas, pekerjaan pada prosesor diselesaikan dahulu
baru proses berprioritas akan di proses Preempsi, sama dengan prioritas, tetapi
pada preempsi jika ada proses yang mendapatkan preempsi maka preemsi akan
menghentikan pekerjaan prosesor dan mengeluarkan pekerjaan di dalam prosesor
itu, sehingga proses berpreempsi dapat dilayani prosesor.
Algoritma Penjadwalan Proses
First Come First Served (FCFS)
/ FIFO (First In First Out)
SJF
(Shortest Job First)
Priority Scheduling
Round Robin
First Come First
Served (FCFS)
Merupakan algoritma penjadwalan CPU yang paling sederhana
Proses
yang tiba lebih
dahulu akan dilayani lebih dahulu
Kalau
ada proses tiba pada waktu yang
sama, maka pelayanan mereka dilaksanakan berdasarkan urutan dalam
antrian
Proses
di antrian belakang harus menunggu sampai semua proses di depannya selesai.
Contoh – FCFS
Diketahui 3 buah proses sbb:
Gantt chart
Waiting Time
AWT
FCFS
(2)
Contoh
soal 1:
Jika
diketahui terdapat 5 macam antrian proses, yaitu A-B-C-D-E dengan waktu
kedatangan semuanya 0. Lama proses berturut-turut antara lain: 5-2-6-8-3.
Pertanyaan:
Kapan
dimulainya eksekusi dari tiap-tiap antrian proses tsb?
Kapan
selesai eksekusinya?
Hitung
Turn Arround Time (TA)-nya?
Berata
rata-rata TA?
Rumus
TA
= Waktu Tunggu + Lama Eksekusi
Rata-rata
TA = ∑TA / ∑Job
Waktu
Tunggu = Mulai Eksekusi – Waktu Tiba
FCFS
(3)
Jawaban:
FCFS (4)
FCFS (5)
Contoh
Soal 2:
Jika
diketahui terdapat 5 macam antrian proses, yaitu A-B-C-D-E dengan waktu
kedatangan semuanya 0-1-2-2-5. Lama proses berturut-turut antara lain:
5-2-6-8-3.
Pertanyaan:
Kapan
dimulainya eksekusi dari tiap-tiap antrian proses tsb?
Kapan
selesai eksekusinya?
Hitung
Turn Arround Time (TA)-nya?
Berata
rerata TA?
Rumus
TA
= Waktu Tunggu + Lama Eksekusi
Rerata
TA = ∑TA / ∑Job
Waktu
Tunggu = Mulai Eksekusi – Waktu Tiba
FCFS (6)
FCFS (7)
Berdasarkan
kriteria penilaian penjadwalan:
Fairness
Penjadwalan
FCFS adil
dalam arti semantiks (dalam arti antrian)
Efesiensi
Penjadwalan
FCFS sangat
efisien dalam penggunaan pemroses
Waktu
Tanggap
Penjadwalan
sangat tidak memuaskan, karena proses dapat
menunggu lama
Turn
Arround Time
Penjadwalan
FCFS tidak bagus
Throughput
Penjadwalan
FCFS tidak
bagus.
Shortest
Job First
Dasar
prioritas adalah pendeknya proses.
Makin
pendek/singkat proses makin tinggi prioritasnya
Langkah
I: tentukan urutan prioritas berdasarkan pendeknya proses yang dilayani
Langkah
II: penentuan proses mana yang
dilayani oleh pemroses
Setiap proses yang ada dalam ready queue akan dieksekusi
berdasarkan burst time terkecil
Hal ini mengakibatkan waiting time yang pendek untuk
setiap proses, maka rerata waiting time (AWT) juga menjadi pendek
Algoritma ini dikatakan optimal
SJF (2)
Contoh
Soal 1:
SJF (3)
SJF (4)
SJF (5)
SJF (6)
Priority Scheduling
Merupakan algoritma yang mendahulukan
proses yang memiliki prioritas tertinggi
Prioritas proses ditentukan berdasar:
Time limit
Memory requirement
File access
Perbandingan antara burst proses dengan CPU
Tingkat kepentinagn proses
PS (2)
Priority scheduling dapat dijalankan secara preemptive
dan non-preemptive
Preemptive à jika ada proses yang baru datang memiliki prioritas
lebih tinggi dari proses yang sedang berjalan, maka proses yang sedang berjalan
tsb dihentikan, lalu CPU dialihkan untuk proses yang baru datang tersebut
Non preemptive à proses yang baru datang tidak dapat menganggu proses
yang sedang berjalan, tapi hanya diletakkan di depan queue
PS (3)
Kelemahan PS adalah terjadinya infinite blocking (starvation),
yaitu suatu proses dengan prioritas yang rendah memiliki kemungkinan tidak
pernah dieksekusi jika terdapat proses lain yang memiliki prioritas lebih
tinggi
Solusi dari starvation adalah aging, yaitu
meningkatkan prioritas dari setiap proses yang menunggu dalam queue secara
bertahap
PS (4)
Contoh : setiap 10 menit, prioritas dari masing-masing
proses yang menunggu dalam queue dinaikkan 1 tingkat.
Maka proses yang memiliki prioritas 127, setidaknya dalam
21 jam 20 menit, proses tsb akan memiliki prioritas 0, yaitu prioritas yang
tertinggi
Contoh 2 – PS
Diketahui 5 proses dengan urutan proses sbb:
ROUND ROBIN
Algoritma ini menggilir proses yang
ada di antrian. Proses akan mendapat jatah sebesar time quantum.
Jika time quantum-nya habis atau proses sudah selesai, CPU akan
dialokasikan ke proses berikutnya
Proses ini cukup adil, karena tidak ada
proses yang diprioritaskan
Semua proses mendapat jatah waktu yang
sama dari CPU yaitu 1/n, dan tidak akan
menunggu lebih lama dari (n-1)q; dimana q adalah lama 1 quantum
Algoritma RR sepenuhnya bergantung
besarnya time quantum (TQ).
Jika TQ terlalu besar, algoritma ini akan
sama saja dengan algoritma FCFS
Jika TQ terlalu kecil, akan semakin banyak
peralihan proses sehingga banyak waktu yang terbuang
Permasalahan algoritma RR
Permasalahan utamanya adalah menentukan
besarnya TQ. Jika TQ yang ditentukan terlalu kecil, maka sebagian besar proses
tidak akan selesai dalam 1 quantum.
Akibatnya akan terjadi banyak switch,
padahal CPU memerlukan waktu untuk beralih dari satu proses ke proses yang lain
(= context switches time)
Sebaliknya, jika TQ yang ditentukan
terlalu besar, algoritma RR akan berjalan seperti FCFS
TQ ideal adalah jika 80% dari total proses
memiliki CPU burst time yang lebih kecil dari 1 TQ
Urutan Kejadian RR
Penggunaan TQ
Contoh sederhana
Contoh 2
Diketahui 3 proses sbb:
TQ
= 3
Gantt chart
Burst Time

PENUTUP
A.
KESIMPULAN
Penjadwalan proses yaitu kumpulan
kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan urutan
kerja yang dilakukan oleh sistem komputer.
Penjadwalan bertugas
menentukan proses mana yang harus berjalan serta kapan dan berapa lama proses
itu berjalan.
Kriteria untuk mengukur
dan optimasi kerja penjadwalan yaitu : Adil,efisiensi,waktu tanggap,turn
arround time dan throughtput. Trdapat tiga tipe penjadwalan dalam sistem
operasi yaitu : penjadwalan jangka pendek, jangka menengah, dan jangka panjang.
Macam-macam strategi penjadwalan di bagi menjadi 2 yaitu: penjadwalan
nonpreempive dan penjadwalan preempive.
Komentar
Posting Komentar