UNIX

来自EEWiki.

跳转到: 导航, 搜索

UNIX操作系统由AT&T Bell实验室的Ken Thompson和Dennis Ritchie于1969年及70年代早期开发,最初的版本设计运行在16位的DEC PDP-11和32位的VAX计算机上。“UNIX”这一名称来源UNICS(统一信息和计算系统),是Multics(多种)的戏称。Multics作为测试平台使用的早期分时(允许多个任务自动分布)操作系统,由General Electnc、Massachusetts Instiute of Technology和AT&T于1964年共同创建,但AT&T最后退出了这一合作项目。Multics被认为是历史上第一个实现大多数多任务功能的操作系统,现在这些功能已在大多数操作系统中普遍存在。

在1973年,Bell实验室用C编程语言彻底地重新编写了UNIX。这样重新编写后的UNIX具有了高度可移植性,并且它现在包含用众所周知的通用编程语言编写的系统组件,这种编程语言在多种系统上使用时都易于重新编译。几乎同时,管道被引入到操作系统中,它提供了将来自不同程序的数据进行组合的方法。AT&T以分发许可证的方法,对Unix仅仅收取很少的费用,大学和研究机构就能获得Unix的源代码以进行研究。Unix的源代码被散发到各个大学,一方面使得科研人员能够根据需要改进系统,或者将其移植到其他的硬件环境中去,另一方面培养了懂得Unix使用和编程的大量的学生,这使得Unix的普及更为广泛。

大约在1975年,AT&T将操作系统对大学开放,以用于研究计划和计算机科学项目,这是UNIX普及化的关键一步,并从此创建了很多不同的版本(AT&T最初的版本现在称为System V版或SVR)。除了Bell实验室之外,美国加利福尼亚大学伯克利分校也产生了有关UNIX的重要成果。它所创建的版本称为 Berkeley Software Distributions或 BSD。U.C. Berkeley还添加了TCP/IP联网并将UNIX移植到了DEC VAX中。

Peter H. Salus在他编著的《Casting the Net》(Addison-Wesley, 1995)一书中指出,在将因特网放入UNIX的过程中(与将UNIX放入因特网相反,通过编写而发挥了重要的作用。该RFC介绍了Holmgren将操作系统与因特网链连接的经验。

AT&T最后将其UNIX开发归并为称为UNIX System Laboratories (UNIX系统实验室或USL)的一个单一单元中。在1991年,Novell和AT&T一起创建了Univell公司,目的是开发UnixWare,一种具有内置Novell NetWare支持的桌面UNIX系统。1993年,Novell购买了USL并组建了USG(UNIX系统组)来管理UnixWare.

购买USL后,Novell获取了对UNIX SVR4的控制权,这令其他UNIX供应商沮丧不已。为了试图将整个行业统一到公用UNIX操作系统上来,Novell将UNIX商标给与了X/Open组织(后面对其介绍)。但UNIX和NetWare 工程师们没有能够创建同时具有UNIX和NetWare最佳功能的操作系统。于是Novell认为UNIX对其长期稳固存在的NetWare产品构成了威胁并于1995年12月将UNIX出售给了Santa Cruz 0Peration。

X/Open组成立于1984年,由Bull、Nixdorf、Philips、Siemens和其他公司创建,它通过测试产品的符合性来推动开放的UNIX标准。X/Open现在许可对UNIX实现冠以UNIX商标,只要这些实现与一套推广操作系统之间应用程序可移植性的规范相兼容。在1996年,X/Open和OSF(开放软件基金会)合并,创建了0penGroup。Open Group管理UNIX标准,如CDE(公共桌面环境)图形用户界面和Motif图形用户界面工具。在主题 “Open Group(开放组)”中可以找到有关0penGroup的内容。

20世纪80年代早期,IEEE社团创建了POSIX (可移植UNIX操作系统接口),它的创建是推动UNIX环境之间应用程序可移性的另一个努力。但是,POSIX不只是用于UNIX的标准。它已经在其他操作系统平台,如DEC VMS上实施。

这种标准化的一切努力使得供应商用下列类似的措辞来说明其产品(摘自DEC的Web站点):“数字UNIX操作系统是一种先进的64位内核体系结构,它的基础是卡内基一梅隆大学的Mach V2.5内核设计,该设计具有BSD(Berkeley Software Distribution,伯克利软件分布)4.3和4.4、UNIX System V以及其他来源的组件。数字UNIX是Digital Equipment Corporation数字设备公司)的OSF的OSF/l Rl.0、Rl.1和Rl.2技术和Motif图形用户界面和编程环境的实现”。

