Tuesday, 2 February 2021

Desain dan Pratek Sitem Operasi

 Soal dan Penyelesaian Desain dan Pratek Sitem Operasi

1.       Swapping memori yang terdiri dari ukuran hole sebagai berikut:  420 kb, 321 kb, 654 kb, 125 kb, 70 kb, 19 kb, 16 kb, dan 256 kb. Data yang akan diswap untuk permintaan berturut-turut
(i) 18 kb ; (ii) 86 kb; (iii) 42 kb. Gambarkan dan Jelaskan mekanisme swapping untuk (a) first fit? (b) untuk best fit, (c) untuk worst fit, dan (d) untuk next fit Algorithm.


penyelesaian :


Terdapat antrian dengan ukuran hole :


420 kb

321 kb

654 kb

125 kb

70 kb

19 kb

16 kb

16 kb

256 kb

 

Permintaan

I = 18 kb

II = 86 kb

III = 42 kb

 

A. first fit

 

Pencarian dimulai dari awal dan akan berhenti jika ditemukan lokasi pertama yang cukup besar untuk menempatkan proses tersebut. 

 

420 kb

321 kb

654 kb

125 kb

70 kb

19 kb

16 kb

16 kb

256 kb

18kb,86kbdan42kb

 

 

 

 

 

 

 

 

Maka permintaan 1, 2, 3 dengan ukuran 18 kb, 86 kb dan 42 kb di tempatkan pada partisi awal yakni 420 kb karna mampu menampung 3 permintaan tersebut.

 

B. Best fit

 

Pencarian dimulai dari awal dan akan berhenti jika ditemukan lokasi terkecil pertama yang cukup untuk menempatkan proses tersebut. 

 

420 kb

321 kb

654 kb

125 kb

70 kb

19 kb

16 kb

16 kb

256 kb

 

 

 

(ii) 125kb

(iii) 42 kb

(i) 18 kb

 

 

 

 

Untuk permintaan pertama yaitu 18 kb di letakkan pada partisi 19 kb

Permintaan kedua yaitu 86 kb di letakkan pada partisi 125 kb

Permintaan ketiga yaitu 42 kb di letakkan pada partisi 70 kb

 

 

C. worst fit

 

Pencarian dimulai dari awal dan akan berhenti jika ditemukan lokasi yang paling besar yang cukup untuk menempatkan proses tersebut. 

 

420 kb

321 kb

654 kb

125 kb

70 kb

19 kb

16 kb

16 kb

256 kb

 

 

18kb,86kbdan42kb

 

 

 

 

 

 

 

Maka ketiga permintaan pertama di tempatkan di partisi dengan lokasi paling besar yaitu partisi 654 kb

 

D. next fit

 

Sama dengan first-fit hanya saja pencarian tidak dimulai dari awal, tapi dari lokasi terakhir kali menemukan segmen yang cocok dan akan berhenti jika ditemukan lokasi pertama yang cukup besar untuk menempatkan proses tersebut

 

Permintaan pertama : 18 kb

 

420 kb

321 kb

654 kb

125 kb

70 kb

19 kb

16 kb

16 kb

256 kb

 

 

 

 

 

 

 

 

18 kb

bila datang data yang berukuran 18 Kb dan pencarian partisi dimulai dari urutan ke tujuh karena sebelumnya posisi terakhir pencarian di partisi keenam (19kb), maka data tersebut  akan menempati partisi ukuran 256 Kb.

 

Permintaan 86 Kb

 

420 kb

321 kb

654 kb

125 kb

70 kb

19 kb

16 kb

16 kb

256 kb

 

 

 

 

 

 

 

 

86 Kb

bila datang data yang berukuran 86 Kb dan pencarian partisi dimulai dari urutan ke lima karena sebelumnya posisi terakhir pencarian di partisi ke empat(125kb), maka data tersebut  akan menempati partisi ukuran 256 Kb.

 

Permintaan 42 Kb

 

420 kb

321 kb

654 kb

125 kb

70 kb

19 kb

16 kb

16 kb

256 kb

 

 

 

 

 

 

 

 

42 Kb

bila datang data yang berukuran 42 Kb dan pencarian partisi dimulai dari urutan ke enam karena sebelumnya posisi terakhir pencarian di partisi ke lima (70kb) , maka data tersebut  akan menempati partisi ukuran 256 Kb.

2. Ada 4 proses A, B, C, D. tiba pada daerah critical pada waktu yang berbeda, dimana A tiba 4ms (ms = milli second) lebih lambat dari B yang waktu tunggunya adalah 5ms, dan 8ms berikutnnya setelah B tiba, proses C tiba. Proses C tiba lebih cepat 10ms dari D.  Jika waktu layanan masing-masing proses adalah : A = 210ms; B = 110ms; C =140ms; D = 50ms. Buatlah gant chart dan Hitunglah AWT (Average Waiting Time) untuk algoritma: (1) Round Robin dengan quantum time 3  (2). SJF. (3) FCFS.

