HDDの容量と実際の容量が異なることはよくある話。
たとえば、8GBのディスクイメージは次のように表示される。
8GBだけど、7. 97 GBと表示される。
実際にどのような計算になっているのか
fdisk をして、掛け算して計算してみよう。
takuya@rena:~/Desktop$ sudo fdisk /dev/disk1 Disk: /dev/disk1 geometry: 968/255/63 [ sectors] Signature: 0xAA55 Starting Ending #: id cyl hd sec - cyl hd sec [ start - size] ------------------------------------------------------------------------ 1: 0B 0 130 3 - 968 220 20 [ 8192 - 15556608] Win95 FAT-32 2: 00 0 0 0 - 0 0 0 [ 0 - 0] unused 3: 00 0 0 0 - 0 0 0 [ 0 - 0] unused 4: 00 0 0 0 - 0 0 0 [ 0 - 0] unused
実際の容量?
商品の容量は8GBだったとして、その通りの容量がないのはみんな知ってる。
ディスクは512Bを1セクタとしているので、容量は次のように「表記」される。
使えるバイト数
バイト数 = セクタ数xセクタ容量 なので、次のように計算される。
15564800*512 = 7,969,177,600
表示上のバイト数
ディスクイメージやファイルの容量は、次のように計算される。
15564800*512/1000/1000/1000 = 7.9691776 ≒ 7,97 GB
ただし、1024 で換算すると・・・
15564800*512/(2^30) = 7.421875
ディスクイメージを扱うときは、GB や MB などLinuxコマンドは容量を受け付けてくれるし、セクタ数も使えるので、単位には十分に注意しないと。。。
参考資料
http://pc.watch.impress.co.jp/docs/2003/0922/it010.htm
http://archive.linux.or.jp/JF/JFdocs/Large-Disk-HOWTO-3.html