为什么系统分区是C:\?

sha*_*rgy 5 operating-systems drive-letter partitioning

为什么系统分区是 C:\ 而不是 A:\ 或 B:\?

我知道 A:\ 用于软盘驱动器,但为什么不使用 B:\ 呢?为什么软盘驱动器被用作 A:\ 好像它比系统驱动器更重要?

关于重复的帖子,我将粘贴下面发布的评论,因为它总结了我的想法:

引用 Michael Kjörling:

我不确定我是否同意那个重复的建议。提议的副本询问“A: 和 B: 是什么以及在哪里?” 而这个问题询问“为什么系统分区标记为 C:?”。两者肯定是相关的,答案将来自许多相同的知识,但重点不同

use*_*ser 19

哦,历史的翅膀。

在 Windows 历史上,这可以追溯到 1981 年在 IBM PC 上运行的原始 PC-DOS。(反过来,它的谱系可以追溯到 1970 年代下半叶的 CP/M。)

IBM PC 最初不支持硬盘驱动器。除了硬盘非常昂贵之外,PC 没有配备足够强大的电源来支持硬盘。你可以改造一个硬盘,需要更换电源,添加磁盘控制卡,安装硬盘本身,但很少有人这样做。

我记得,PC-DOS 1.x 甚至不支持硬盘。这是在 PC-DOS 2.0 中引入的,它还增加了对文件系统中目录的支持。在 PC-DOS 1.x 中,您对内容进行分类的方式是为您的情书、商业电子表格、食谱集等使用不同的软盘。在 PC-DOS 2.0 之后,这很可能仍然是一种常见的内容分类方式,直到硬盘在 1980 年代下半叶的某个时候成为一种常见的 PC 附件。

然而,最初的 IBM PC 本身并很容易支持多达两个软盘驱动器。一些系统甚至支持多达四个软盘驱动器,在这种情况下,额外的软盘驱动器被标记C:并且D:在早期版本的 MS-DOS 中,第一个硬盘的第一个分区被称为E:,但这是一种不常见的配置。早期的 BIOS 至少允许最多四个软盘驱动器,通过使用两位(可能的值:0、1、2、3)来返回软盘驱动器的数量减去一(因此是 1、2、3 或4)在BIOS中安装了获取设备列表功能;这很快被获取磁盘类型扩展 该函数原则上可以支持多达 128 个软盘驱动器,但需要完整的 256 次调用才能进行完整的存储设备枚举。

在 DOS 下,第一张软盘仍然被称为A:,第二张软盘被称为B:

由于一个或两个软盘驱动器是一种非常常见的配置,因此将下一个可用盘符用于第一个硬盘的第一个分区是有意义的,而不是简单地使用第一个可用驱动器盘符。就这样,C:诞生了。然而,早期版本的 MS-DOS可以将第一个硬盘分区推送到驱动C:器号,而不是安装额外的软盘驱动器。(有关如何完成分配的更深入讨论,请参阅我的问题,在两个以上的软盘驱动器的情况下,MS-DOS 如何分配驱动器号?在 Retrocomputing SE 上。)由于 DOS 无法从非主分区启动(扩展分区是后来的另一项发明)并且 IBM BIOS 没有真正的能力从第一个可读驱动器以外的任何东西启动,很可能已经做出了决定引用第一个硬盘的第一个分区,C: 即使没有A:B:。为大多数系统中常见的内容指定一个固定的名称是有用的,因为它允许软件提供合理的默认值和文档,以提供合理的示例,而无需大量的“ifs”和“buts”。最终,多软盘驱动器配置失宠了。

在那些日子里,还要注意硬盘足够小,除了专业工作负载外,通常不合理对它们进行子分区。20MB的硬盘已经很大了40MB的已经是非常大了。IIRC,直到 PC-DOS 3.1 才引入了 FAT16,它允许大于 32 MB 的分区,即使使用 FAT12 格式化 32 MB 的分区也已经非常浪费,因为它导致最小分配大小为 8 KB,占整个分区容量的 0.024%,最多允许在分区上存储 4,068 个文件。

如今,我们很少安装任何软盘驱动器,因此 A: 和 B: 已不再普遍使用。但是,将第一个硬盘上的第一个分区称为 C: 的决定仍然有效,因此在 Windows 上我们谈论的是 C: 而不是 A:。

注意C:指的是第一个物理硬盘驱动器的第一个分区不是驱动器本身。DOS 没有提供对物理驱动器本身进行寻址的用户友好方式,但 BIOS 提供了,将其称为驱动器编号 128+ n,其中n是驱动器的 0 索引编号。另一方面,BIOS 没有分区的概念。(软盘驱动器编号为n,其中n是 0 索引。因此,在当时的常见配置中,A:是驱动器 0,B:是驱动器 1,并且C: 是驱动器 128 上的第一个分区。在使用 8 位数字寻址物理驱动器的方案中,IBM PC 的设计者在 1980-1981 年选择了该数字,以 128 作为边界意味着设置或清除单个位,这使得在包括 BIOS 和 OS 在内的软件中进行测试变得微不足道。)

当然,其他操作系统有不同的方式来寻址分区和驱动器。Linux 通常使用 /dev/sd xy其中x是一个字母,y是一个数字,来寻址特定的分区(以及该分区上文件系统的挂载点,用于访问其上的文件);其他类 Unix 系统具有相似但不同的设备命名方案。

  • 我只想补充一点,以上所有内容都恰到好处。此外,即使通常硬盘驱动器默认为 C:,它也可以更改为任何未使用的字母,甚至包括 A 和 B。此外,我已经安装了几次 Windows,其中 c: 已分配给另一个驱动器,Windows 默认它给D:代替。这通常发生在具有恢复分区的 PC 上。 (6认同)

归档时间:

查看次数:

2076 次

最近记录:

8 年,4 月 前