uni操作系统概述

上传人:大米 文档编号:431652052 上传时间:2023-09-10 格式:DOCX 页数:9 大小:114.33KB
返回 下载 相关 举报
uni操作系统概述_第1页
第1页 / 共9页
uni操作系统概述_第2页
第2页 / 共9页
uni操作系统概述_第3页
第3页 / 共9页
uni操作系统概述_第4页
第4页 / 共9页
uni操作系统概述_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《uni操作系统概述》由会员分享,可在线阅读,更多相关《uni操作系统概述(9页珍藏版)》请在金锄头文库上搜索。

1、第1章UNIX操作系统概述UNIX 自从问世以来就相当流行,它运行在微型机、小型机、工作站、中型机和大型 机等具有不同处理能力的机器上,并提供公共的执行环境。本书着重描述由美国电话电报 公司(AT&T)推出的UNIX system V,但也考虑了其他版本所提供的颇有意义的特征。1.1 UNIX 操作系统的发展史UNIX 操作系统的发展,经历了漫长的十几载。回顾其发展史,将会对学习好 UNIX 操作系统有很大的帮助。1965 年,贝尔电话实验室和通用电气公司及麻省理工学院的 MAC 课题组合作研发 Multics 操作系统,其设计目标是:(1)向大的用户团体提供对计算机的同时访问。(2)支持强大

2、的计算能力与数据存储。(3)在需要时,用户能够容易地共享他们的数据。1969年,原始版的Multics操作系统在GE645计算机上运行了,但是没有达到预定的 设计目标。由于系统只能在GE645计算机上运行,没能提供预定的综合计算服务,因此动 摇了研发目标,结果使贝尔实验室退出了这一项目。新的研发开始:(1)在贝尔实验室退出 Multics 工程后,贝尔实验室计算科学研究中心的成员们处于缺乏“方便的交互式计算服务”的景况中,为了改善他们的设计环境,K.汤普逊(KenThompson)、D.里奇(Dennis.Ritchie)及其他人勾画出一个纸面上的文件系统设计方案, 它后来就演化成为 UNIX

3、 文件系统的早期版本。(2)此后,汤普逊编写了有关程序,该程序模拟了这个文件系统以及请求分页环境中 程序的行为。(3)与此同时,他们借助GECOS计算机的程序开发环境为UNIX操作系统的开发在 PDP-7机上建立了更好的开发环境。(4)汤普逊和里奇实现了他们在PDP-7机上的系统设计,其中包括UNIX文件系统、 进程子系统和一组实用程序。并且实现了新系统的自我支持,再也不需要把GECOS系统 作为开发环境了。(5)新系统的名称由计算科学研究中心的成员B.科尼汉(Brian.Kernigham)提出,作 为Multics的一种双关语,命名为UNIX。贝尔实验室始建于 1925 年,为美国西方电器

4、公司和美国电报电话公司共有,是世界 上最大的研究机构之一。它雇用了两万三千多名员工,拥有一万八千项以上的产品专利。 每年编辑的刊物和组织学术讨论会达几千种。贝尔实验室已获得六十项以上的科学和工程 奖,包括 7次诺贝尔奖。1971年,UNIX被移植到PDP-11计算机上,该系统的主要特征是它的规模小:(1)内存中16KB用于系统,8KB用于用户程序;磁盘512KB。( 2)每个文件限定长度为 64KB。在UNIX被成功移植到PDP-11计算机上之后,汤普逊在这个系统上实现了 FORTRAN 编译。里奇在B语言的基础上,把B发展成他称之为C的语言。C语言允许产生机器代码, 说明数据类型及定义数据结

5、构。1973年,用C语言重写了 UNIX操作系统。这一事件在当时并没有引起人们的关注, 但对其外部用户接受它却产生了极大的影响。在这之后,贝尔实验室的装机数目增加到25 台,并且形成了 UNIX系统小组,以提供内部支持。由于美国电报电话公司 1965 年与联邦政府签署了反垄断法,不能销售计算机产品, 因此公司请求把UNIX操作系统提供给以教学为目的的大学。即使这样,UNIX系统的声 望仍在稳步增长。1974年,汤普逊和里奇撰文介绍UNIX系统。在ACM通讯上发表了描述UNIX 操作系统的文章,进一步促进了 UNIX操作系统的可接受性。1977 年,经过不懈的努力,UNIX系统的安装点已增至约五

