NEXTOR 01 01

From Z80 Machines Wiki
Jump to: navigation, search

1.1 背景

MSX-DOSはMSXコンピュータ用の唯一の公式ディスクオペレーティングシステムです。 2.31と表示された最後のバージョンは、1990年にMSX Turbo-Rコンピュータに付随して登場しました。

MSX-DOSは、MSXコンピュータの大容量記憶装置の唯一の選択肢がフロッピーディスクであった時代に開発され、 "フロッピーディスクのみのオペレーティングシステム"として使用された場合、MSX-DOSは確かにうまく機能します。しかし何年にもわたって、90年代初頭のSCSIおよびIDEハードディスクコントローラから今日のマルチメディアカードリーダーまで、より現代的な大容量ストレージオプションがアマチュア製ハードウェアの形で登場しています。 MSX-DOSはこれらのデバイスを管理するために使用されてきましたが、いくつかの問題がないわけではありません。


  • MSX-DOSはセクタ番号を16ビットエンティティとして扱い、サポートする唯一のファイルシステムはFAT12です。これは単一のファイルシステムボリュームのサイズを32MBに制限します。 FAT16ファイルシステムのサポートを追加するために、非公式のパッチが開発されました。
  • 実際のデバイスドライバ(大容量記憶装置ハードウェアと相互作用するコード)はオペレーティングシステムのカーネルROMに組み込まれており、フロッピーディスクドライブを内蔵したコンピュータや外部のフロッピーディスクコントローラにあります。カーネルROMにカスタムデバイスドライバを埋め込むための公式に文書化された方法はありません。カスタムストレージコントローラハードウェアの開発者は、カスタムドライバを埋め込むためにカーネルコードをリバースエンジニアリングする必要があります。
  • ユーザから見たドライブレターとデバイスドライバAPIによって公開されるデバイスユニットとの間には、固定された直接的な1対1の対応関係があります。たとえば、ドライブA:にアクセスするために、MSX-DOSはドライバに最初のデバイスにアクセスするように要求します。ドライブB:にアクセスするときに2番目のデバイスが照会されている間。これはフロッピーディスクには問題ありませんが、1つ以上のパーティションを持つより複雑なデバイスを使用する場合、ドライブとパーティションの割り当てを管理するのはドライバ(および通常ドライバ開発者が作成する外部ツール)次第です。
  • ブロック化されていないデバイス(CD-ROMなど)の管理は、カーネルコードのリバースエンジニアリングのハードワークを意味するため、非常に困難です。