Waktu rata-rata untuk membaca satu sektor (disk)

2

Jika ada disk magnetik sebagai berikut:

Waktu pencarian rata-rata: 12 ms

Tingkat rotasi: 3600 RPM

Kecepatan transfer: 3,5 MB / detik

Jumlah sektor per trek: 64

Ukuran sektor: 512 byte

Overhead pengontrol: 5,5 ms

Berapa rata-rata waktu untuk membaca satu sektor? Saya tidak yakin bagaimana / mengapa 2 bagian dihitung.

Kita perlu tahu:

  Seek time: 12 ms
  Average rotational delay: The answer here should be 8.3 but why? 60000/7200 would indeed give me 8.3 but why do I need to double the 3600?
  Transfer time: Not sure what to do here. Sector size is 512 bytes and rate is 3.5 MB/sec -- what do I need to calculate here? 
  Overhead: 5.5ms

Waktu Akses Disk: Saya yakin jawabannya sekitar 25 ms

Menghasilkan dari (mencari waktu) 12 ms + (penundaan rotasi rata-rata) 8,3 + (waktu transfer)? + (overhead) 5,5 ms.

Carlo
sumber

Jawaban:

1

Kita perlu tahu:

Cari waktu: 12 ms (diberikan dalam teks)

Penundaan rotasi rata-rata: 3600 RPM = 60 revs per detik, atau 16,7 ms / rev. Rata-rata setengahnya, atau 8,3 ms.

Waktu transfer: 512 / 3,5 MB / s = 146 µs - namun, akan butuh sedikit lebih lama untuk benar-benar membaca sektor ini, karena ada 64 sektor pada disk, dan disk berputar sekali setiap 16,7 ms, setiap sektor akan membutuhkan 16,7 ms / 64 = 260 µs untuk dibaca. Karena ini lebih besar dari waktu transfer, itu adalah angka yang digunakan.

Overhead: 5,5 ms (diberikan dalam teks)

Waktu Akses Disk:

Waktu pencarian (12 ms) + Penundaan rotasi rata-rata (8,3 ms) + Waktu baca sektor (260 µs) + Overhead (5,5 ms) = 26,1 ms

Mungkin saja, tergantung pada cara kerja pengontrol disk, sektor ini dapat dibaca ke dalam buffer perangkat keras (260 μs) dan kemudian ditransfer ke memori (146 μs) sebagai dua operasi terpisah, dalam hal ini jawabannya adalah 26.2 ms sebagai gantinya.

tcrosley
sumber
bukankah waktu akses = mencari waktu + penundaan rotasi, waktu transfer = mencari waktu + waktu membaca sektor?
Suraj Jain
@SurajJain Mencari waktu dan penundaan rotasi terpisah. Waktu mencari adalah waktu bagi kepala untuk bergerak dari satu trek atau silinder pada permukaan disk ke yang lain. Tetapi Anda kemudian harus menunggu penundaan rotasi rata-rata (setengah rotasi disk) hingga sektor yang diinginkan berada di bawah kepala sebelum Anda dapat mulai membaca.
tcrosley
Pak saya katakan, bahwa waktu akses = mencari waktu + penundaan rotasi. Dan waktu trasfer = waktu akses + waktu membaca sektor ?? Iknow mencari dan waktu rotasi berbeda
Suraj Jain
"waktu transfer = waktu akses + waktu baca sektor" bukan itu yang Anda katakan di komentar pertama, yaitu "waktu transfer = cari waktu + waktu baca sektor" di mana Anda meninggalkan penundaan rotasi (menginspirasi komentar saya yang lain). Saya tidak mempertimbangkan salah satu dari waktu transfer tersebut, saya menganggap waktu transfer menjadi waktu yang diperlukan untuk membaca sektor setelah lokasinya, yang mana yang lebih besar dari waktu membaca sektor atau waktu berdasarkan tingkat transfer maksimum dari pengontrol. Anda pada dasarnya menyamakan waktu transfer menjadi waktu akses disk.
tcrosley
lalu apa yang dibaca waktu, juga pemahaman saya bahwa waktu transefer = waktu baca + waktu akses terinspirasi oleh video ini youtube.com/watch?v=d0xn68w3KPE 8:43 bagian.
Suraj Jain