在免费的Linux发行之前,Sun Microsystems的Solaris也许是最流行的UNIX系统。它是具有很多SVR版本功能的BSD UNIX。FreeBSD是另一个引起关注的版本,它是基于Berkeley BSD版本并在Intel处理器上运行的UNIX版本。FreeBSD是免费的操作系统。

Linux是另一种类似于UNIX的免费的操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它运行在各种平台上,其中包括Intel、SPARC、PowerPC和DEC Alpha处理器,以及多处理系统。Linux是“用户开发”的产品,这意味着它的很多组件和驱动程序都是由世界各地运行操作系统的用户开发来供自己使用的。

Linux具有Unix的优点:稳定、可靠、安全,有强大的网络功能。在相关软件的支持下,可实现WWW、FTP、DNS、DHCP、E-mail等服务,还可作为路由器使用,利用ipchains/iptables可构建NAT及功能全面的防火墙。

Linux有很多发行版本,较流行的有:RedHat Linux、Debian Linux、RedFlag Linux等。

UNIX功能概述

UNIX问世以来十分流行,它运行在从高档微机到大型机各种具有不同处理能力的机器上。UNIX支持联网和分布式文件系统的多用户系统,如Sun Microsystems的NFS(网络文件系统)或开放软件基金会的AFS (Andrew文件系统)。目前,UNIX除了可在PDP-11、DEC公司的VAX-11系统的各种机型上运行之外,还可以在IBM的370、3300系列机和Amdahi公司、Data General公司、Hp公司的系列机上。近年来,几乎所有的16位机、32位微型计算机都竞相移植UNIX。这种情况在操作系统发展的历史上是极为罕见的。

Unix操作系统通常被分成三个主要部分:内核(Kernel)、Shell和文件系统。传统的操作系统由一种小型内核构成,这种内核运行如用户应用程序和服务之类的进程。UNIX内核是一个坚固的核心,直接控制着计算机的各种资源,能有效地管理硬件设备、内存空间和进程等,使得用户程序不受错综复杂的硬件事件细节的影响,它几乎不随系统变更,而进程是根据用户的决定添加的。这种设计方法使用户更容易添加新的服务或删除不必要的服务。另外由于操作系统无需重新编译,因此更新也更加容易。

用户通过shell(命令解释程序)与操作系统交互,shell是一个接受用户输入并执行各种任务的进程。由于shell是可替代的进程,因此有很多版本,如Boume shell、C shell和Korn shell。现在已经开发出了替代基于文本的shell的图形用户界面,如Motif.

文件系统是指对存储在存储设备(如硬盘)中的文件所进行的组织管理,它是分层的,有一个根目录和多个分支子目录,并且每个子目录还可以有自己的一组子目录。系统以 / 为根目录。常见的目录有 /etc (常用于存放系统配置及管理文件)、/dev (常用于存放外围设备文件)、/usr (常用于存放与用户相关的文件)等。设备如显示器和打印机等都有设备名称,这些设备的处理方法与文件相同。例如,用户可以通过在命令中使用显示器或打印机名称将进程或文件清单输出定向到显示器或打印机。管道功能提供了将一个命令(如排序)输出定向到另一个命令的方法。

UNIX和TCP/IP协议是紧密联系的。现在每个UNIX实现都包含TCP/IP及对以太网的支持。另外,Sun Microsystems的NFS是包含UNIX的公共分布式文件共享系统,而AFS也被使用。因此,UNIX使得能够以一个软件包在计算机上安装强大的操作系统,使得用户可以通过行业中最普及和最强大的联网协议共享其他用户计算机上的文件和运行其他用户计算机上的程序。

UNIX是因特网用户使用的主流操作系统,而Linux版本现在也引起了系统管理员的广泛注意。Microsoft Windows 2000是与之竞争的产品,但很多人对其是否具有与UNIX各种版本一样的可靠性和可伸缩性持怀疑态度。毕竟UNIX已经使用了很多年并得到了良好的检验。

个人工具箱
导航
支持单位