龙八头号玩家为你整理相关体育消息:
打开“此电脑”,看到C盘、D盘、E盘排成一列,这个动作几乎刻进了每个Windows用户的肌肉记忆。
但很少有人停下来想过:为什么是字母?
为什么主硬盘偏偏是C,而不是A?
这套约定比很多人想象的更老。
最早把盘符层级做成主流的,是1974年为8位机诞生的CP/M(Control Program for Microcomputers),它被认为是微机上第一款流行操作系统。
1981年IBM PC时代开启,行业转向16位机,CP/M的位置被MS-DOS取代——微软买下86-DOS,改头换面成PC DOS和MS-DOS,分别面向IBM机器和兼容机。
字母的排序,其实是被软驱“占座”占出来的。
早期PC架构里软驱是标配,硬件和BIOS都预期最多两个软驱,A:和B:就此被牢牢钉在这两个位置上。
80年代的机器从双5.
25英寸软驱,逐渐变成一台5.
25英寸加一台3.
5英寸,身份依旧是A:和B:。
转折点在1983年。
IBM PC XT成为IBM第一款把内置硬盘作为标准配置的电脑,可A:和B:已经被软驱占了,硬盘只能顺位拿到C:。
后面的故事大家都知道了。
更关键的是,这个习惯被制度化了。
1991年的MS-DOS 5.
0明确规定,C:保留给主硬盘,哪怕系统上插了不止两个软驱也不变。
光驱和DVD-ROM则默认顺延拿走D:和E:。
软驱后来灭绝了,字母却没退场。
有人会问:为什么不把A:和B:让给主盘和副盘?
答案很朴素——大多数操作系统不这么干活。
它们要照顾向后兼容、几十年的约定,以及最现实的一条:别把软件搞坏。
应用默认你的主存储盘就是C:,所有安装路径、配置、系统文件都按这个前提写死。
无论是老的DOS生态还是后来的Windows世界,改动默认值都会平白无故地破坏新旧软件的兼容性。
而且Windows在设计上就把A:和B:区别对待,你就算想把启动盘设成A:或B:,系统也不允许。
Linux走的是另一条路。
它不把每个盘当成独立的文件树,而是用一棵统一的目录树从根向外(或向下)铺开整个文件系统。
作为类Unix系统,它把盘挂载成文件夹。
两边的目录能一一对上号: /home 下每个用户一个文件夹,对应Windows的 C:\Users /bin 和 /usr/bin 分别放系统文件和用户二进制程序,对应 C:\Windows\System32 和 C:\Program Files /lib 和 /usr/lib 放共享库与内核模块,对应 C:\Windows\System32 /boot 放引导程序和内核文件,引导配置则在 /etc 里和其他配置文件作伴 Windows把引导程序藏在一个隐藏的EFI分区,内核放在 C:\Windows\System32。
Linux用户则把可移动盘挂到 /media 或 /run/media 下。
所有这些指定目录,都活在“/”根目录之下。
说白了,Linux把一切当文件,给系统、用户、配置、引导各留了专用目录;
Windows则把大量系统数据、软件和文档一股脑堆在同一个C:里。
Windows这套看着直观,Linux的目录分离却带来几样实打实的好处。
换盘或扩容时不用担心文件路径断掉,因为盘和物理磁盘是解耦的;
统一文件树还能让多块磁盘、多台服务器和云存储呈现为单一的同质驱动器;
用终端写脚本、管文件也更干净,不用应付盘符的来回变动。
四十年下来,微软不换盘符的理由很清楚:保住硬件和软件两头的向后兼容。
而Linux在1990年代初登场时,统一文件树带来了明确的优势。
两种做法谈不上谁绝对更优,但Linux那套在很多地方确实讲得通。
特别
以上内容由龙八头号玩家整理发布。