mp77的UNIX课件笔记(2)

第一章 UNIX的前世今生

 

一、UNIX起源

 

Unix的诞生离不开一种于1965年由Advance research project agency(United States Department of Defence)支持,并聚集MITAT&T以及通用电气共同参与开发的分时系统MULTICS (MULTiplexed Information and Computing Service)

MULTICS的主要设计目标是:

1、便利的终端使用——大量远程终端通过电话线接入计算机主机

2、高可靠的大型文件系统——大容量的用户信息共享;存储和构造层次化信息结构的能力

然而MULTICS研制难度超出所有人的预料,长期的研制工作达不到预期目标,19694AT&T退出,通用电气公司也退出。最终,MIT坚持下来,MULTICS成功运行,成为商业产品。事实上MULTICS运行直到2000年,加拿大国防部关闭了最后一个正常运行中的MULTICS系统。

MULTICS的开发及其研究成果对随后的计算机操作系统有着巨大影响。1969年,已退出MULTICS项目的AT&T研究员人员Ken ThompsonDennis M. Ritchie 在一台无人用的DEC PDP-7上,重新摆弄原先在MULTICS项目上设计的“空间旅行”游戏。为了使游戏能够在PDP-7上顺利运行,他们陆续开发了浮点运算软件包、显示驱动软件,设计了文件系统、实用程序、shell 和汇编程序。1970年,在一切完成后,给新系统起了个同MULTICS音相近的名字UNIX

最初的UNIX是使用汇编语言编写,其中一些系统应用是使用B语言和汇编语言混合编写的,鉴于B语言并不善于进行系统编程,Ken ThompsonDennis M. Ritchie在此基础上做了大量改进工作,并于1971年发明了C语言。1973年,UNIXC语言全部重写,自此,UNIX正式诞生。1977年,Unix被几乎完全不变的移植到非PDP-7机上,开始广泛应用于各种大学和科研机构。

从历史上看,UNIX的流行具备以下几点重要因素:

首先,由于UNIX是用C语言编写,因此它是可移植的,UNIX是世界上唯一能在笔记本计算机、PC机、工作站直至巨型机上运行的操作系统;

第二,系统源代码非常有效,系统容易适应特殊的需求;

最后,也是最重要的一点,它是一个良好的、通用的、多用户、多任务、分时操作系统;

Ken ThompsonDennis M. Ritchie因为其卓越的贡献于1983年获得图灵奖,并于1999年获得美国国家技术金奖。

然而由于UNIX强大的商业潜力,AT&T1979年发布了最后一个UNIX广泛版本UNIX 71982年发布的UNIX III最终停止了向各个研究机构发布UNIX源代码的做法,而改为商业销售。随后又综合各个大学的研究版本发布了UNIX Syetem V Release 1

BerkeleyUNIX商业化后延续了其BSD研究版的开发,其创立的TCP/IP协议机制几乎是现有所有系统TCP/IP实现的鼻祖。AT&T1989年开发了UNIX Syetem V Release 4,并集成了当时多种UNIX变种版本,成为目前多数变种系统的前身。

AT&TBerkeleyBSD是否侵权的问题上长期存在争执,直到UNIX被卖给Novell,双方最终才达成妥协,BSD得以在删除所有AT&T源代码的前提下继续开发。使得UNIX最终形成了两大技术流派:UNIX SVRx以及Berkeley Software Distribution

 

二、UNIX发行版的比较

 

UNIX的发行版本众多,不过可以分为硬件流和软件流两种流派。

1、硬件流派

硬件流是指厂商所发布的UNIX仅能在自己研制的硬件系统中使用,硬件流的主要特点是:

系统和自家的硬件捆绑销售;

相对较封闭,不同厂家之间无法二进制兼容;

适合企业级应用;

性能和稳定性满足关键业务需求;

对管理员要求最高,但享有较好的维护支持;

总拥有成本(TCO)较高;

目前硬件流的代表有IBMAIXSUNSolaris以及HPHP/UX

2、软件流派

UNIX源代码目前的版权属于SCO Group,并在此基础上发布了SCO Unix,其作为唯一合法的纯商业UNIX系统软件具有以下特点:

较好的x86平台兼容性,适合多种硬件架构;

适合网络服务的多种应用;

有版权;

对管理员要求较高,但也有部分商业支持;

总拥有成本(TCO)一般;

另外,开源项目中的UNIX版本已成为目前UNIX广泛流行的主要推动力量。包括了BSD衍生而来的FreeBSDOpenBSDNetBSD,以及Linux衍生来的RedHat(自v9.0后终止研发桌面版,进而开发RedHat Enterprise Linux商业系统)、FedoraRedHat v9.0后由RedHat Inc.支持的开源项目)、Debian (早期的Linux发行版之一,拥有数量惊人的软件包支持)、SUSE(现由Novell维护的linux发行版)、UbuntuDebian衍生而来的一种较新的Linux发行版)、Mandriva(即Mandrake Linux,一种最初基于RedHat的衍生版本,其维护方Mandrakesoft Inc.2005年被Conective Inc.收购)。开源项目下的BSDLinux具有以下特点:

较好的x86平台兼容性,适合多种硬件;

从桌面到网络服务,适合多种应用,应用软件丰富;

源代码开放,不存在版权问题;

对管理员要求较高,商业支持少,但有社区支持;

总拥有成本(TCO)较低;

具有潜在的行业趋势;

 

三、UNIXLinux

 

Unix的主要特点如下:

1、开放性

遵循世界标准规范,特别是遵循开放系统互连OSI国际标准。

2、多任务

允许多个程序同时执行。

3、多用户

允许多个用户从相同或不同终端上同时使用同一台计算机。

4、良好可移植性、高稳定性和强安全性

编译大都相同,具备良好的可移植性,历经长久考验,稳定安全。

5、功能强大、实现高效

使用户能方便地、快速地完成许多其他操作系统难以实现的功能。

6、卷式文件结构及外部设备文件化                                     

具有可装卸的树型分层结构文件系统 ,并分别赋予外部设备对应的文件名,用户可以像使用文件那样使用任一设备。

 

Linux的特点如下:

1UNIX继承性

作为UNIX的子集,具备多任务,多用户,良好稳定性,良好安全性,符合POSIX标准等(POSIX可移植操作系统接口Portable Operating System Interface,缩写为 POSIX,是为了读音更像UNIX。电气和电子工程师协会Institute of Electrical and Electronics EngineersIEEE最初开发 POSIX 标准,是为了提高 UNIX 环境下应用程序的可移植性)。

2、多平台

支持各种CPU,包括IntelAMDPowerPC,甚至SUN sparc等。

3、完善的网络协议

具备 IPv4IPv6,内置IPSEC, netfilter防火墙。

4、多种友好用户界面

ShellGNOME, KDE等。

5、核心与应用分离、遵循GNU协议(GNU’s Not UNIX,由Richard Matthew Stallman1983年发起的类UNIX组织,旨在推广自由软件系统,该协议框架下包含了许多著名软件GNU/LinuxEmacs、以及C编译器GCC等)。

Linux采用核心与应用分离,核心(Kernel),围绕核心的shellx-windows,以及应用软件共同构成Linux系统。

 

接下来介绍UNIX的配置方法和常用领域的解决方案。