写点什么

Linux 内核发展史(二):Unix 操作系统

  • 2020-03-04
  • 本文字数:2313 字

    阅读完需:约 8 分钟

Linux内核发展史(二):Unix操作系统

Linux 是由赫尔辛基大学的 Linus Torvalds 开发的,在系统开发期间得到了因特网上广大 UNIX 程序员的帮助。它最初只是受 Andy Tanenbaum 教授的 Minix (—个小型的类 UNIX 系统)启发而开发的一个程序,纯属个人爱好,但后来它逐步发展成为一个完整的系统。Linux 的成功来源于其之前操作系统和应用软件——主要是 Unix 和 GNU——的已有工作,本小结我们将介绍一下 Unix 的发展简史。

一、Unix 操作系统发展历史

UNIX 操作系统最初是由贝尔实验室开发的,当时的贝尔实验室是电信业巨头 AT&T (美国电报电话公司)旗下的一员。UNIX 是在 20 世纪 70 年代为 DEC (数字设备公司)的 PDP 系列计算机设计的,它现在已成为一种非常流行的多用户、多任务操作系统。UNIX 操作系统可以运行在大量不同种类的硬件平台上,其适用范围从 PC 工作站一直到多处理器服务器和超级计算机。


Unix 系统的主要特点有[1]:


  1. 简单性:许多很有用的 UNIX 工具是非常简单的,因此也是很小并易于理解的。

  2. 集中性:在 UNIX 中,当用户出现新的需求时,我们通常是把小工具组合起来以完成更复杂的任务,而不是试图将一个用户期望的所有功能放在一个大程序里。

  3. 可重用组件:将应用程序的核心实现为库。具有简单而灵活的编程接口、文档齐备的库可以常助其他人开发出同类程序,或者把这些技术应用到新的应用领域。

  4. 过滤器:许多 UNIX 应用程序可用作过滤器。也就是说,它们对输入进行转换并产生输出。

  5. 开放的文件格式:比较成功并流行的 UNIX 程序都使用纯 ASCII 码的文本文件或 XML 文件作为配置文件和数据文件。

  6. 灵活性:你不能期待用户都能非常正确地使用你的程序。所以,你在編程时应尽景考虑到灵活性,尽量避免随意限制字段长度或记录数目。


最初的 Unix 是用汇编语言编写的,一些应用是由叫做 B 语言的解释型语言和汇编语言混合编写的。B 语言在进行系统编程时不够强大,所以汤普逊和里奇对其进行了改造,并与 1971 年共同发明了 C 语言。1973 年汤普逊和里奇用 C 语言重写了 Unix。在当时,为了实现最高效率,系统程序都是由汇编语言编写,所以汤普逊和里奇此举是极具大胆创新和革命意义的。用 C 语言编写的 Unix 代码简洁紧凑、易移植、易读、易修改,为此后 Unix 的发展奠定了坚实基础。


1974 年,汤普逊和里奇合作在 ACM 通信上发表了一篇关于 UNIX 的文章,这是 UNIX 第一次出现在贝尔实验室以外。此后 UNIX 被政府机关,研究机构,企业和大学注意到,并逐渐流行开来。


1975 年,UNIX 发布了 4、5、6 三个版本。1978 年,已经有大约 600 台计算机在运行 UNIX。1979 年,版本 7 发布,这是最后一个广泛发布的研究型 UNIX 版本。20 世纪 80 年代相继发布的 8、9、10 版本只授权给了少数大学。此后这个方向上的研究导致了九号计划的出现,这是一个新的分布式操作系统。


1982 年,AT&T 基于版本 7 开发了 UNIX System Ⅲ的第一个版本,这是一个商业版本仅供出售。为了解决混乱的 UNIX 版本情况,AT&T 综合了其他大学和公司开发的各种 UNIX,开发了 UNIX System V Release 1。 这个新的 UNIX 商业发布版本不再包含源代码,所以加州大学柏克莱分校继续开发 BSD UNIX,作为 UNIX System III 和 V 的替代选择。BSD 对 UNIX 最重要的贡献之一是 TCP/IP。BSD 有 8 个主要的发行版中包含了 TCP/IP:4.1c、4.2、4.3、4.3-Tahoe、4.3-Reno、Net2、4.4 以及 4.4-lite。这些发布版中的 TCP/IP 代码几乎是现在所有系统中 TCP/IP 实现的前辈,包括 AT&T System V UNIX 和 Microsoft Windows。其他一些公司也开始为其自己的小型机或工作站提供商业版本的 UNIX 系统,有些选择 System V 作为基础版本,有些则选择了 BSD。BSD 的一名主要开发者,比尔·乔伊,在 BSD 基础上开发了 SunOS,并最终创办了太阳计算机系统公司。


1991 年,一群 BSD 开发者(Donn Seeley、Mike Karels、Bill Jolitz 和 Trent Hein)离开了加州大学,创办了 Berkeley Software Design, Inc (BSDI)。BSDI 是第一家在便宜常见的 Intel 平台上提供全功能商业 BSD UNIX 的厂商。后来 Bill Jolitz 离开了 BSDI,开始了 386BSD 的工作。386BSD 被认为是 FreeBSD、OpenBSD 和 NetBSD、DragonFlyBSD 的先辈。AT&T 继续为 UNIX System V 增加了文件锁定,系统管理,作业控制,流和远程文件系统。1987 到 1989 年,AT&T 决定将 Xenix(微软开发的一个 x86-pc 上的 UNIX 版本),BSD,SunOS 和 System V 融合为 System V Release 4(SVR4)。这个新发布版将多种特性融为一体,结束了混乱的竞争局面。