penyelesaian :

Round Robin

Proses

Burst Time

Proses A

210 ms

Proses B

110 ms

Proses C

140 ms

Proses D

50 ms

 

Quantum time       = 3 ms

Gant chart             = (210 + 110 + 140 + 50)

                              = 510

 

PA

PB

PC

PD

PA

PA

PA

PA

PA

PA

PA

PA

PA

….

PA

0     4     114   254   304   307   310   313   316   319   322   325   328   331   334…510

 

AWT.PA   = PA(Qt) – PA(i)

                  = 304 – 3

                  = 301

 

      PA       = ( 304 + 110 + 140 + 50)/4

                  = 604 / 5

                  = 120.8 ms

 

B.     SJF

Proses

Burst Time

Proses A

210 ms

Proses B

110 ms

Proses C

140 ms

Proses D

50 ms

 

Gantchart

PD

PA

PC

PB

0      50        260      400    510    

 

AWT         = (0 + 50 + 260 + 400) /3

                  = 710 / 3

                  = 236.6 ms

C.     FCFS

Proses

Burst Time

Proses A

9ms

Proses B

5ms

Proses C

13ms

Proses D

23ms

 

PA

PB

PC

PD

PB

PA

PC

PD

0       5         14      27       50

 

AWT         = (0 + 5 + 14 + 27) / 4

                  = 46 / 5

                        = 9.2 ms


3. Andaikan  posisi head/arm pada disk berada pada cylinder 40.  Kemudian ada  new request  untuk cylinders 37, 26, 15, 45, 21, 16, 34, 79, dan 17. Buatlah skematis untuk disk arm scheduling algoritms dan hitung total pergerakan head dengan: 

(a). FCFS, (b). SSF, (c) SCAN, (d). C-LOOK.

penyelesaian :

(A) FCFS

Bentuk algoritma penjadwalan disk yang paling sederhana adalah First Come First Served (FCFS). Sistem kerja dari algoritma ini melayani permintaan yang lebih dulu datang di queue. Algoritma ini pada hakekatnya adil bagi permintaan M/K yang mengantri di queue karena penjadwalan ini melayani permintaan sesuai waktu tunggunya di queue. Tetapi yang menjadi kelemahan algoritma ini adalah bukan merupakan algoritma dengan layanan yang tercepat.

Head Start                          = 40

Queue                               = 37, 26, 15, 45, 21, 16, 34, 79, 17

Total Pergerakan Head       = 209 Silinder

Next cylinder accessed

Number of cylinder traversed

37

3

26

11

15

11

45

30

21

24

16

5

34

18

79

45

17

62

Total Pergerakan Head

209 silinder

 

0

15

16

17

21

26

34

37

40

45

79

(A) SSF

Shortest-Seek-Time-First (SSTF) merupakan algoritma yang melayani permintaan berdasarkan waktu pencarian yang paling kecil dari posisi head terakhir. Sangat beralasan untuk melayani semua permintaan yang berada dekat dengan posisi head yang sebelumnya, sebelum menggerakan head lebih jauh untuk melayani permintaan yang lain.

 

Head Start                          = 40

Queue                               = 37, 26, 15, 45, 21, 16, 34, 79, 17

Total Pergerakan Head       = 51 Silinder

Next cylinder accessed

Number of cylinder traversed

37

3

34

3

26

8

21

5

17

4

16

1

15

1

0

15

45

45

79

34

Total Pergerakan Head

51 silinder

 

0

15

16

17

21

26

34

37

40

45

79

Scan

Pada algoritma SCAN, head bergerak ke silinder paling ujung dari disk. Setelah sampai disana maka head akan berbalik arah menuju silinder di ujung yang lainnya. Head akan melayani permintaan yang dilaluinya selama pergerakannya ini. Algoritma ini disebut juga sebagai Elevator Algorithm karena sistem kerjanya yang sama seperti yang digunakan elevator di sebuah gedung tinggi dalam melayani penggunanya. Elevator akan melayani pengguna yang akan menuju ke atas dahulu sampai lantai tertinggi, baru setelah itu dia berbalik arah menuju lantai terbawah sambil melayani penggunanya yang akan turun atau sebaliknya. Jika melihat analogi yang seperti itu maka dapat dikatakan head hanya melayani permintaan yang berada di depan arah pergerakannya. Jika ada permintaan yang berada di belakang arah geraknya, maka permintaan tersebut harus menunggu sampai head menuju silinder di salah satu disk, lalu berbalik arah untuk melayani permintaan tersebut.


Head Start                          = 40

Queue                               = 37, 26, 15, 45, 21, 16, 34, 79, 17

Disk arm bergerak ke silinder terkecil

Total Pergerakan Head       = 51 Silinder

Next cylinder accessed

Number of cylinder traversed

37

3

34

3

26

8

21

5

17

4

16

1

15

1

0

15

45

45

79

34

Total Pergerakan Head

51 silinder

 

0

