32Mバイトの壁

読み:さんじゅうにメガバイトのかべ
外語:32MB wall
品詞:名詞

MS-DOS 3.x環境にある

MS-DOS 3.0では、1パーティションが最大32Mバイトまでという制限があった。これが32Mバイトの壁である。

正確にはメガではなくメビ、つまり「32Miバイトの壁」と呼ぶべきだが、当時はまだMi(メビ)という単位がなく、このように「32Mバイトの壁」と呼ばれていた。

壁の技術的内容

MS-DOS 3.0は、セクタ番号を16ビットで管理していた。

従って、512バイト/セクタ×216セクタまで扱えるため、約33Mバイト(32Miバイト)という制限がある。

壁の突破

MS-DOS 3.3から拡張MS-DOSパーティションに対応した。1パーティション最大32Mバイトまでという制限は相変わらずあったが、複数のパーティションを用いれば最大で2Giバイト(FAT16の制限)まで利用できた。

改善はMS-DOS 4.0からで、このときにセクタ番号の内部管理情報量が増やされた。MS-DOS 4.0ではSHARE.EXEを組み込む必要があったが、MS-DOS 5.0以降は内部に同等機能が組み込まれ、本格的に大容量ディスクに対応された。

但し、FAT16ではクラスタ番号が16ビットまでしか扱えない。理論上、64セクタ/クラスタが最大で、この場合はFAT16でも2Giバイトまで扱うことが可能である。但し1クラスタの大きさは32Kiバイト(512バイト/セクタの場合)にもなり、実用的とは言い難い。