6、百个,其中125个在大学。 此时, UNIX 操作系统开始在电话公司流行起来,为程序开发、网络事务操作服务及实时 服务提供了良好的环境。这时UNIX系统的许可证也颁发给了商业机构、大学和研究机构。交互系统公司(Interactive System Corporation)成为UNIX操作系统的第一个增值转 卖商。所谓增值转卖商是指把具体应用加到计算机系统上以满足特定的市场需要,他们销 售的是应用而不是销售这些赖以运行的操作系统。同年,UNIX操作系统首次被“移植”到非PDP机,即interdata 8/32机上。19781982年,在这一时期,贝尔实验室把若干个UNIX系统的变种组合到一个单一

7、 的系统中,称为UNIX system III。后来又在UNIX system III中增加了若干特性,产生了 UNIX system V(W为内部版本)。1983年1月,AT&T正式宣布支持UNIX system V。与此同时,加州大学伯克利分 校也开发了一个 UNIX 系统的变体,它的最新版 本称为 4.3BSD(Berkeley Software Distribution),配在VAX机上。它提供了一些新的有意义的特征。1984年,UNIX系统在全世界大约装了十万套。它们运行在微机直至大型机上,运行 在不同制造商生产的计算机上。UNIX 系统的普及与成功可归结为如下一些原因:(1) 该系

8、统以高级语言书写,使之易读、易懂、易修改、易移植到其他计算机上。(2)有一个简单的用户界面,但具有提供用户所希望的服务的能力。(3)提供了能够由较简单的程序构造出复杂程序的原语。(4)使用了在维护上容易的、在实现上高效的层次式文件系统。(5)文件采用字节流这样的一致格式,使应用程序易于书写。(6)为外围设备提供了简单一致的接口。(7)是一个多用户、多进程系统,每个用户都能同时执行几个进程。(8)向用户隐蔽了计算机的体系结构,使用户易于书写在不同硬件上实现运行的程序UNIX操作系统支持的程序设计语言有:FORTRAN、Basic、Ada、COBOL、LISP、Prolog 等,并能支持具有编译程