15

16

17

21

26

34

37

40

45

79

(A)   C-LOOK

Algoritma C-LOOK berhasil memperbaiki kelemahan-kelemahan algoritma SCAN, C-SCAN, dan LOOK. Algoritma C-LOOK memperbaiki kelemahan LOOK sama seperti algoritma C-SCAN memperbaiki kelemahan SCAN. Algoritma C-LOOK adalah algoritma penjadwalan disk yang secara konsep hampir sama dengan algoritma C-SCAN. Bedanya pada algoritma C-LOOK, disk arm tidak berjalan sampai ujung disk, tetapi hanya sampai pada permintaan yang paling dekat dengan ujung disk. Setelah melayani permintaan tersebut, disk arm akan berbalik arah dari arah pergerakannya yang pertama dan langsung berjalan ke permintaan yang paling dekat dengan ujung disk yang lain kemudian melayani permintaan tersebut. Setelah selesai melayani permintaan tersebut, disk arm akan berbalik arah kembali dan melayani permintaan-permintaan lain yang ada di depannya sesuai dengan arah pergerakannya.

 

Head Start                          = 40

Queue                               = 37, 26, 15, 45, 21, 16, 34, 79, 17

Disk arm bergerak ke silinder dengan no terbesar

Total Pergerakan Head       = 125 Silinder

 

Next cylinder accessed

Number of cylinder traversed

45

5

79

34

15

64

16

1

17

1

21

4

26

5

34

8

37

3

Total Pergerakan Head

125 silinder

 

0

15

16

17

21

26

34

37

40

45

79


4. Beberapa resource pada komputer direquest oleh proses-proses sebagai berikut:

1.       Proses A holds M and wants L  

2.       Proses B holds K and  wants M

3.       Proses C holds H and P

4.       Proses D holds P and wants M and L

5.       Proses E holds N and wants O

6.       Proses F holds V and wants L

7.       Proses G holds O and wants N

8.       Proses Z hold nothing, request M and Q

a.       Buatlah resource graph dari kondisi tersebut.

b.       Jelaskan state mana yang terjadi terjadi deadlock dan mana yang tidak deadlock?

penyelesaian :

a. .....

b. State yang terjadi deadlock  adalah V, H dan K. State yang tidak terjadi deadlock  adalah P, D, L, F, C, Q, Z, A, M, B, E, O, G, dan N


5. Andaikan kapasitas memori = 8 M, menggunakan management memori dengan Buddy System.  Jika terjadi request dengan ukuran page 76kb, 32kb, 126kb, 123kb, 70kb, 64kb   

a.       Buatlah  “tree” dan tabelnya dengan urutan permintaan pemakaian memori tersebut.

b.       Hitunglah berapa kb internal fragmentation.

c.       Hitunglah berapa kb eksternal fragmentation

penyelesaian :

a).....

b) Hitunglah berapa kb internal fragmentation.

= (64-76) + (64-32) + (32-126) + (32-123) + (32-70) + (32- 64)

= -44 + (-32) – (-94) – (-91) + (-38) – (-32)

= 147 kb

 

c) Hitunglah berapa kb eksternal fragmentation

= (64+76) - (64+32) - (32+126) - (32+123) - (32+70) - (32+ 64)

= 140 + 96 – 128 – 155 + 102 – 96

= -41kb

6. Suatu memori diinisialisasikan mula-mula kosong, kemudian terjadi page refrences order 0 0 0 1 2 3 0 1 4 0 1 2 3 4 dengan algoritma FIFO. (a). gambarkan dan jelaskan proses pergantian page dan hitung jumlah page fault untuk 3 page frame.  (b). Lakukan lagi untuk 4 page frame, (c) Apakah terjadi Anomaly Belady? Jelaskan.

penyelesaian :

a.       Proses pergantian page dan jumlah page fault untuk 3 page frame

Old Page

0

1

2

3

0

1

4

0

1

2

3

4

Page Frame 1

0

0

0

3

3

3

4

 

 

4

4

 

Page Frame 2

 

1

1

1

0

0

0

 

 

2

2

 

Page Frame 3

 

 

2

2

2

1

1

 

 

1

3

 

Page Fault

F

F

F

F

F

F

F

 

 

F

F

 

 

Proses Fault = 9 Fault

b.      Proses pergantian page dan jumlah page fault untuk 4 page frame

Old Page

0

1

2

3

0

1

4

0

1

2

3

4

Page Frame 1

0

0

0

0

 

 

4

4

 

 

 

 

Page Frame 2

 

1

1

1

 

 

1

0

 

 

 

 

Page Frame 3

 

 

2

2

 

 

2

2

 

 

 

 

Page Frame 3

 

 

 

3

 

 

3

3

 

 

 

 

Page Fault

F

F

F

F

 

 

F

F

 

 

 

 


Proses Fault = 6 Fault

c. Tidak terjadi anomaly belady karena  seiring bertambahnya page frame, jumlah page fault berkurang.