HDDの容量制限理由
アクセスカウンター
[HDDトップに戻る] [トップに戻る]
2021. 9.20 Ver. 1. 1 カウンタ開始
2012. 3.10 Ver. 1. 0 公開初版

1 はじめに
 HDDを使用する際、様々な理由により、最大容量が制限されます。原因としては、マザーボードのBIOSやチップセットによるもの、OSやそのコマンドの制限、HDDの規格によるものが挙げられます。PC-9801/9821シリーズを使用し続ける場合も、これらを把握しておく必要があります。そこで、備忘録的に作成してみました。多分、誤りがあると思いますので、ご指摘頂ければ幸いです。 

2 容量制限一覧表
A欄は1KB=1,024byte、1MB=1,024KB  B欄は1kB=1,000byte 1MB=1,000,000byteで計算

内  容 略号 IDE上限 BIOS上限
シリンダー数 C 65,536(16bit) 1,024(10bit)
ヘッド数 H 16(4bit) 255(8bit)
セクター数 S 255(8bit) 63(6bit)

容量制限 原  因 数値の根拠、解説 機種 OS
A B
32
MB
- MS-DOSの
ファイルシステム
16bitFAT 2^16=65,536
512byte/sector×65,536=33,554,432
33,554,432/1024/1024=32
PC/AT MS-DOS3
128
MB
- MS-DOS3.3 2,048byte/sector×65,536sector=134,217,728byte
134,217,728/1024/1024=128
PC-9801 MS-DOS3.30D
504
MB
528
MB
BIOSとIDE-HDD
のCHS上限
CHS(Cylinder Head Sector)方式でアクセスする際、それぞれのとりうる値の上限から、
1,024cylinder×16head/cylinder×63sector/head×512byte/sector=528,482,305byte
528,482,305/1,024/1,024=
504
PC/AT  
504
MB
528
MB
BIOSとIDE-HDD CHS(Cylinder Head Sector)方式でアクセスする際、それぞれのとりうる値の上限から、
1,024cylinder×17head/cylinder×63sector/head×512byte/sector=528,482,305byte
528,482,305/1,024/1,024=
504→504
PC-9821  
2
GB
2.1
GB
FAT16と32KBCluster 16bitFAT 2^16=65536
32KB/Cluster×65,536=2,097,152KB→2.1GB

32,768×65,536/1,024/1,024/1,024=2
PC-9821 Win95
Ver.4.00.950
Ver.4.00.950a
WinNT_FAT16
2
GB
2.1
GB
FAT16と32KBCluster 16bitFAT 2^16=65,536
32KB/Cluster×65,536=2,097,152KB→2.1GB

32,768×65,536/1,024/1,024/1,024=2
PC-AT Win95
Ver.4.00.950
Ver.4.00.950a
WinNT_FAT16
WinMe_FAT16
4
GB
4.3
GB
FAT16と64KBCluster 16bitFAT 2^16=65,536
64KB/Cluster×65,536=4,294,967,296byte→4.31GB

65,536×65,536/1,024/1,024/1,024=4
PC/AT WinNT_NTFS4
4
GB
4.3
GB
FAT16と64KB
BIOS
16bitFAT 2^16=65,536
64KB/Cluster×65,536=4,294,967,296byte→4.31GB
65,536×65,536/1,024/1,024/1,024=4
 
PC-9821 Win95
8
GB
8.4
GB
BIOS
Int13h
CHS(Cylinder Head Sector)方式でアクセスする際、BIOS側のそれぞれのとりうる値の上限から、
1,024cylinder×255head/cylinder×63sector/head×512byte/sector=8,422,686720byte→8.4GB
8,447,459,328byte/1,024/1,024/1,024=8
PC-9821
PC/AT
Win95_OSR2
Ver.4.00.950b
WinNT_SP4
32
GB
フォーマット時の制限 AWARD BIOS 4.5xのバグに起因する制限
フォーマット時にボリュームの大きさを32GBに制限。32bitFAT 2^32=
PC/AT Win95_OSR2.5
Ver.4.00.950C
64
GB
フォーマット時の制限 フォーマット時にボリュームの大きさを64GBに制限。32bitFAT 2^32= PC/AT WinNT
Win98/FDISK
128
GB
137
GB
LBA
拡張Int13h
LBAの指定上限値28bitから、
512byte/sector×2^28=137,438,953,472→137GB
137,438,953,472/1,024/1,024/1,024=128
PC/AT Win98/FDISK
patch
128
GB
137
GB
LBA LBAの指定上限値28bitから、
512byte/sector×2^28=137,438,953,472→137GB
137,438,953,472/1024/1024/1024=128
PC/AT Win2k(SP2)
WinXP
2
TB
LBAとセクターサイズ LBAの指定上限値32bitから、
512byte/sector×2^32=2,199,023,255,552
2,199,023,255,552/1,024/1,024/1,024/1,024=2
PC/AT Win2k(SP3)
WinXP(SP1)

128MiB:MS-DOS3.3のパーティーション容量上限(PC-9800シリーズのみ?)
544MB:IDEのディスク容量上限
2.1GB:MS-DOSでのFAT16におけるパーティーション容量上限
4.3GB:WindowsNTでのFAT16におけるパーティーション容量上限 or PC-9800シリーズの旧DISK BIOSにおけるディスク容量上限(バグが原因)
8.4GB:DISK BIOS(INT13h)が原因の壁(ディスク容量上限)
32GB:AWARD BIOSのバグが原因の壁(ディスク容量上限) 2000年頃に発覚
64GB:FDISKのバグが原因の壁(Winodwsのみ、ディスク容量上限) or 一部BIOSの仕様(ディスク容量上限)
137GB:拡張INT13h、LBA28のディスク容量上限。BigDriveは2001年6月26日にMaxtorが発表したHDDの仕様。LBAサイズを従来の28bitから48bitに拡張して実現。
2TiB:MBRのディスク容量上限
128PiB:BigDrive(LBA48)のディスク容量上
限(2^48セクタ*2^9Bytes)
16EiB:NTFSの本来の仕様でのパーティーション容量上限(2^64Bytes)
8ZiB:GPTのディスク容量上限(2^64セクタ*2^9Bytes)


[ページのトップに戻る] [トップに戻る]