例如,为啥 Windows 给我的硬盘提供字母 C 而不是 A 或 B?

Posted

技术标签:

【中文标题】例如,为啥 Windows 给我的硬盘提供字母 C 而不是 A 或 B?【英文标题】:Why is Windows giving my hard disk the letter C and not A or B for example?例如,为什么 Windows 给我的硬盘提供字母 C 而不是 A 或 B? 【发布时间】:2010-10-06 14:30:45 【问题描述】:

是因为操作系统是用 C 编程语言编写的吗? 我认为 A 和 B 语言没有那么成功?

我 13 岁,正在尝试用 C# 进行计算机编程。

【问题讨论】:

en.wikipedia.org/wiki/Drive_letter_assignment 欢迎来到 SO 和 SD 的世界 :-) 我第一次感到老了。谢谢你的笑:) 哇,我想如果你 13 岁,你可能还没有任何软盘驱动器的概念。你提出了一个最有趣的理论来解释为什么会这样。我从来没有想过:-) 内存卡/SD卡是这些天的新面貌:见my answer below 【参考方案1】:

Wikipedia 很好地解释了驱动器字母的逻辑:

除了 CP/M 和早期版本的 MS-DOS 外,操作系统根据以下算法分配驱动器号:

    将驱动器号 A:分配给第一个软盘驱动器(驱动器 0),将 B:分配给第二个软盘驱动器(驱动器 1)(如果存在)。 将一个以 C: 开头的驱动器号分配给在第一个物理硬盘上识别的第一个活动主分区。 将后续驱动器号分配给每个后续物理硬盘驱动器上的第一个主分区(如果系统中存在)。 将后续驱动器号分配给每个已识别的逻辑分区,从第一个硬盘驱动器开始,一直到后续的物理硬盘驱动器(如果系统中存在)。 将后续驱动器号分配给任何 RAM 磁盘。 将后续驱动器号分配给任何其他软盘或光盘驱动器。

【讨论】:

【参考方案2】:

这是原始 PC 设计的遗留物。 最初,PC 最多只有 2 个标记为 A 和 B 的软盘驱动器。 一段时间后,硬盘被添加并成为驱动器 C。

【讨论】:

【参考方案3】:

硬盘盘符是 C,因为从历史上看,驱动器 A 和 B 是用于软盘的。它与编写操作系统的语言无关。

【讨论】:

该死——我现在感觉有点老了..这家伙太年轻了,从不知道有软盘的时代。【参考方案4】:

啊,软盘,还记得吗?

您可能会花一下午时间编写最新的杀手级应用程序,然后发现无法保存它,因为它太大而无法放入 5.25 英寸单密度磁盘。

那是软盘真正软盘的时候。薄而脆弱,通常为 5.25" 或 8" 尺寸,尽管 PC 中出现的第一个内部驱动器是 5.25"。如前所述,早期版本的 MS Dos 用于自动将驱动器 A:分配给第一个软盘驱动器和B:到第二个。当时硬盘甚至连个人电脑都装不下。你可以买一个 5mb 的温彻斯特硬盘,它重约 30 公斤,装在一个几乎有现代迷你塔式电脑大小的大型外部机柜中。

如果您的 PC 有双软盘,您可以键入类似“复制 a:b:”的命令将驱动器 A: 的内容复制到驱动器 B:

但这一切都回到了比尔盖茨身价约 10,000 美元的时代!

【讨论】:

Rob:正确。使用复制,您需要定义要复制的内容(例如,. 哇,我认为外部硬盘驱动器相对较新,我没有意识到它们先于内部硬盘:)【参考方案5】:

这是因为 A 和 B 曾经是软盘驱动器,当时软盘驱动器是常态,没有硬盘。字母 C 分配给用户安装的任何硬盘。从那时起,驱动器 A 和 B 就被保留用于软盘驱动器。这与编程语言无关。

【讨论】:

【参考方案6】:

虽然软盘驱动器连接到驱动器 0 和 1(AB),但如今,存储卡和 SD 卡与任何其他驱动器(硬盘驱动器、CD-ROM 读卡器......)一样,并且只需在CC 之后获取任何驱动器号

AB 保留是出于向后兼容的原因。

为了更好地说明(最后,2014 年第一季度)软盘驱动器是如何消失的,请考虑新的 Eclipse 图标:

