Algoritma Lanjut Pertemuan 10

Download Report

Transcript Algoritma Lanjut Pertemuan 10

Beberapa istilah yg sering
muncul

Average Turn Around Time
Rata-rata waktu total yg dibutuhkan sebuah proses
dari datang sampai selesai dieksekusi oleh CPU

Burst Time
Waktu yg dibutuhkan utk mengeksekusi sebuah
proses

Average Waiting Time
Rata-rata waktu yang dihabiskan proses selama
berada pada status ready ( menunggu eksekusi CPU
)
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
1
Algoritma Penjadualan

First-Come, First-Served
◦ Algoritma ini akan mendahulukan proses yang
lebih dulu datang
◦ Kelemahan algoritma ini adalah waiting time
rata-rata yang cukup lama
◦ Muncul istilah convoy effect, dimana proses
lain menunggu satu proses besar
mengembalikan sumber daya CPU
◦ Algoritma ini nonpreemptive
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
2
Algoritma Penjadualan

Round-Robin Schedulling
◦ 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.
◦ Tak ada proses yang diprioritaskan
◦ Jika time quantum terlalu besar, sama saja
dengan algoritma first-come first-served,
jika terlalu kecil akan semakin banyak
peralihan proses sehingga banyak waktu
terbuang
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
3
Algoritma Penjadualan

Priority Schedulling
◦ Algoritma ini memberikan skala prioritas
kepada tiap proses
◦ Proses yang mendapat prioritas terbesar
akan didahulukan.
◦ Algoritma ini dapat preemptive maupun
nonpreeemptive
◦ Kelemahan dari algoritma ini adalah proses
dengan prioritas kecil tidak akan mendapat
jatah CPU. Hal ini dapat diatasi dengan
aging, yaitu semakin lama menunggu,
prioritas semakin tinggi.
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
4
Algoritma Penjadualan

Multilevel Queue Schedulling
◦ Algoritma ini mengelompokkan antrian dalam
beberapa buah antrian
◦ Antrian-antrian tersebut diberi prioritas
◦ Tiap antrian boleh memiliki algoritma yang
berbeda
◦ Semakin tinggi tingkatan prioritasnya, semakin
besar jatah waktu CPU-nya
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
5
Algoritma Penjadualan

Shortest-Job First Schedulling
◦ Proses diatur menurut panjang CPU burst
berikutnya (lebih tepatnya shortest next CPU
burst).
◦ Waiting time rata-rata dari algoritma ini sangat
kecil, sehingga layak disebut optimal
◦ Kelemahan algoritma ini yaitu kita tak pernah tahu
secara pasti panjang CPU burst proses berikutnya
◦ Algoritma ini dapat merupakan preemptive atau
nonpreemptive. Jika preemptive, jika ada proses
datang dengan sisa CPU burst yang lebih kecil
daripada yang sedang dieksekusi, maka proses
tersebut akan menggantikan proses yang sedang
dieksekusi
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
6
Beberapa istilah yg sering
muncul

Average Turn Around Time
Rata-rata waktu total yg dibutuhkan sebuah proses dari
datang sampai selesai dieksekusi oleh CPU

Burst Time
Waktu yg dibutuhkan utk mengeksekusi sebuah proses