1993 年以后,大多数商业 UNIX 发行商都基于 SVR4 开发自己的 UNIX 变体了。


UNIX System V Release 4 发布后不久,AT&T 就将其所有 UNIX 权利出售给了 Novell。Novell 期望以此来对抗微软的 Windows NT,但其核心市场受到了严重伤害,最终 Novell 将 SVR4 的权利出售给了 X/OPEN Consortium,后者是定义 UNIX 标准的产业团体。最后 X/OPEN 和 OSF/1 合并,创建了 Open Group。Open Group 定义的多个标准定义着什么是以及什么不是 UNIX。实际的 UNIX 代码则辗转到了 Santa Cruz Operation,这家公司后来出售给了 Caldera Systems。Caldera 原来也出售 Linux 系统,交易完成后,新公司又被重命名为 SCO Group。


下图以树状图的形式展示了从 Unix 系统衍生出的各种操作系统[2]:



值得注意的是 Unix v6 这个操作系统,从图中可以看出,几乎现在常用的那些操作系统都是从 Unix v6 衍生而来的,我们将重点关注衍生出 Linux 的那个分支。

二、总结

本小节中我们简要介绍了有关 Linux 内核的一个重要基础——Unix 操作系统。下一小节我们将介绍 Linux 应用程序的一个重要来源——GNU。




参考文献


[1]《Linux 程序设计(第四版)》


[2] https://www.cnblogs.com/alantu2018/p/8991158.html


2020-03-04 14:251859

评论 1 条评论

发布
用户头像
不错

2021-04-14 09:55
回复
没有更多了
发现更多内容

《使用Gin框架构建分布式应用》阅读笔记:p108-p126

codists

Go gin 编程人

yolov5模型s,l,m,x的区别

百度搜索:蓝易云

AI练中学,你的 AI 助教又升级啦!

豆包MarsCode

海量大模型如何一键部署上云?函数计算 x ModelScope 社区给出答案

阿里巴巴云原生

阿里云 云原生 函数计算

重磅!望繁信科技与德勤中国签署战略合作协议

望繁信科技

数字化转型 流程挖掘 流程资产 流程智能 数字北极星

低代码平台:让系统开发随需而变,轻松应对各种需求!

EquatorCoco

低代码

广东传媒行业先锋沙龙:携手华为云,共谋数智媒体发展大格局

Geek_2d6073

centos下Makefile独立模块编译ko

百度搜索:蓝易云

Qualcomm IPQ9574, IPQ9554, and IPQ9570: Cutting-Edge WiFi 7 Solutions for Industrial and Commercial Applications

wifi6-yiyi

WiFi7

软件测试学习笔记丨Selenium浏览器的操作者driver

测试人

软件测试

端口频繁遭遇攻击,又该如何应对?

网络安全服务

防火墙 服务器 DDoS 端口 DDoS 攻击

TVL突破 4 亿美元,Pencils Protocol 或将持续登录头部CEX

股市老人

TVL突破 4 亿美元,Pencils Protocol 或将持续登录头部CEX3

西柚子

设计模式进一步解读

邱学喆

设计模式 设计原则 中间类

04.原型模式设计思想

杨充

背靠超70万用户,Pencils Protocol 或将持续登录顶级CEX

BlockChain先知

TVL突破 4 亿美元,Pencils Protocol 或将持续登录头部CEX

大瞿科技

Smart Image Cropping API:图像裁剪自动化解决方案

幂简集成

API API 接口

应对复杂架构下的监控挑战?统一运维可观测能力是关键!

袋鼠云数栈

云计算 可观测性

QCN9074 vs. QCN9024: Why the Wallystech DR9074 Stands Out! Discover Its Features and Benefits

wallyslilly

QCN9074 QCN9024

一文搞懂SaaS应用架构:应用服务、应用结构、应用交互设计

不在线第一只蜗牛

架构 SaaS

算法比赛中常用的快读

快乐非自愿限量之名

算法

ETLCloud+Doris组合:数据集成,更简单更高效

RestCloud

数据库 Doris ETL 数据集成

阿里巴巴商品详情API返回值中的促销与优惠信息

技术冰糖葫芦

API 接口 API 文档 API 测试 API 性能测试

11月23-24日“企业级敏捷教练课程”—— CSP-SM认证培训开班啦!

ShineScrum捷行

为什么mac打不开rar文件 苹果电脑打不开rar压缩文件怎么办

阿拉灯神丁

压缩工具 解压软件 苹果电脑解压缩 压缩和解压缩工具 BetterZip 5下载

TVL突破 4 亿美元,Pencils Protocol 或将持续登录头部CEX

加密眼界

TVL突破 4 亿美元,Pencils Protocol 或将持续登录头部CEX

石头财经

在研发度量中,如何为非技术型领导提供信息?

思码逸研发效能

DevOps 研发效能 研发效能度量 研发效能管理

华为云RDS for MySQL数据库助力秒音数智化转型,引领社交电商新风尚

YG科技

鸿蒙迎来有史以来最大升级,生态发展一日千里

这不科技

Linux内核发展史(二):Unix操作系统_服务革新_华为云开发者联盟_InfoQ精选文章