Lars Vogel 刚刚在他的文章“Eclipse org.eclipse.ui switches to png files and waves good bye to the floppy disk”中引用了这个 Stack Overflow 问题。

它说明下一个 Eclipse Luna 4.4 将不再显示软盘,而是显示“现在有点像 SD 卡”的图标。

它们是由https://twitter.com/enleeten从http://www.l33tlabs.com/设计的,使用png文件来:

支持透明度,因此在深色主题(背景)上也很好看。

我发现差异很微妙:

之后:

之前(旧图标):


这是记录在bug 422175:

有人在推特上提到,如今传统的保存“软盘”习语有些不合时宜。因此,在处理 eclipse 图标时,我们创建了一个新版本的保存图标。

新图标保留了软盘图标的轮廓,但用一些电子触点代替了软盘滑动门,有效地将图标变成了存储卡。这可确保图标被大多数用户识别为“保存”,同时仍代表现代存储媒体。

我附上了一张图片进行比较。

第一行是当前图标, 第二行是一个更极端的变化(使它看起来像一张 SD 卡)和 第三行是我们在此错误中提出的图标。

【讨论】:

【参考方案7】:

在运行 Windows 或 MS-DOS 的计算机上,硬盘驱动器标有驱动器号 C,因为它是硬盘驱动器的第一个可用驱动器号。计算机为软盘驱动器和可移动介质(如磁带驱动器)保留 A: 和 B: 驱动器号,即使计算机中没有安装这些设备也是如此。当您安装其他驱动器并创建新分区时,它们将分配给 C 之后的其他驱动器号,例如 D、E、F、G 等。

Source

【讨论】:

【参考方案8】:

我会说这是因为 A: 和 B: 驱动器传统上是软盘驱动器,早期的计算机要求您使用可引导软盘引导。

我强烈怀疑这些字母是否与编程语言有关。

【讨论】:

【参考方案9】:

认为 DOS 是在软盘驱动器上运行的,而基于 DOS 构建的 Windows 继续使用相同的驱动器号约定...

【讨论】:

【参考方案10】:

The origins of drive letters

*But why the letter "C"? Why not "A" or "B"? Why not "Z?"*

不出所料,答案在于微软的旧 DOS 根源。早在 Windows 出现之前,大多数与 PC 兼容的计算机系统中只有一个磁盘驱动器——软盘驱动器。当时,用户只需在开机前将 DOS 软盘插入计算机,计算机就会启动,或通过软盘上的软件“启动”。 作为计算机中安装的第一个也是唯一一个磁盘驱动器,软盘被分配了字母表的第一个字母。

【讨论】:

所以硬盘应该是 B:? :) 否; B:在有两个软盘驱动器的系统中,分配给第二个磁盘驱动器。稍后硬盘出现了。 是的,以渐进的方式想象它..首先没有驱动器,然后是 A 驱动器..然后 woohoo 2 软盘驱动器!奢华 当年有一台 Radio Shack 的彩色计算机 2,带有 CCR-82 sliderule.mraiow.com/wiki/Tandy_Radio_Shack_CCR-82 盒式磁带播放器。数据存储在 60 分钟磁带上。加载一个 16 K 的文件实际上需要几分钟时间。【参考方案11】:

我认为这是旧版 Microsoft 操作系统的一种遗留问题,其中字母 A 和 B 被分配给软盘驱动器。

【讨论】:

【参考方案12】:

在运行 Windows 或 MS-DOS 的计算机上,硬盘驱动器标有 C: 驱动器号。原因是因为它是硬盘驱动器的第一个可用驱动器号。计算机会为软盘驱动器和可移动介质(如磁带驱动器)保留 A: 和 B: 驱动器号,即使计算机中未安装这些设备也是如此。当您安装其他驱动器并创建新分区时,它们会分配给 C 之后的其他驱动器号,例如 D、E、F、G 等。

【讨论】:

以上是关于例如,为啥 Windows 给我的硬盘提供字母 C 而不是 A 或 B?的主要内容,如果未能解决你的问题,请参考以下文章

为啥 Python 会找到与 Windows 不同的文件大小?

为啥我的苹果电脑的文件不能拷贝到移动硬盘里

请解释为啥这个 C 代码给我一个分段错误?

为啥一种语言编写的dll文件,可以被不同编程语言使用?

为啥我的循环神经网络给我一个错误?

为啥在 vuejs2 中我的默认道具没有传递给我的子组件?