UNIX分支及演化史

1.起源:Research UNIX(1969-1979)

诞生背景

  • 时间:1969年,贝尔实验室
  • 地点:美国新泽西州 Murray Hill
  • 人物:Ken Thompson、Dennis Ritchie、Brian Kernighan 等
  • 硬件:DEC PDP-7 → PDP-11
  • 前身:Multics(Project Multics,受CTSS分时系统启发)
  • 最初名称:Unics(UNiplexed Information and Computing System,反语取名)

早期版本演进

版本 年份 关键特性
Unix V1 1971 首个公开版本,汇编语言编写
Unix V2-V5 1972-1973 逐步完善文件系统
Unix V6 1975 完整C语言重写(1973年开始),可移植性奠定基础
Unix V7 1979 最后一个广泛发布的Research UNIX版本,现代UNIX的根源

Unix V7是后续所有UNIX分支的共同祖先


2.三大主线演化(1979年后)

                        ┌──────────────────────────────────────┐
                        │        Unix V7 (1979)                │
                        └──────────────────────────────────────┘
                                       │
          ┌────────────────────────────┼────────────────────────────┐
          │                            │                            │
          ▼                            ▼                            ▼
  ┌───────────────┐         ┌───────────────┐         ┌───────────────┐
  │ AT&T商用分支   │         │ 伯克利BSD分支  │          │ 贝尔实验室研究  │
  │ (System V)    │         │   (BSD)       │         │  版本         │
  └───────────────┘         └───────────────┘         └───────────────┘

分支一:AT&T商用UNIX(System V路线)

版本 年份 说明
UNIX System III 1981 首个商用UNIX,基于V7开发
UNIX System V Release 2 1984 增加进程间通信机制
UNIX System V Release 3 1986 Streams I/O、网络改进
UNIX System V Release 4 (SVR4) 1988 历史性的合并版本

SVR4 的意义

  • 融合了 AT&T System V + 伯克利BSD技术 + SunOS + Xenix
  • 引入:虚拟内存改进、流媒体(I/O Streams)、TCP/IP协议栈增强
  • 成为后来商业UNIX的技术基础

分支二:伯克利BSD路线

版本 年份 关键特性
2BSD 1979 首个伯克利发行版
3BSD 1979 引入虚拟内存
4BSD 1980 网络功能增强
4.1BSD 1981 改进进程调度
4.2BSD 1983 TCP/IP协议栈首次整合
4.3BSD 1986 VAX平台广泛应用
4.3BSD-Tahoe 1988 支持Motorola 68020
4.4BSD-Lite 1994 CSRG最后版本,清除AT&T代码

BSD的贡献

  • 虚拟内存管理
  • TCP/IP网络协议栈
  • SIGCHLD信号、套接字接口
  • vi编辑器、csh shell
  • NFS网络文件系统

分支三:贝尔实验室研究版本

版本 年份 说明
System VIII 1985 实验性发布
System IX 1986 Streams系统深入开发
System X 1987 内部研究版本
System X 1989 CSRG终止前的最后一个版本

贝尔实验室的研究版本最终演变为4.4BSD-Lite,CSRG于1994年解散


3.商业UNIX厂商分化(1980s-1990s)

              SVR4 + BSD技术融合
                   │
    ┌──────────────┼──────────────┬──────────────┐
    ▼              ▼              ▼              ▼
 ┌──────┐     ┌──────┐     ┌──────┐     ┌──────┐
 │Solaris│     │  AIX │     │HP-UX │     │IRIX  │
 │ (Sun) │     │(IBM) │     │ (HP) │     │(SGI) │
 └──────┘     └──────┘     └──────┘     └──────┘
