UNIX 传奇:历史与回忆 - 布莱恩·W. 克尼汉
UNIX 传奇:历史与回忆 - 布莱恩·W. 克尼汉
程序员朱永胜元数据
[!abstract] UNIX 传奇:历史与回忆
- 书名:UNIX 传奇:历史与回忆
- 作者:布莱恩·W. 克尼汉
- 简介:自 1969 年在贝尔实验室的阁楼上诞生以来,Unix 操作系统的发展远远超出其创造者们的想象。它带动了许多创新软件的开发,影响了无数程序员,改变了整个计算机技术的发展轨迹。本书不但书写 Unix 的历史,而且记录作者的回忆,一探 Unix 的起源,试图解释什么是 Unix,Unix 是如何产生的,以及 Unix 为何如此重要。除此之外,本书以轻松的口吻讲述了一群在贝尔实验室工作的发明天才的有趣往事,本书中每一个故事都是鲜为人知却又值得传播的宝贵资源。本书适合对计算机或相关历史感兴趣的人阅读。读者不需要有太多的专业技术背景,就可以欣赏 Unix 背后的思想,了解它的重要性。
- 出版时间:2021-02-01 00:00:00
- ISBN:9787115557179
- 分类:计算机 - 计算机综合
- 出版社:人民邮电出版社
- PC 地址:https://weread.qq.com/web/reader/9a1323d0724b5da99a1fb47
高亮划线
第 1 章 贝尔实验室
📌 AT&T,即美国电话电报公司(American Telephone and Telegraph Company),由分布于美国各地的多个当地电话公司组合而成
⏱ 2024-06-25 00:22:37 ^38493609-15-969-1051
📌 1925 年,AT&T 创办研发子公司贝尔电话实验室(Bell Telephone Laboratories)
⏱ 2024-06-25 00:23:01 ^38493609-15-1111-1168
1.1 贝尔实验室的物理科学研究
📌 1956 年,晶体管的发明者荣获诺贝尔奖。共有 9 项诺贝尔奖是因获奖者在贝尔实验室工作期间的成果而颁发的。
⏱ 2024-06-25 00:27:00 ^38493609-16-728-779
📌 粗略估算,从 20 世纪 60 年代到 20 世纪 80 年代,贝尔实验室科研部门(主要在墨里山)拥有 3 000 名员工,另外还有 15 000 至 20 000 名员工隶属于其他地区的开发团队
⏱ 2024-06-25 00:27:20 ^38493609-16-864-948
📌 持续的资金投入是研究工作的关键保障。这意味着 AT&T 能布局长远,贝尔实验室的研究员们也能自由探索那些未必有短期回报,甚至可能永无回报的领域。现今世界已全然不同,多数人只做未来几个月的规划,功夫都花在了预测下一季度财务状况上。
⏱ 2024-06-25 00:29:15 ^38493609-16-1601-1717
1.2 通信与计算机科学
📌 噪声来自宇宙太初大爆炸(Big Bang)遗留的背景辐射。彭齐亚斯和威尔逊因这项发现获得了 1978 年的诺贝尔物理学奖
⏱ 2024-06-25 00:31:45 ^38493609-17-567-625
1.4 办公空间
📌 编程风格的第一条规则:写明白,别炫技。
⏱ 2024-06-25 00:39:28 ^38493609-19-3261-3309
第 2 章 Unix 雏形(1969)
📌 Unix 操作系统诞生于 1969 年
⏱ 2024-06-25 09:51:18 ^38493609-21-553-569
2.2 CTSS 和 Multics
📌 麻省理工学院于 1964 年推出的 CTSS(兼容分时系统)
⏱ 2024-06-25 11:48:34 ^38493609-23-383-410
3.4 存储略谈
📌 磁芯内存非常昂贵,因为制造它需要高度熟练的手工劳动。它也很笨重。图 3-12 显示了一个 16K bit(2KB)的磁芯内存,在 1971 年,它大概要卖 1.6 万美元,即每位接近 1 美元。
⏱ 2024-06-25 22:06:27 ^38493609-31-803-891
📌 内存管理不当仍然是 C 语言程序出错的主要原因之一。
⏱ 2024-06-25 22:07:20 ^38493609-31-1744-1768
3.5 丹尼斯·里奇小传
📌 C 语言的起源可以追溯到 20 世纪 70 年代初。
⏱ 2024-06-25 22:10:09 ^38493609-32-1719-1740
4.2 系统调用
📌 调用 open 和 creat 产生的 fd 值称为文件描述符(file descriptor),是一个非负小整数,在后续的文件读写中使用。read 和 write 系统调用尝试从文件读出或向文件写入 n 个字节;系统调用返回实际传输的字节数。对于所有这些系统调用,如果返回负值(通常是 -1),则表示发生了某种错误。
⏱ 2024-06-26 00:06:04 ^38493609-35-1363-1624
4.3 shell[3]
📌 shell 是个普通的用户程序,而非操作系统的组成部分,这也是从 Multics 中汲取的概念(也就是功能列表中提到的所谓 “ 用户可选择系统命令语言 “)。因为 shell 是用户程序,所以很容易用其他程序取代,这就是为什么有那么多 Unix shell 的原因。如果你不喜欢某个 shell 的工作方式,大可另择优者,甚至可以自己写个 shell 取而代之,所以 shell 并不特指哪个具体程序。
⏱ 2024-06-26 00:08:30 ^38493609-36-1020-1205
4.4 管道
📌 管道也许是 Unix 中最引人注目的创新。管道是一种机制,由操作系统提供,并通过 shell 轻松访问。它将程序的输出与另一程序的输入连接起来。操作系统让它发挥作用,只需要一个既简单又自然的 shell 符号就能用起来,结果是得到一种设计和使用程序的新思路。
⏱ 2024-06-26 00:10:52 ^38493609-37-360-483
4.5 Grep 命令
📌 grep 这个名字来自 ed 文本编辑器中的命令 g/re/p
⏱ 2024-06-26 00:14:46 ^38493609-38-1865-1911
4.7 C 语言
📌 可以将 B 语言看作没有类型的 C 语言。更准确地说,它是压缩到 8 KB 内存中、再经汤普森的大脑过滤的 BCPL。它的名字看上去比较像是 BCPL 的缩写。不过也有另一种说法,认为它来源于与 B 语言毫无相关的 Bon 语言,一种由汤普森在 Multics 时期创造的语言。Bon 语言则要么是以他的妻子邦妮的名字命名,要么是(根据其手册中引用的一段百科全书)以某个宗教的名字命名
⏱ 2024-06-26 00:24:21 ^38493609-40-1213-1389
7.1 剥离
📌 到了 1980 年,无论是否接受规管,AT&T 的垄断地位都遭到攻击。美国司法部于 1974 年开始对 AT&T 提起反托拉斯诉讼,理由是 AT&T 不仅控制全国大部分地区的电话服务,而且还控制其电话公司使用的设备,因此 AT&T 把持了全国通信。司法部的方案是,应要求 AT&T 剥离其设备制造业务西部电器公司。
⏱ 2024-06-28 13:46:09 ^38493609-57-360-524
8.4 Plan 9
📌 Plan 9 确实为世界贡献了一件无比重要的东西:Unicode 的 UTF-8 编码。
⏱ 2024-06-28 14:29:07 ^38493609-65-1714-1754
读书笔记
本书评论
书评 No.1
^280435523-7Sj6GqPoH
⏱ 2024-06-29 11:54:16