为什么 20 世纪 80 年代的 PC 用户需要分区

为什么 20 世纪 80 年代的 PC 用户需要分区

我目前正在从事与文件系统历史相关的研究。

显然主引导记录于1983年随MS-DOS 2推出,这也是第一个支持硬盘的DOS。

MBR 持续了数年,部分原因是我们在 21 世纪初才开始达到其极限。

考虑到当时的限制,我很好奇为什么 IBM 和 Microsoft 从一开始就添加了对分区的支持。我相信双启动和磁盘映像当时都还不存在。FAT16 显然支持高达 4GB 的磁盘。MS-DOS 当时似乎非常实用,所以这个功能对我来说是一个令人惊讶的功能。

为什么分区是如此早期的功能,以及人们如何使用它们?

答案1

虽然 MS-DOS 2.0 添加了 MBR 格式,但实际上不支持使用多个分区. 多分区支持直到 MS-DOS 3.3 才添加1987年。

相反,分区表是用于双启动的。从PC-DOS 2.0 手册

如果您打算将固定磁盘的一部分用于其他操作系统,那么您应该转到本章中的“对固定磁盘进行分区”。

另一个操作系统通常是 Xenix。Xenix用户手册(1984年)

硬盘分区

在本讨论中,我们假设硬盘上只安装两个操作系统。这两个系统是 XENIX 和 MS-DOS。

从某种意义上说,MBR 只是塞进了软盘上的引导扇区。软盘和硬盘 MBR 的第一个扇区都以可执行代码开始,BIOS 将在启动时加载这些代码。MBR 只是选择使用最后 64 个字节该扇区用于存储有关分区的信息,然后将控制权传递给该分区的第一个扇区。

IBM PC 从一开始就出人意料地欢迎替代操作系统。IBM PC/XT 5160 操作指南甚至在第二段中提到第 3 节 操作 IBM 个人计算机 XT

如果您选择编写自己的操作系统,IBM 个人计算机 XT 技术参考手册将提供有价值的信息。

答案2

仅仅因为您不需要双启动并不意味着您不需要分区。

当时存在且仍然存在的一个论点是,您可能出于多种原因希望将操作系统和用户数据放在不同的分区上。

此外,DOS 是为软盘而非硬盘设计的。硬盘刚推出时,其体积比软盘大得多,而较大的体积暴露了文件系统中的问题,如果不将磁盘分区,则无法高效地使用较大的体积。

随着时间的推移,这些文件系统(FAT12、FAT16)已更新以处理更大的大小(FAT32 ext2fs),并最终被具有新的更大限制的新文件系统(fat+ ext4)取代……但最终仍然不够大。历史重演。(exfat ntfs xfs zfs)

这些问题当时就存在,现在仍然存在,我们现在出于相同的原因对磁盘进行分区……还有其他一些原因。

答案3

由于簇大小限制,原始 FAT16(分区类型 0x04)不支持大于 32 MB 的分区大小。FAT16 分区类型 0x06 支持更大的分区大小,并于 1987 年在 Compaq PC-DOS 3.31 中引入,后来在 MS-DOS 4.0 中可用

分区的另一个好处是可以将硬盘外柱面分配给一个分区,将内柱面分配给另一个分区。外柱面速度更快,还可以减少硬盘磁头在分区柱面内的寻道时间。

答案4

块大小问题是一个大问题,而且不仅限于 MS-DOS。我记得(虽然细节有点模糊 - 那是在 1985 年左右)Altos 586-20 上的 MP/M-86 将文件块的数量从 1,024 增加到 2,048,因为 1,024 根本不够。

FAT16 允许大约 2^16 = 64k 个文件。具体数字取决于各种因素,略小一些,但基本上是 64k。到 20 世纪 90 年代初,1 Gig 并不罕见。1 Gig,64k 个簇 = 每簇 16k。更糟糕的是,如果你有 1.5 Gig,每簇 32k。

对于数据库和其他大型文件来说,这没问题。对于大文件和小文件混合的情况,这通常没问题。但是,如果您有很多小文件,那么这将严重浪费宝贵的存储空间,在这种情况下,分区可以真正提高可用空间的利用率。虽然多个物理驱动器通常可以提供更好的性能,但它们通常成本更高,需要更多的空间和功率,因此具有多个分区的单个大型驱动器可以很好地工作。

相关内容