另辟蹊「径」,看操作系统的发展

💡 原文中文,约6100字,阅读约需15分钟。
📝

内容提要

文件路径在不同操作系统中的表示方式不同。早期操作系统使用不同的分隔符,如Multics使用'>', '<',Unix使用'/', Windows使用'\'。选择分隔符需要考虑字符特性、键盘布局和兼容性。Unix和Windows的表示方式简单易用,因此普及。

🔎

延伸解读

路径分隔符背后的键盘逻辑

文章指出,路径分隔符的选择与键盘布局密切相关。Unix 选择“/”是因为在 Lear-Siegler ADM-3A 终端键盘上,“/”就在“<”和“>”旁边,且无需按 Shift 键即可直接输入。Multics 使用“<”和“>”则是因为其采用的 Teletype Model 37 键盘上这两个符号独占键位,同样无需 Shift。这体现了操作系统设计中对输入效率的考量。

DOS 选项字符的 DEC 渊源

DOS 和 Windows 使用“\”作为路径分隔符,是因为“/”已被用作选项字符。文章提到,微软软件工程师 Larry Osterman 认为这与 DEC 操作系统的习惯有关,许多 DOS 实用程序由 IBM 编写,使用“/”作为选项字符,而微软早期员工中有 DEC-20 的老手,可能继承了这一传统。《MS-DOS 百科全书》也指出 MS-DOS 1.x 借鉴了 DEC 操作系统的传统。

反斜杠的短暂历史

“\”在 20 世纪 60 年代前还十分少见。1960 年 IBM 发布“扩展字符集标准”才出现其影子,1961 年 Bob Bemer 提议将其纳入 ASCII 以支持 ALGOL 的逻辑运算符,因此被称为“反斜杠之父”。此外,在日文和韩文版 Windows 中,“\”会显示为货币符号(¥/₩),这是因为 ISO-646 将 0x5c 定义为可本地化代码点,为了兼容性微软保留了这一映射。

❓

Q&A

不同操作系统中,文件路径的分隔符有哪些?

不同操作系统中,文件路径的分隔符包括Unix使用的'/',Windows使用的'\',以及早期Multics使用的'>'和'<'。

为什么Unix选择'/'作为路径分隔符?

Unix选择'/'作为路径分隔符是因为它易于输入且不与输入/输出重定向字符冲突。

Windows为何使用'\'而不是'/'作为路径分隔符?

Windows使用'\'作为路径分隔符是因为'/'在DOS中已被用作选项字符,避免了与DOS的冲突。

Multics在文件路径表示中使用了哪些符号?

Multics在文件路径表示中使用了'>'作为绝对路径分隔符和'<'作为相对路径分隔符。

文件路径分隔符的选择对操作系统设计有什么影响?

文件路径分隔符的选择影响了操作系统的易用性和学习成本,反映了不同操作系统之间的相互影响。

苹果操作系统在路径表示上有哪些变化?

苹果操作系统在路径表示上经历了多种变化,包括使用'-'、'/'和':'等符号,最终在Mac OS X中采用了'/'。

🏷️

标签

➡️

继续阅读