Unix、GNU 与 Linux 的历史:从起源到发展
1. 早期编程与 Unix 的诞生
在 Unix 出现之前,开发者通过提交一叠穿孔卡片来运行程序,每张卡片代表一个命令或命令的一部分。计算机按顺序读取并执行这些卡片,开发者在作业完成后才能收到输出结果,这往往需要几天时间。若代码出错,开发者只能看到错误信息并重新开始。后来,电传打字机和各种分时系统加快了处理速度,但基本模式未变,即按顺序提交字符序列作为批处理作业运行,并接收相应结果。如今,数据在计算机系统中的传输方式依然如此,无论是文本文件、网页、电影还是音乐,本质上都是按顺序传输的字符序列,只是在二进制数据上添加了不同的界面。
到了 20 世纪 60 年代中期,Unix 和其他交互式分时系统应运而生。Unix 及其约定至今仍是计算实践的核心,其影响可见于 DOS、Linux、Mac OS X 甚至 Microsoft Windows 等系统。
1965 年,贝尔实验室和通用电气(GE)参与了麻省理工学院(MIT)的 MULTICS 项目,该项目旨在打造一个稳定的分时操作系统。然而,“多路复用”带来了不必要的复杂性,最终导致贝尔实验室在 1969 年放弃了该项目。随后,Ken Thompson、Dennis Ritchie、Doug McIlroy 和 Joe Ossanna 保留了其中一些想法,去除了大量复杂性,开发出了 Unix,这一名称是对 MULTICS 的一种调侃,因为 Unix 是受 MULTICS 启发的简化操作系统。
Unix 早期引入了管道(pipes)这一重要特性,这是 Doug McIlroy 思考多年并由 Ken Thompson 实现的。管道引入了标准输入(stdin)和标准输出
超级会员免费看
订阅专栏 解锁全文
2205

被折叠的 条评论
为什么被折叠?



