第一章 绪论
一、 Unix 家族中的一员
① UNIX , 1971 年由 AT&T 发布, 73 年重写,
70 年代末, AT&T 成立了 Unix 系统实验室( Unix System
Lab , USL ),宣布对 Unix 产品拥有所有权, 1983 年发布了
SYSTEM V 。在 UNIX7 之前, UNIX 是免费或收取少量费
用开放源码的。 UNIX 的研发诞生了 C 语言。
( AT&T ,美国电报电话公司。 1974 受到美国反托拉斯司起
诉,被控利用垄断美国本土电话服务的优势,排挤长途电话
竞争者。案件在 1982 年得到和解。美国电报电话公司同意
将本土电话业务拆分为 8 个小公司。根据美国反垄断法规定
AT&T 不能进入计算机市场领域,所以 AT&T 无法将 UNIX
作为商品出售。只能自己使用和发放到大学的科研机构中供
研究使用。)
② BSD ( Berkeley Software Distribution )
伯克利的加利佛尼亚大学计算机科学研究组以 UNIX 7.0 为
基础开发了 UNIX 的 BSD 版本。从 1977 年起,它免费发布
了数千份 1BSD 和 2BSD ( PDP — 11 使用),以及 4BSD ( VAX
使用)。到 90 年代开发到 4.4 版,以及 FreeBSD 。 BSD Unix 中最先实现了 TCP/IP ,是最具影响的 UNIX 。
但 90 年代 BSD 遭遇到 AT&T 的指控,后来 BSD 与 93 年
已经卖给 Novell 公司的 Unix 系统实验室 (USL) 达成和解,
但 BSD Unix 系统中必须去除原来来自 AT&T 的不到 10%
源码。因此直到 1995 年 1 月他们才发布了完全 4.4BSD Lite
的系统的 FreeBSD 2.0 ,为此耽误了时机,成就了 Linux 等
竞争对手(伯克利计算机系统研究组( CSRG )在发布了
4.4BSD-lite2 之后就解散了,小组的科研人员有些进入了
Unix 商业公司,有些继续进行其他计算机领域的研究。
FreeBSD 是 CSRG 在 1992 年终止开发之前发行的最后一个
BSD 版本—— 4.4BSD 的一个著名分支。 BSD 的著名后继有
OpenBSD 、 NetBSD 、 FreeBSD 和 BSDI 等)。
③ MINIX
1987 年荷兰阿姆斯特丹 Vrije (自由?)大学教授 Andrew
Tanenbaum 以 UNIX7 为蓝本开发出一个运行于 IntelX86 平
台上的简化类 UNIX 系统 MINIX ( mini-UNIX 的意思)来用
于教学。 MINIX 开放源码,因完全独立开发故不受 AT&T
许可协议的约束。最新的版本是 MINIX 2.0.4 [Nov-9-2003] ,
可以去 官方网站 免费下载。
④ Linux
1991 年,芬兰学生 Linus Torvalds 开始使用 MINIX 时,对
MINIX 提供的功能不满意。于是他自己写了一个类 UNIX
操作系统(尽管还是用 MINIX 编译的)并放到网上让人们 自由下载,取名叫 Linux 。 Linux 刚出现的时候是被
Tanenbaum 所鄙视的,因为它是集成化内核,不是 MINIX
采用的代表先进思想的微内核;但由于遵循 GPL 协议,
Linux 仍得到了蓬勃发展。 1994 年, Linux 的第一个商业发
行版 Slackware 问世。 1996 年, NIST 的计算机系统实验室
确认 Linux 1.2.13 版符合 POSIX 标准。 Linux 的核心的最
新稳定版是 Linux 2.6.1 [Jan-9-2004] ,可去官方网站下载。
而它的发行版比比皆是,知名的有 Red Hat , Mandrake ,
Lycoris 等等,国内也有红旗等,相应官方网站可以找到这
些发行版的下载。
⑤ Xenix 与 SCO Unix
Santa Cruz Operation ( SCO )公司的 UNIX 主要有两套。
一方面, 1980 年的时候, Microsoft 开始研制 UNIX 的 PC
版本 XENIX ,后来卖给了 SCO 。在这个基础上, SCO 又不
断引入 AT&T 的技术,后来发展成为了 SCO Open Server
系列。目前我国银行,邮政等系统很多都用的这个操作系统,
最新的版本是 SCO Open Server 5.0.7 [Feb-21-2003] 。另一
方面, 1993 年, AT&T 把他们关于 UNIX 的整个队伍、技
术包括版权卖给了 Nowell 公司,有了 UnixWare 。 1995 年,
Nowell 又把这一套东东卖给了 SCO ,这样 SCO 就成了
UNIX 的嫡传正宗。 SCO 整合了自己的技术,发布了
UnixWare 7 。 2001 年, Linux 厂商 Caldera 并购了 SCO ,
从 SCO 的手中获得了 Unix 的知识产权, 2002 年 8 月 26 日, Caldera 宣布重新更名为 SCO 集团,以便反应出其营业收
入主要来自于 SCO 业务而非 Linux 产品的状况。 UnixWare
最新版是 UnixWare 7.1.3 [Nov-21-2002] 。 2003 年, SCO 指
控 Linux 代码侵权,目前 IT 界仍在沸沸扬扬。
⑥ Solaris
Sun Microsystems 公司早期的操作系统版本 Sun OS 是基于
BSD 的。在 1993 年,他们与 AT&T 合作,转向了 UNIX System
V ,并发布了称作 Solaris.System V release 4 的系统,这是一
个 UNIX System V 和 BSD 的整合体。 Solaris 系统主要是用在
Sun 公司自己的 SPARC 机器上,但他们也发布了相应的 x86
版本,并且免费。最新的测试版本 Software Express for
Solaris(12/03) [Dec-3-2003], 在官方网站有 下载 。
⑦可移植操作系统界面标准 POSIX
为了克服 UNIX 版本差异对可移植性的损害, 1990 年 ISO
制定了 ISO/IEC 9945-1-1990 标准,这是整个可移植操作系
统界面( POSIX )的第一部分;系统应用程序界面即
POSIX.1 。这就是常说的 UNIX 操作系统的界面标准。
Novell 后来把自己的 Unix 改名为 Unixware ,
而将 Unix 商
标赠送给一个由众多 Unix 厂家组成的联盟 X/Open ,这样
这个联盟内的所有成员均可使用 Unix 商标。从此之后, Unix
不再是专有产品了。 95 年 Novell 又将 Unixware 卖给 SCO
公司。此时,严格意义上的 Unix System V 和 BSD Unix 都
不复存在了,存在的只是他们的各种后续版本。
二、 Linux 与 GNU
GNU 是 FSF ( Free Soft Foundation 自由软件基金会)的一
项开放源码工程计划,按照其官方网站的说法, GNU 是
“GNU's Not UNIX” 的递归缩写 (GNU is a recursive acronym
for “GNU's Not UNIX”; it is pronounced “guh-noo.”) 。
GUN 由 Richard Stallman 于 1984 年发起,目标是开发一个完
全免费的可移植的类 UNIX 系统及其应用程序。 GNU 开发的
类 UNIX 系统名为 Hurd ,但未完成,被 Linux 取代。 GNU
最早的重大贡献是 1987 年 6 月完成的 11 万行源代码开放的 "
编译器 " ( GNU gcc )。
GUN 制定了一项被称之为 Copyleft 版权模式的 GPL ( General
Public License )条款。 GPL 允许任何人免费获取、共享、修
改、散发自由软件的源代码,前提是修改散发时不得添加非
GPL 限制。在遵循 GPL 规则的情况下不反对销售自由软件。
Linux 93 年加入 GNU ,奉行 GPL 版权。
三、 Linux 简史:
1990 年, Linus Torvalds 首次接触 MINIX
1991 年, Linus Torvalds 开始在 MINIX 上编写各种驱动程
序等操作系统内核组件
1991 年, Linus Torvalds 在 Usenet 新闻组发布公告,公开了
Linux 内核
1993 年, Linux 1.0 版发行, Linux 转向 GPL 版权协议 1994 年, Linux 的第一个商业发行版 Slackware 问世
1996 年,美国国家标准技术局的计算机系统实验室确认
Linux 版本 1.2.13 (由 Open Linux 公司打包)符合 POSIX
标准
1999 年, Linux 的简体中文发行版相继问世
2001 年, Linux2.4 版内核发布
2003 年, Linux2.6 版内核发布
Linux 内核由 Linu 负责维护,各种发行版均是内核同一定数
量的应用程序的集成。这些应用程序很多基于 GNU 。
四、 Linux 的版本
Linux 版本分内核 (Kernel) 版本和发行 (Distribution) 版本。
内核的版本号由三部分数字组成:
major.minor.patchlevel 即:主版本号 . 次版本号 . 修订序号
如: Kernel 2.4.20
根据约定,次版本号为奇数表示最新版,未必稳定,相当于测
试版。次版本号为偶数表示稳定版。
发行版本号一般由各发行商自己规定。
五、 Linux 的 GUI
Linux 的图形界面主要有 gnome 和 KDE
gnome (GNU's Network Object Environment) GNU 网络对象
模型环境。( Gnome [ n[um ] 土地神、格言 , 箴言 , 侏儒)
KDE 是 K Desktop Environment 的缩写形式。 无论 Gnome 还是 KDE ,其基础都是 X-Window
与 Windows 不同,所有 Unix 系统都是都是采用了内核与图形
界面分离的做法。 Unix 界通用的图形环境是 X-Window ,是
一种网络化的图形环境。
X-Window 服务器负责响应客户程序的图形输出请求将其显
示在显示器上,并负责将输入设备的事件传送给客户程序。
但掌握 Linux 还无法避开字符界面下的命令行操作知识。
( X-Window , 84 年诞生于麻省理工学院 (MIT) ,由来源于斯
坦福大学的名为 W 的实验性图形界面系统发展而成。 87 年发
布了较成熟的第 11 版 X11 ,并交给非赢利组织 X 协会 (The X
Consortium) 来管理。