厂商 产品 基础架构 特点
Sun Microsystems Solaris (原SunOS) SVR4 + BSD 企业级服务器,ZFS文件系统,DTrace性能分析
IBM AIX System V PowerPC架构,大型主机集成,WebSphere应用服务器
HP/HPE HP-UX System V PA-RISC/Itanium架构,可靠性优先
SGI IRIX System V MIPS架构,图形工作站,OpenGL先驱
DEC Tru64 UNIX OSF/1 Alpha架构,后被Compaq收购
Novell UnixWare SVR4 收购AT&T UNIX商标后发布

4.开源UNIX家族的崛起

Linux(1991-至今)

要素 说明
创始人 Linus Torvalds(芬兰赫尔辛基大学学生)
起点 1991年,为替代教学用MINIX而开发内核
许可证 GPL(GNU General Public License)
内核 单内核(Monolithic),模块化设计
里程碑 1993年Debian首发;2004年Ubuntu首发;2011年Android基于Linux内核

Linux生态

  • 内核本身不是完整操作系统,需要GNU工具集配合
  • 发行版(Distribution):Red Hat、SUSE、Ubuntu、Debian、CentOS等
  • 与POSIX.1兼容,但未通过UNIX商标认证(不能自称”UNIX”)

BSD家族的现代发展

项目 状态 特点
FreeBSD 活跃开发 性能优化,ZFS支持, jails虚拟化
NetBSD 活跃开发 跨平台能力最强(Port支持最多)
OpenBSD 活跃开发 安全性优先,代码审计严格
macOS/Darwin Apple官方 基于Mach微内核+BSD用户空间

5.Darwin与macOS(2001-至今)

Apple收购NeXT (1996)
        │
        ▼
 NeXTSTEP操作系统(基于Mach微内核+BSD)
        │
        ▼
 Darwin内核(Mach + FreeBSD组件)
        │
        ├─────── Intel架构:Mac OS X (2001)
        │             ├── Leopard (10.5)
        │             ├── Snow Leopard (10.6)
        │             └── 至今:macOS Sequoia (15.x)
        │
        └─────── ARM架构:iOS/iPadOS/tvOS/watchOS

Darwin的核心特性

  • 基于Mach 3.0微内核(Carnegie Mellon University)
  • BSD用户空间(FreeBSD 4.4基础)
  • 通过Open Group UNIX 03认证(唯一消费级认证UNIX
  • POSIX.1-2008 compliant

6.UNIX标准化运动

主要标准组织

组织 标准 说明
IEEE POSIX.1 (ISO/IEC 9945) 系统调用和库函数接口标准
The Open Group Single UNIX Specification (SUS) UNIX商标认证依据
ISO ISO/IEC 9945 POSIX的国际化版本
ANSI ANSI C (C89/C99/C11) C语言标准,影响系统编程

SUS版本演进

版本 年份 新增内容
SUSv1 1994 约1170个接口(Spec 1170)
SUSv2 1997 XSI扩展完善
SUSv3 2001 POSIX.1-2001,线程增强
SUSv4 2008 约1833个接口,异步I/O、自旋锁等
SUSv5 2018 POSIX.1-2017更新

7.现代UNIX系统全景图

                    类UNIX操作系统家族
                          │
        ┌─────────────────┼─────────────────┐
        │                 │                 │
   ┌────▼────┐      ┌────▼────┐      ┌────▼────┐
   │ 商业UNIX │      │ BSD家族  │     │ Linux系  │
   │ 认证系统 │      │ 开源系统 │      │ 开源系统  │
   └────┬────┘      └────┬────┘      └────┬────┘
        │                │                │
   ┌────┴────┐     ┌─────┴─────┐   ┌─────┴─────┐
   │Solaris  │     │FreeBSD    │   │ 内核       │
   │AIX      │     │NetBSD     │   │ Ubuntu     │
   │HP-UX    │     │OpenBSD    │   │ RHEL       │
   │Tru64    │     │Darwin    │    │ Debian     │
   └─────────┘     └─────┬─────┘   └────────────┘
                         │
                   ┌─────┴─────┐
                   │ macOS     │
                   │ iOS/iPadOS│
                   └───────────┘