Average Waiting Time
Rata-rata waktu yang dihabiskan proses selama berada
pada status ready ( menunggu eksekusi CPU )
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
7
First-Come, First-Served
◦ Algoritma ini akan mendahulukan proses yang
lebih dulu datang
◦ Kelemahan algoritma ini adalah waiting time
rata-rata yang cukup lama
◦ Muncul istilah convoy effect, dimana proses
lain menunggu satu proses besar
mengembalikan sumber daya CPU
◦ Algoritma ini nonpreemptive
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
8
Contoh Kasus
PROSES
BRUST TIME
WAKTU KEDATANGAN
P1
24
0
P2
3
1
P3
3
2
Gant Chart :
T
P2
P1
0
Waiting Time
P1 = 0 | P2 = 24 – 1 = 23
Average Waiting Time =
Turn Around Time
T
T
P3
24
27
|
P3 = 27 – 2 = 25
30
0 + 23 + 25
= 16
3
P1 = 24 | P2 = 27 – 1 = 26 | P3 = 30 – 2 = 28
Average Turn Arround Time =
24 + 26 + 28
= 26
Sumber Kepustakaan :
3
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
9
Round-Robin
Schedulling
◦ 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.
◦ Tak ada proses yang diprioritaskan
◦ Jika time quantum terlalu besar,
sama saja dengan algoritma firstcome first-served, jika terlalu kecil
akan semakin banyak peralihan
proses sehingga banyak waktu
terbuang
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
10
Contoh Kasus
PROS
ES
BRUST
TIME
WKT
KEDATANGAN
P1
9
0
P2
6
1
Gant Chart :
P1
0
Waiting Time
P2
P1 = 0 + 3 + 3 = 6
Average Waiting Time =
Turn Around Time
T
P1
6
3
Time Quantum
3
P2
9
T
P1
12
15
| P2 = ( 3 - 1 ) + 3 = 5
6 + 5
= 5.5
2
P1 = 15 | P2 = 12 – 1 = 11
Average Turn Arround Time =
15 + 11
= 13
2
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
11
Priority Schedulling
◦ Algoritma ini memberikan skala prioritas
kepada tiap proses
◦ Proses yang mendapat prioritas terbesar
akan didahulukan.
◦ Algoritma ini dapat preemptive maupun
nonpreeemptive
◦ Kelemahan dari algoritma ini adalah proses
dengan prioritas kecil tidak akan mendapat
jatah CPU. Hal ini dapat diatasi dengan
aging, yaitu semakin lama menunggu,
prioritas semakin tinggi.
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
12
Contoh Kasus Priority Preemptive
PROSES
BRUST TIME
WKT KEDATANGAN
PRIORITY
P1
9
0
3
P2
6
1
2
P3
3
2
1
Gant Chart :
0
P
1
1
P
2
T
T
P2
P3
2
5
T
P1
10
18
Waiting Time
P1 = 0 + ( 10 – 1 ) = 9 | P2 = 0 + ( 5 – 2 ) = 3 | P3 = 0
9 + 3+ 0
Average Waiting Time =
= 4
3
Turn Around Time
P1 = 18 | P2 = 10 – 1 = 9 | P3 = 5 – 2 = 3
Average Turn Arround Time =
18 + 9 + 3
= 10
3
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
13
Contoh Kasus Priority Nonpreemptive
PROSES
BRUST TIME
WKT KEDATANGAN
PRIORITY
P1
9
0
3
P2
6
1
2
P3
3
2
1
Gant Chart :
T
T
P1
0
P2
P3
9
T
12
18
Waiting Time
P1 = 0 | P2 = ( 12 - 1 ) = 11 | P3 = ( 9 - 2 ) = 7
0 + 11 + 7
Average Waiting Time =
= 6
3
Turn Around Time P1 = 9 | P2 = 18 – 1 = 17 | P3 = 12 – 2 = 10
Average Turn Arround Time =
9 + 17 + 10
= 12
3
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
14
Shortest-Job First
Schedulling
◦ Proses diatur menurut panjang CPU burst
berikutnya (lebih tepatnya shortest next CPU
burst).
◦ Waiting time rata-rata dari algoritma ini sangat
kecil, sehingga layak disebut optimal
◦ Kelemahan algoritma ini yaitu kita tak pernah
tahu secara pasti panjang CPU burst proses
berikutnya
◦ Algoritma ini dapat merupakan preemptive
atau nonpreemptive. Jika preemptive, jika ada
proses datang dengan sisa CPU burst yang
lebih kecil daripada yang sedang dieksekusi,
maka proses tersebut akan menggantikan
proses yang sedang dieksekusi
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
15
Contoh Kasus JFS Preemptive
PROSES
BRUST TIME
WKT KEDATANGAN
P1
9
0
P2
6
1
P3
3
2
Gant Chart :
0
P
1
1
P
2
T
T
P2
P3
2
5
T
P1
10
18
Waiting Time
P1 = 0 + ( 10 – 1 ) = 9 | P2 = 0 + ( 5 – 2 ) = 3 | P3 = 0
9 + 3+ 0
Average Waiting Time =
= 4
3
Turn Around Time
P1 = 18 | P2 = 10 – 1 = 9 | P3 = 5 – 2 = 3
Average Turn Arround Time =
18 + 9 + 3
= 10
3
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
16
Contoh PROSES
KasusBURST
SJFTIME
Non-preemptive
WKT KEDATANGAN
P1
9
0
P2
6
1
P3
3
2
Gant Chart :
P1
T
P2
P3
9
0
Waiting Time
T
T
12
18
P1 = 0 |
P2 = ( 12 - 1 ) = 11 | P3 = ( 9 - 2 ) = 7
0 + 11 + 7
Average Waiting Time =
= 6
3
Turn Around Time P1 = 9 | P2 = 18 – 1 = 17 | P3 = 12 – 2 = 10
Average Turn Arround Time =
9 + 17 + 10
= 12
3
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
17
Multilevel Queue Schedulling
◦ Algoritma ini mengelompokkan antrian dalam
beberapa buah antrian
◦ Antrian-antrian tersebut diberi prioritas
◦ Tiap antrian boleh memiliki algoritma yang
berbeda
◦ Semakin tinggi tingkatan prioritasnya, semakin
besar jatah waktu CPU-nya
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
18
Latihan Soal…
PROSE
S
BURST TIME
PRIORITY
WKT
KEDATANGAN
P1
10
3
0
P2
4
1
2
P3
5
2
4
Gambar Gant Chart dan Tentukan Avg. Waiting Time serta
Avg. Turn Arround Time dari ketiga proses di atas dengan algoritma :
a)
b)
c)
d)
FCFS
SJF ( preemptive )
Round-Robin, q = 5
Priority ( non-preemptive )
Sumber Kepustakaan :
www.mdp.ac.id/...1/.../SI314-111061945-9.ppt
19