Senin, 16 Juni 2014

Apa itu Penjadwalan SCAN dan C-SCAN

Penjadwalan SCAN dan C-SCAN

Pada algoritma SCAN, head bergerak ke silinder paling ujung dari disk. Setelah sampai disana makahead 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.

Jika head sedang melayani permintaan silinder 25, dan arah pergerakan disk arm-nya sedang menuju ke silinder yang terkecil, maka permintaan berikutnya yang akan dilayani secara berurutan adalah 20 dan 10 lalu menuju ke silinder 0. Setelah sampai disini head akan berbalik arah menuju silinder yang terbesar yaitu silinder 99. Dalam pergerakannya itu secara berurutan head akan melayani permintaan 35, 45, 50, 65, 80, 85, dan 90. Sehingga total pergerakan head-nya adalah 115 silinder.


Salah satu behavior yang dimiliki oleh algoritma ini adalah, memiliki batas atas untuk total pergerakanhead-nya, yaitu 2 kali jumlah silinder yang dimiliki oleh disk. Jika dilihat dari cara kerjanya yang selalu menuju ke silinder terujung, maka dapat dilihat kelemahan dari algoritma ini yaitu ketidakefisienannya. Mengapa head harus bergerak ke silinder 0, padahal sudah tidak ada lagi permintaan yang lebih kecil dari silinder 10?. Bukankah akan lebih efisien jika head langsung berbalik arah setelah melayani permintaan silinder 10 (mengurangi total pergerakan head )? Kelemahan inilah yang akan dijawab algoritma LOOK yang akan dibahas di sub-bab berikutnya.

SCAN


Untuk lebih jelasnya perhatikan contoh berikut:

Next cylinder accessedNumber of cylinder traversed
205
1010
010
3535
4510
505
6515
8015
855
905
Total pergerakan head 115 silinder


Kelemahan lain dari algoritma SCAN adalah dapat menyebabkan permintaan lama menunggu pada kondisi-kondisi tertentu. Misalkan penyebaran banyaknya permintaan yang ada di queue tidak sama. Permintaan yang berada di depan arah pergerakan head sedikit sedangkan yang berada di ujung satunya lebih banyak. Maka head akan melayani permintaan yang lebih sedikit (sesuai arah pergerakannya) dan berbalik arah jika sudah sampai di ujung disk. Jika kemudian muncul permintaan baru di dekat head yang terakhir, maka permintaan tersebut akan segera dilayani, sehingga permintaan yang lebih banyak yang berada di ujung silinder yang satunya akan semakin kelaparan. Jadi, mengapa head tidak melayani permintaan-permintaan yang lebih banyak itu terlebih dahulu? Karena adanya kelemahan inilah maka tercipta satu modifikasi dari algoritma SCAN, yaitu C-SCAN yang akan dibahas berikutnya.

Algoritma C-SCAN atau Circular SCAN merupakan hasil modifikasi dari SCAN untuk mengurangi kemungkinan banyak permintaan yang menunggu untuk dilayani. Perbedaan yang paling mendasar dari kedua algoritma ini adalah pada behavior saat pergerakan head yang berbalik arah setelah sampai di ujung disk. Pada C-SCAN, saat head sudah berada di silinder terujung disk, head akan berbalik arah dan bergerak secepatnya menuju silinder di ujung disk yang satu lagi, tanpa melayani permintaan yang dilalui dalam pergerakannya. Sedangkan pada SCAN akan tetap melayani permintaan saat bergerak berbalik arah menuju ujung yang lain.

Untuk contoh permintaan seperti SCAN, setelah head sampai di silinder 99 (permintaan silinder 35, 45, 50, 65, 80, 85 dan 90 telah dilayani secara berurutan), maka head akan secepatnya menuju silinder 0 tanpa melayani silinder 20 dan 10. Permintaan tersebut baru dilayani ketika head sudah berbalik arah lagi setelah mencapai silinder 0.

C-SCAN

Untuk lebih jelasnya perhatikan contoh berikut:

Next cylinder accessedNumber of cylinder traversed
3510
4510
505
6515
8015
855
905
999
099
1010
2010
Total pergerakan head 193 silinder

Dengan sistem kerja yang seperti itu, terlihat bahwa head melayani permintaan hanya dalam satu arah pergerakan saja, yaitu saat head bergerak ke silinder terbesar atau saat bergerak ke silinder terkecil. sifatnya yang harus sampai ke silinder terujung terlebih dahulu sebelum bergerak berbalik arah, C-SCAN seperti halnya SCAN mempunyai ketidakefisienan untuk total pergerakan head. Untuk itulah dibuat algoritma LOOK yang akan dibahas berikut ini.

Sumber : bebas.vlsm.org
thumbnail
Judul: Apa itu Penjadwalan SCAN dan C-SCAN
Rating: 100% based on 99998 ratings. 5 user reviews.
Ditulis Oleh

Artikel Terkait edukasi, technology, teknologi, teknology, tips trik :

0 komentar:

Posting Komentar

 
Copyright © 2013. About - Sitemap - Contact - Privacy
Template Seo Elite oleh Bamz