9、序或解释程序的任何语言。UNIX 产品系统的各种版本比较多,从风格上可分为以下两大类: BSD系列,见图1-1。卡内基梅隆大学开发MachUltrix(DEC)OSF/1(DEC)NEXTSTEP(next计算机公司)SunOSSolarisl.x注:AIX(IBM)与ATT和BSD系统很不一样,尤其在系统管理方面。图 1-1 BSD 系列 ATT 系列,见图 1-2。ATT(UNIXIRJX (Silicon Graphics)Solaris2.x(Sun 公司)pUX (Hp)Sco UNIX (Santa Cruz Operation)图 1-2 ATT 系列Linux是1991年由芬兰

10、的Linus Benedic Torvalds设计的一种运行于386以上微机的 UNIX,为了不断扩充该系统的功能,他把系统的源代码放在了因特网上,取名为Linux, 并在网上发出公开信邀请更多的人来参与Linux的研制和开发工作。由于Linux免费使用 并公开源代码,从而使其迅速得到普及和推广。1.2 UNIX 系统结构图 1-3、图 1-4、图 1-5 给出了 UNIX 操作系统的高层次体系结构。操作系统直接与硬 件交互,向程序提供公共服务,并使它们同硬件特性隔离。把整个系统看成 圆的集合时,操 作系统通常称为 系统的内核,简 称内核。内核向程序提 供公共服务,并 使它们同硬件特 性隔离。

11、图 1-3 内核cpp concpasId vi ed grepwcdatea.out whoshnroff图 1-4 外层程序最外层硬件标准c的编译 程序CC就处在 本图的最外 层,它调用c其他; 预处理程序、d汇编程序及装 入程序(称为 连接一编译程 序),这些都 是彼此分开的 低级程序。图 1-5 最外层外层的程 序是通过 引用一组 明确定义 的系统调 用而与内 核交互 的。1.3 UNIX 的体系结构1.2 节给出了对 UNIX 系统环境的高层次的看法。本节重点将放在内核上,对内核的 体系结构提出一个总的看法,勾画出它的基本概念和结构。在 UNIX 系统中,文件和进程这两类实体是 UN

12、IX 系统模型中的两个中心概念。图 1-6 展示了各个模块及它们之间的相互关系。图 1-6 体系结构存储簣邊调度程序程序库图 1-6 将系统分成三个层次:用户级、核心级和硬件级。其中各模块的功能及其关系 如下。1系统调用接口系统调用与库接口体现图1-4、图1-5 中描绘的用户程序和内核之间的边界。系统调用 看起来像C程序中普通的函数调用,而库把这些函数调用映射成进入操作系统所需的原语。 然而,汇编语言程序可以不经过系统调用库而直接引用系统调用。程序常使用像标准 I/O 库这样一些其他的库程序以提供对系统调用的更高级的使用,在编译期间把这些库连接到 程序上。因此这些库也是用户程序的一部分。2文件

13、子系统文件子系统使用一个缓存机制来存取文件数据,缓存机制调节内核与二级存储设备之 间的数据流。缓存机制同块I/O设备驱动程序交互,以便启动内核进行数据的传送。3设备驱动程序设备驱动程序是用来控制外围设备操作的内核模块。块I/O设备是随机存取存储设备, 文件系统还可以在没有缓存机制干预的情况下直接与“原始” I/O设备驱动程序交互。原 始设备称为字符设备,包括所有不是块设备的设备。4进程控制子系统进程控制子系统负责进程同步、进程间通信、存储管理及进程调度。当要执行一个文 件而把文件装入存储器中时,文件子系统与进程控制子系统交互进程子系统在执行可执行文件之前,把它读入主存中。用于控制进程的系统调用

14、有fork (创建一个进程)、exec (把一个程序的映像覆盖到正在运行的进程上)、exit (结束一个进程的执行)、wait (使进 程的执行与先前创建的一个进程的exit同步)、brk (控制分配给一个进程的存储空间的大 小)和signal (控制进程特殊事件的响应)。5存储管理存储管理控制存储分配。在任何时刻,只要系统没有足够的物理存储供所有进程使用, 内核就在主存与二级存储之间对进程进行迁移,以便所有的进程都得到公平的执行机会。6调度程序调度程序把 CPU 分配给进程。该模块调度各进程依次运行,直到它们因等待资源自愿 放弃CPU,或它们最近一次的运行时间超过一个时间量,从而内核抢占它们

15、,于是调度程 序选择最高优先权的合格进程投入运行。7硬件控制硬件控制负责处理中断及与机器通信。如磁盘或终端设备可以在一个进程正在执行时 中断CPU。如果出现这种情况,在对中断服务完毕之后内核可以恢复被中断了的进程的执 行。中断不是由特殊的进程服务的,而是由内核中的特殊函数服务的,这些特殊函数在当 前运行的进程的上下文中被调用。1.4 UNIX 的目录结构系统可以把当前路径下名为junk的文件与任何其他人的同名文件区分开。系统允许不 同目录中的文件可以有相同的名字。系统目录结构见图1-7。目录中可以包括 其他目录,当然 也可以包含一般 的文件,描述这 一结构的自然方 式是目录和文件 树。可以从树根 开始沿着恰当的 分支移动,从而 再到系统中的任 何文件。相反, 也可以从任何一 处开始最终到达 根部。图 1-7 目录结构一般用户有个人目录或户主目录,后者有时也称为注册目录,户主目录包括属于用户 自己的文件。当用户注册登录时,使用的是个人目录。用户可以改变当前工作目录,然而, 户主目录将永远不变,除非做特别处理。例如,命令pwd (print working directory),其功能是打印当前目录名,命令执行如下:$pwd/usr/you

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 建筑资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号