第1章操作系统概述_第1页
第1章操作系统概述_第2页
第1章操作系统概述_第3页
第1章操作系统概述_第4页
第1章操作系统概述_第5页
已阅读5页,还剩124页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

操作系统西安财经学院1操作系统概述

系统启动及用户界面进程管理与调度进程同步第一章第二章第三章第四章文件管理第七章Contents课程内容安排

西安财经学院设备管理第六章存储器管理第五章2教材及参考资料教材:操作系统教程黄刚徐小龙段卫华人民邮电出版社2009年参考资料:OperatingSystemDesignandImplementation(SecondEdition)AndrewS.Tanenbaum2001年1月计算机操作系统教程张尧学史美林清华大学出版社1998年5月计算机操作系统教程徐甲同陆丽娜谷建华西安电子科技大学出版社2001年12月计算机操作系统汤子赢哲凤屏汤小丹西安电子科技大学出版社2000年2月红帽EnterpriseLinux3从入门到精通MichaelJang著毛选韩滨于晓菲等译电子工业出版社2003年5月Linux内核完全剖析赵炯机械工业出版社2006年1月Linux操作系统及实验教程李善平郑扣根机械工业出版社1999年10月3本课程与其它专业课程的关系编译原理数据库原理计算机网络软件工程计算机组成原理计算机系统结构汇编语言程序设计各种应用软件开发平台及软件开发技术C语言程序设计数据结构面向对象程序设计算法分析操作系统注:图中加黑字体课程名称为计算机专业考研课程4课程进度安排第1周 第1章操作系统概论第2周 第2章系统启动及用户界面(自己安装Linux)第3周 实验一Linux系统的操作命令第4、5周 第3章进程管理与调度第6周 实验二进程的创建第7、8周 第4章进程同步第9周 实验三进程间消息通信第10、11周第5章存储管理第12周 实验四虚拟内存管理模拟系统调试第13、14周 第6章设备管理第15~17周 第7章文件管理18、复习5第一章操作系统概述操作系统的概念1操作系统的形成和发展2操作系统的分类3西安财经学院操作系统的结构设计

4Linux操作系统简介56操作系统的概念78操作系统是计算机系统的基本系统软件。软件系统中操作系统是所有软件的核心。操作系统负责控制、管理计算机的所有软件、硬件资源,是惟一直接和硬件系统打交道的软件,是整个软件系统的基础部分,同时还为计算机用户提供良好的界面。因此,操作系统直接面对所有硬件、软件和用户,它是协调计算机各组成部分之间、人机之间关系的重要软件系统。操作系统的概念操作系统是一组运行在计算机上的软件,它用来管理计算机硬件,并且为运行应用程序提供各种常规服务。各种带有计算机的设备都配有操作系统,从手机、游戏机到超级计算机都必须装载操作系统。操作系统是一个两层的系统平台,一层是面向终端用户的,一层是面向程序开发者的。流行的个人机操作系统包括:微软的Windows、苹果的MacOSX和Linux。9整个计算机系统可以认为是按照一定规则分层构建的,我们可以使用图1.1来示意性地描述这种层次结构。10图1.1计算机系统层次结构示意图操作系统在计算机系统中的地位11操作系统的地位:紧贴系统硬件之上,所有其他软件之下(是其他软件的共同环境)手工操作阶段(20世纪40年代)

20世纪40年代,这时还未出现OS。这时的计算机操作是由用户(即程序员)采用人工操作方式直接使用计算机硬件系统,即由程序员将事先已穿孔(对应于程序和数据)的纸带(或卡片)装入纸带输入机(或卡片输入机),再启动它们将程序和数据输入计算机,然后启动计算机运行。当程序运行完毕并取走计算结果后,才让下一个用户上机。这种人工操作方式有以下三方面的缺点:

(1)用户独占全机。(2)CPU等待人工操作。(3)用户必须熟悉机器各部分细节。操作系统的发展12批处理系统主要是采用了批处理技术。批处理技术是指计算机系统对一批作业自动进行处理的一种技术。操作系统的发展早期批处理阶段(20世纪50年代)13卡片早期联机批处理系统IBM1401IBM7094IBM1401输入磁带磁带机卡片阅读机输出磁带打印机14早期联机批处理系统(SimpleBatchProcessingSystem)的处理过程单道联机批处理系统的处理流程操作系统的发展15早期联机批处理系统是最早出现的一种OS,严格地说,它只能算作是OS的前身而并非是现在人们所理解的OS。尽管如此,该系统比起人工操作方式的系统已有很大进步。该系统的主要特征如下:

(1)自动性。

(2)顺序性。

(3)单道性。但没有解决慢速外设与高速CPU之间串行工作速度不匹配的矛盾。操作系统的发展

16早期脱机批处理引入了卫星机,主要优点如下:减少了CPU的空闲时间。(2)提高I/O速度。脱机I/O示意图操作系统的发展早期批处理阶段(20世纪50年代)17批处理系统实现了作业的自动过渡,当出现了两个问题:1.磁带需要人工拆卸,麻烦容易出错;2.用户程序出错时,机器就会停止运行。由于通道和中断技术的出现,操作系统进入了执行系统阶段。特点:监督程序常驻内存。执行系统阶段(20世纪50年代至60年代初期)

操作系统的发展

181.多道程序设计的基本概念在单道批处理系统中,内存中仅有一道作业,它无法充分利用系统中的所有资源。为进一步提高资源的利用率和系统吞吐量,在60年代中期又引入了多道程序设计技术。在该系统中,用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”;然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源。多道程序系统阶段(20世纪60年代早期)

操作系统的发展

19单道和多道程序运行情况操作系统的发展

202.多道批处理系统的特征多道性。(2)宏观上并行。(3)微观上串行。3.多道批处理系统的优缺点

资源利用率高。(2)系统吞吐量大。(3)平均周转时间长。(4)无交互能力。操作系统的发展214.多道批处理系统需要解决的问题处理机管理问题。(2)内存管理问题。(3)I/O设备管理问题。(4)文件管理问题。(5)作业管理问题。操作系统的发展

22操作系统的形成(20世纪60年代中期至70年代中期)多道程序系统出现不久就出现了分时系统。多道程序和分时系统的出现标志着操作系统的正式形成。随着多道程序和分时系统的完善,又出现了实时操作系统、远程批量系统和计算机网络。后来又出现了网络操作系统和分布式操作系统。操作系统的发展

23操作系统的发展二十世纪六十年代才出现现代结构的操作系统。五十年代开始形成一些操作系统的功能软件,如:运行时库、中断、并行处理等。八十年代开始将大型机和小型机的操作系统移植到个人计算机中。陆续出现一些专门为个人机开发的系统功能,如GUI。操作系统中最重要的部分是内核(kernel),它用来控制对内存的读写,进程的执行顺序,输入/输出设备的信息传递和中断。用户接口(界面)是操作系统的另一重要部分,它分为图形界面和命令行界面两种。24操作系统的分类批处理操作系统批量处理作业,操作系统选择作业执行,为提高资源利用率和系统吞吐量。无法实现人机交互。分时操作系统一台主机与多个终端相连,各个终端用户分时使用系统资源。实时操作系统主要用于工控领域。重点在及时响应和执行可靠性。25操作系统的分类微型计算机操作系统操作友好方便,通用性。网络操作系统在一般操作系统基础上,提供网络通信和服务的操作系统。分布式操作系统依托网络,实现任务的处理分布。嵌入式操作系统微型化,可定制,应用于各种特殊用途的终端。26操作系统结构设计有三层含义:一是研究操作系统的整体结构,由程序的构成成分组成操作系统程序的构造过程和方法;二是研究操作系统程序的局部结构,包括数据结构和控制结构;三是操作系统运行时的组织,如系统是组织成进程还是线程,在系统空间还是用户空间运行等。采用不同的构件和构造方法可组成不同结构的操作系统。27操作系统的结构设计设计一个操作系统主要包括功能设计算法设计结构设计操作系统的结构设计28结构设计:按照系统的功能和特性要求,选择合适的结构,使用相应的结构设计方法将系统逐步地分解、抽象和综合,使操作系统结构清晰、简单、可靠、易读、易修改,而且使用方便,适应性强29操作系统的结构:整体式结构层次式结构进程分层结构层次管程结构客户-服务器结构

微内核301.整体式结构整体式结构是早期操作系统和一些较小的操作系统所采用的一种结构模型。它实际上是没有结构的,整个系统是一堆模块的集合,每个模块都可以随便调用任意其它模块。采用这种技术时,为了构造操作系统的最终目标程序,需要先对那些单个模块进行编译,然后再把它们链接成一个统一的目标程序。因此,它没有提供任何程度的信息隐蔽能力,各模块之间是彼此可见的。整体式结构提供了两种处理机运行模式:用户态(运行用户程序)和核心态(运行操作系统)。这种操作系统也存在一些很低的结构化,一般来说,其所有模块可大致分为三层:最高层是主程序,它引用所需的服务模块;中间层是一组服务模块,它执行系统调用;最底层是一组公共模块,用来支持各服务模块。31也叫模块接口法(无序模块法,模块组合法)首先确定操作系统的总体功能,然后将总功能分解为若干个子功能,实现每个子功能的模块称为模块。继续分解,直至每个模块仅包含单一功能为止。最后通过接口将所有模块连接起来形成一个整体32模块3模块2模块7模块1模块6模块5模块8模块433特点:根据功能划分模块数据基本上作为全局量使用在系统内部,不同模块程序之间可以不加控制地互相调用和转移信息的传递方式可根据需要随意约定因而造成模块间的循环调用34优点:结构紧密接口简单直接模块间转接的灵活性使系统效率高35缺点(1):由于模块之间可以任意相互调用,形成网络,各模块互相联系,独立性差,系统结构不清晰数据作为全局量处理,系统内各模块均可对其进行存取和修改,造成模块间更为隐蔽的关系,使得难于对软件结构作出综合性的理解,难于修改,可靠性、易读性、适应性难以保证36缺点(2):由于模块接口法常以大型表格为中心,为保证数据完整性,往往采用全局封中断的方法,从而限制了系统的并发性37结论可适应性较差适用于规模较小使用环境比较稳定却要求效率较高的系统38用户程序2用户程序1服务例程分配表1234主存用户程序在用户态运行操作系统在核心态运行392.层次式结构层次式系统是按照操作系统中模块的功能和相互依存关系把它们划分为若干个层次,除最底层模块外,任一层模块都建立在它下面一层模块的基础上,即任一层模块都只能调用它的下层模块来得到服务,而不能调用其上层模块。层次式系统的典型结构如图所示。实际上,一个操作系统应划分为多少层,各层处于什么位置是无固定模式的。4041层次式结构:传统的操作系统结构。如,LINUX/

UNIX,系统内核中的每一模块只能与相邻层通信。42按此模型构造的第一个操作系统是

E.W.Dijkstra和他的学生在荷兰开发的THE系统(1968年)43THE系统分为六层:层次 功能

5 操作员

4 用户程序

3 输入/输出管理

2 操作员-进程通信

1 内存和磁盘管理

0处理器分配和多道程序

443.进程分层结构

采用进程概念后把含有并发活动的系统分为若干异步运行的与时间无关的顺序程序模块操作系统的任务就是协调这些异步运行的进程使它们能够协调工作45进程分层结构把系统中所有的进程模块按照一定的原则排列在若干层上并要求这些层间是一种单向依赖关系系统由一个核心和位于各层上的若干进程组成46

优点:进程模块的独立性强、易维护、易调整整个系统结构清晰、形式整齐划一

47主要缺点有:每一个进程必须设立进程控制块用以保留进程的状态信息增加了内存开销进程间控制转移、状态保留及信息传送均由核心管理时间消耗多,效率下降系统并发活动过多,调度负担过重且同步操作过于分散易于造成死锁,影响了系统的安全性484、虚拟机结构系统调用陷入陷入I/O指令CMSCMSCMS370虚拟机VM/370370裸机49虚拟机思想的应用:在奔腾CPU上运行老的MS-DOS程序Intel在奔腾芯片上提供了一个虚拟8086模式,在此模式下,奔腾机就像一台8086计算机一样,包括1M字节内的16位寻址方式50

虚拟8086模式被Windows、OS/2及其他操作系统用于运行MS-DOS程序。程序在虚拟8086模式下启动,执行一般的指令时它们在裸机上运行。但是,当一个程序试图陷入系统来执行一条系统调用时,或者试图执行受保护的I/O操作时,将发生一条虚拟机监控程序的陷入51两种设计方法:第一种:MS-DOS本身被装入虚拟8086模式的地址空间,虚拟机仅仅将该陷入传回给DOS第二种:虚拟机监控程序仅仅捕获第一条陷入并自己执行I/O操作。52IBM390与Linux:Linux在S/390下有三种实现模式:本地运行模式:即独立运行模式,Linux可以不依赖S/390自己的任何操作系统完整地运行逻辑分区运行模式:Linux在S/390的硬件逻辑分区内运行,S/390最大支持15个独立的逻辑分区VM/ESA模式:把Linux当成一个虚拟机来运行,VM提供虚拟的CPU、I/O子系统和内存资源53IBM390与Linux:用户既可以选择把OS/390与Linux共存,只是简单地共享硬件,也可以将两者设置成客户/服务器模式来应用,非常灵活545556虚拟机结构是在逻辑上扩展一层层软件,使相同硬件系统的计算机由于软件不同而具有各种不同的性能。通常采用结构化的设计方法实现。“添加——扩充——再添加”,由底向上增设软件层。为了控制并发程序设计的复杂性使并发程序易于理解和易于保证其正确性吸取模块组合结构和进程分层结构优点不断寻求一种抽象的概念和严格的表示法

发展了以数据为中心的模块概念和操作系统的层次管程结构5.层次管程结构57

系统按资源管理的观点分解成若干模块,用数据表示抽象系统资源,同时分析了共享资源和专用资源在管理上的差别,按不同的管理方式定义模块的类型和结构,使同步操作相对集中,从而增加了模块的相对独立性58从功能和实现相结合的观点出发,从系统中提炼出管程、类程、一般模块和进程等几种基本成分,使一个复杂的系统可分解为由这几种基本成分构成的模型在分解和提炼这些模块的基础上,将它们按照一定的准则编入各层,包括核心在内核心是最内层,可看成是管理中央处理机的一个专门管程最外层是反映系统并发度的若干管程、类程和一般模块称操作系统的这种结构为层次管程结构这种结构设计方法为PCM方法59层次管程结构的优点(1):结构清晰统一同步操作相对集中,增加系统安全性用高级语言书写程序可以缩短系统的研制周期利用编译时检查取代硬件保护机构更加灵活降低了运行时检查的开销60层次管程结构的优点(2):由于只有进程是系统中并发执行单位因此可按照系统要求的并发度设置进程由于去掉了不必要的平行性从而减少了系统开销61层次管程结构的局限性(1)管程概念的一重要特征是保证模块内数据的完整性为了保证每一管程所管理的数据的完整性可采用局部互斥技术,或缩小临界区但在解决任意管程嵌套调用问题时仅是局部互斥难于实现要根据具体情况,或采用全局互斥或采用限制嵌套类型与重数等策略导致使用范围受到限制62层次管程结构的局限性(2)

资源管理局部化增加了模块的独立性和系统的安全性但对全局性资源或同时涉及多个资源的管理时不方便这也是引起管程嵌套调用的一个因素63管程:记录、协调各进程对临界资源使用要求供进程实现同步与互斥并完成对共享变量的修改类程:指一个专用(独占)的数据结构以及在此数据结构上定义的所有操作进程:执行单位实现系统中并发工作的基本成分管程、类程与进程的比较64建立于进程、类程、管程基础上的系统结构模式是从各进程出发对类程和管程的一系列嵌套调用直到系统核心PPPMMCC656.客户/服务器系统在客户/服务器结构中,需要把操作系统的服务功能划分为若干个服务进程,并让这些进程在用户态下来运行。其中的每一个服务进程称为一个服务器,如内存服务器、进程服务器、终端服务器、文件服务器等。而用户进程则称为客户进程。客户/服务器系统的工作方式可大致描述为:当客户进程需要请求某个服务时,有客户进程向所需的服务器进程发送一个请求,运行在核心态的操作系统内核会把客户进程的这一请求传递给相应的服务器进程,服务器进程接到请求后进行工作,工作完成后再把结果经内核返回给客户进程。客户/服务器系统的结构如图所示。6667客户/服务器系统的主要优点有以下两个方面:第一,提高了系统的可靠性。由于每个服务器都以独立的用户态进程方式运行,因此,当单个服务器出现故障(或重新启动)时,不会引起操作系统其它部分的崩溃。第二,适合于分布式系统中的应用。如果一个客户与一个服务器通信,当客户把请求发送给服务器后,就不必知道该请求是在自身机器上处理,还是通过网络被发送到别的机器上进行处理。687.微内核结构:现代很多操作系统都使用微内核结构。卡内基梅陇大学的Mach操作系统就是典型代表。MacOSX就采用了这种结构。69微内核现代操作系统的一个趋势将传统操作系统大部分代码分离出来放在更高的层次上即从操作系统中去掉尽可能多的东西而只留一个最小的核心70通常的实现方法将多数操作系统功能由用户进程来实现核心:只处理客户与服务器间的通信操作系统被分割成许多部分每一部分只处理一方面的功能如文件服务、进程服务、终端服务或存储器服务等71在微内核上建有应用运行环境的服务器

WorkspaceOS称之为个性服务器

WindowsNT称之为保护子系统微内核操作系统可提供多种OS运行环境72微内核结构的设计目标:为构造其他操作系统提供基础支持大而稀疏的空间能透明地使用网络资源在系统一级和应用一级均可拓展并行性高度的可移植性73途径:1、把传统意义上属于操作系统的代码由低层移向高层由核心移向用户要增加新功能仅需加结点2、消息传送机制

Client/Server74特点:每一部分变得很小,更易于管理所有服务器以用户进程的形式运行而不是运行在核心态所以它们不直接访问硬件这样处理的结果:假如在文件服务器中发生错误文件服务器可能崩溃但不会导致整个系统的崩溃75

微内核另一个优点适用于分布式系统如果一个客户通过消息传递与服务器通信客户无需知道消息是在本机处理还是通过网络送给远程机器的服务器76

优点:易于扩充,易于移植提高系统的可靠性提供多种操作环境适宜于分布计算模式有助于多处理器系统的实现支持实时任务77应用程序微内核操作系统DOS服务器UNI服务器VMS服务器OS/2服务器基于微内核的开放式系统环境系统程序接口(SPI)应用程序接口(API)78客户进程客户进程

进程服务器

终端服务器

文件服务器

内存服务器

。。。核心客户向服务器进程发送消息,以获得服务客户服务器模型79客户向服务器发送消息,以获得服务一个分布式系统中的客户服务器模型机器1客户核心机器2文件服务器核心机器3进程服务器核心机器4终端服务器核心80综合结构有些操作系统结合了层次与微内核两种结构,如WindowsNT81其他设计问题1、接口设计用户界面设计程序设计接口2、一些实现技术

策略与机制的分离静态结构与动态结构自顶向下的实现与自底向上的实现隐藏硬件细节间接处理82两种机器状态计算机系统都有两种运行状态(又叫处理机运行模式)一种是用户态(运行用户程序),另一种是核心态(运行操作系统)。当用户在程序中使用系统调用请求系统提供服务时,需要先将控制切换到核心态,然后由操作系统检查该调用的参数,调用并执行相应的系统调用,系统调用结束后,控制又返回给用户程序。83两种系统界面1.人机界面面向一般用户,人与计算机之间的接口。对于批处理系统,这个界面就是作业控制语言。对于会话式机器系统,这个界面由键盘命令及其图形图标组成。2.程序界面面向程序员,由系统调用指令或者中断、访管指令组成。系统调用指令是操作系统内核与用户态程序之间的惟一接口。84操作系统的特征1.操作系统的基本特征2.现代操作系统的某些新特征851. 并发所谓并发,是指两个或两个以上事件在同一时间间隔内发生。与并发对应的另外一个概念是并行。所谓并行,是指两个或两个事件在同一时刻发生。在单处理机系统中采用多道程序设计技术后,可以实现硬件之间的并行操作和程序之间的并发执行。硬件之间的并行操作是一个微观概念,例如,当I/O设备在进行I/O操作时,CPU可以进行计算工作。而程序之间的并行执行则是一个宏观上的概念。从宏观上看,一段时间内有多道程序在同时运行,但从微观上看,任意时刻却最多只能有一道程序真正在处理机上执行。即宏观上多道程序在并发运行,而微观上这些程序却是在交替执行的。操作系统的基本特征86通常把能够并发执行的程序称为并发程序,相应的系统称为并发系统。现代计算机系统是一种并发系统,操作系统作为这种并发系统的管理者,其本身也应该是并发执行的。应当指出,通常意义上的程序只是一个静态实体,他们是不能并发执行的。为使程序能够并发执行,系统必须为每个程序建立进程。所谓进程,可简单地理解为程序的执行,它是一个活动实体,并作为系统运行和资源分配的基本单位。操作系统的并发性有效地提高了系统资源的利用率和系统的吞吐量,但也导致了操作系统的复杂化,使得操作系统必须具有控制和管理各种并发活动的能力。872. 共享所谓共享是指系统中的硬件和软件资源可为多个用户同时使用。操作系统的主要职能之一就是组织好对资源的共享,使系统资源得到高效利用。根据资源属性的不同,可以有以下两种资源共享方式:

(1)互斥共享互斥共享也称为顺序共享,是指多个进程互斥使用某个资源。系统中的很多资源都是要求按互斥方式共享的。这些资源虽然可供多个进程共同使用,但在一段时间内却仅允许一个进程使用。当一个进程正在访问某一资源时,其它欲访问该资源的进程必须等待,仅当这个进程访问完毕,并释放该资源后,才允许另一进程对这个资源进行访问。我们把在一段时间内仅允许一个进程访问的资源称为临界资源。诸如字符设备、磁带机等物理设备以及某些变量、表格、队列等都属于临界资源,他们都要求按互斥方式共享。

(2)同时访问同时访问也称为并发共享,是指在一段时间内允许多个进程同时对它进行访问。这里所谓的“同时”仍然是宏观上的概念。而微观上,这多个进程却是在交替使用该资源,即任意时刻真正使用该资源的进程都只能有一个。典型的可同时访问的资源是磁盘。此外,一些用重入码编写的程序,也可实现同时访问。

88并发和共享是操作系统的两个最基本特征,它们之间是相辅相成、互为依存条件的。一方面,资源共享以程序并发执行为条件,若程序不能并发执行,自然就不存在资源的共享问题;另一方面,程序并发执行以资源共享为基础,若系统不能对资源共享实施有效管理,也必然会影响到程序的并发执行,甚至根本无法并发执行。只有系统能够高度并发,资源才能充分共享;也只有资源能够被充分共享,系统才能够更好地并发。893. 虚拟所谓虚拟是指把物理上的一个实体变成逻辑上的多个对应物。前者是实的,即实际存在的;后者是虚的,即逻辑上的。例如,在多道程序系统中,虽然只有一个CPU,微观上只能执行一道程序,但通过对CPU的分时使用,宏观上在一段时间间隔内能同时运行多道用户程序。即把一台物理上的CPU虚拟成了多台逻辑上的CPU。虚拟的另外一种观点是指虚拟出来的对应物只不过是用户主观上的一种错觉,并不是客观上存在的东西。例如,在分时系统中,每个终端用户都以为自己单独使用了一台计算机,这实际上只是用户的一种错觉,原因是物理计算机只有一台。904. 异步性所谓异步性是指内存中的多个进程均按照各自独立的、不可预知的速度向前推进。在多道程序环境下,尽管允许多个进程并发执行,但由于资源等因素的限制,进程通常不能一直不停地执行,而是以走走停停的方式运行的。内存中的每个进程何时执行,何时暂停,以怎样的速度向前推进,每道程序总共需要多少时间才能完成等,都是不可预知的。很可能是先进入内存的作业后完成;而后进入内存的作业先完成。或者说,进程是以异步方式运行的。尽管如此,但只要运行环境相同,作业经多次运行,都会获得完全相同的结果,因此,异步运行方式是允许的。91现代操作系统的某些新特征1.微内核结构2.多线程3.对称多处理4.分布式操作系统5.面向对象技术921.微内核结构只给内核分配一些最基本的功能,包括地址空间、进程通信和最基本的调度。而其他的操作系统的功能都由运行在用户模式下的进程(客户进程,服务程序)实现。把内核和服务程序的开发分离开,可以为特定的应用程序或环境要求定制服务程序。优点:可以简化实现,提供灵活性,很适合于分布式环境。93基于微内核结构的操作系统和传统操作系统相比,具有以下特点:①内核精巧.通常内核只由任务管理、虚存管理和进程间通信3个部分组成.传统操作系统内核中的许多部分都被移出内核.采取服务器方式实现;②面向多处理机和分布式系统.基于微内核的操作系统,在内核中引入了多处理机调度和管理机制,并引入了细粒度并发机制——线程,使得多个处理机可以在同一个任务中并行地执行;③基于客户/服务器体系结构.在微内核结构的操作系统中,任务间通信机制——消息机制是系统的基础,操作系统的各种功能都以服务器方式实现,向用户提供服务.用户对服务器的请求是以消息传递的方式传给服务器的.942.多线程把执行一个应用程序的进程划分成可以同时运行的线程,提高了执行效率。在同一个进程中运行多个线程,在线程间来回切换所涉及的处理机开销要比在不同进程间进行切换的开销少。953.对称多处理对称多处理不仅指计算机硬件结构,而且指反映硬件结构的操作系统行为。对称多处理是具有以下特征的独立计算机系统:1.由多个处理器组成;2.多个处理器共享同一个主存和I/O设备。3.所有处理器都可以执行相同的功能与单处理器结构相比,SMP在性能、可用性和增量扩展上具有优势。964.分布式操作系统是由网络中的所有计算机共享的操作系统。是个一体化的系统,,是为分布式计算机系统配置的操作系统。除了最低级的输入/输出设备资源外,所有的任务都可以在系统中任何别的处理机上运行,并为用户提供一个统一的界面和标准接口。975.面向对象技术用于给小内核增加模块化的扩展上,简化了进程间资源和数据的共享,便于保护资源免受未经授权的访问。基于对象的结构使程序员可以定制操作系统,而不会破坏系统的完整性。使系统开发变得容易。98操作系统的功能用户接口处理机管理存储管理设备管理文件管理99用户接口操作系统与用户的接口也简称为用户接口。在以往的操作系统中,用户接口通常仅有命令和系统调用两种形式,前者供用户在终端键盘上使用,后者供用户在编写程序时使用。而在现代操作系统中,除上述两种接口外,又向用户提供了一种图形接口。100(1)命令接口在命令接口方式下,用户可以通过该接口向作业发出命令,以控制作业的运行。

(1)联机用户接口该接口是为联机用户提供的,它由一组建盘命令和命令解释程序所组成。每当用户在终端或控制台上键入一条命令后,系统便立即转入相应的命令解释程序,对该命令进行解释并执行。命令完成后,控制又返回到终端或控制台上,等待用户键入下一条命令。(2)脱机用户接口该接口是为批处理作业的用户提供的,故也称为批处理用户接口。它由一组作业控制语言JCL组成。批处理作业的用户不能直接与自己的作业打交道,只能委托系统代替用户对作业进行控制和干预。用户可以使用JCL语言,把需要对作业进行的控制和干预事先写在作业说明书上,然后,将作业连同说明书一起提供给系统。101(2)程序接口该接口是为用户程序在执行过程中访问系统资源而设定的,是用户程序取得操作系统服务的唯一途径。程序接口由一组系统调用组成,每个系统调用都是一个能完成特定功能的子程序。系统调用是操作系统提供给用户程序调用的一组“特殊”接口。用户程序可以通过这组“特殊”接口来获得操作系统内核提供的服务,比如用户可以通过文件系统相关的调用请求系统打开文件、关闭文件或读写文件,可以通过时钟相关的系统调用获得系统时间或设置定时器等。102(3)图形接口图形用户接口采用图形化的操作界面,用非常容易识别的图标将系统的各种命令直观、逼真的表示出来。用户可通过鼠标、菜单和对话框来完成对应用程序和文件的操作。这样,用户就不需要去记忆那些操作系统命令以及它们的格式。并且,图形用户接口可以方便地将文字、图形和图像集成在一个文件中。可在文字型文件中加入一幅或多幅彩色图画,也可在图画中写入必要的文字,甚至可以把图画、文字和声音集成在一起。注意效率!103处理机管理处理机管理的主要任务是对处理机的分配和运行实施有效管理。在多道程序环境下,处理机的分配和运行都是以进程为单位的,因此对处理机的管理可归结为对进程的管理。进程管理的主要功能包括:

(1)进程控制(2)进程同步(3)进程通信(4)进程调度104(1)进程控制进程控制的基本功能是创建进程和撤销进程,以及控制进程的状态转换。即当一个作业装入运行时为其创建进程;当一个进程完成时撤销该进程;当一个进程需要I/O时让该进程等待;当一个进程等待的事件发生后再被唤醒。(2)进程同步进程同步是指系统对并发执行的进程的协调。最基本的进程同步方式有两种:一种是协调共享临界资源的诸进程实现互斥访问;另一种是协调为完成共同任务而相互合作的进程实现同步推进。(3)进程通信进程通信是指相关进程之间所进行的信息交换。通常,相互合作进程在运行时需要交换一定的信息,这种信息交换由进程通信来实现。(4)进程调度进程调度是指按照一定算法在等待执行的进程中选出其中一个,给它分配处理机、设置运行环境,并使其投入执行。当一个执行中的进程完成,或因某事件无法执行需要重新分配处理机时,将引起进程调度。105存储管理存储管理的主要任务包括:为多道程序的并发运行提供良好环境;为用户使用存储器提供方便;提高存储器的利用率;为尽量多的用户提供足够大的存储空间。为实现上述任务,存储管理应具备以下功能:(1)内存分配(2)内存保护(3)地址映射(4)内存扩充106(1)内存分配内存分配的功能是为每道程序分配必要的内存空间。内存分配可分为静态和动态两种方式。在静态分配方式下,每个作业所占的内存空间是在其装入时确定的,作业一旦被装入内存,其整个运行期间不允许再重新申请内存,也不允许从内存的一个位置移到另一个位置。在动态分配方式下,每个作业需要的基本内存空间也是在装入时确定的,但允许作业在其运行过程中另外申请附加内存,也允许作业从内存的一个位置移到另外一个位置。(2)内存保护内存保护的功能是为了防止因一道程序错误而干扰其它程序,或因用户程序错误而侵犯操作系统的内存区。一般的内存保护方法是以硬件保护设施为基础,再加上软件的配合来实现的。内存的分配和保护功能为多道程序的运行提供了良好的环境。107(3)地址映射地址映射的功能是把目标程序中的地址转换为内存中所对应的实际地址。在多道程序系统中,目标程序所限定的地址范围和它被装入内存后的位置是很难一致的,因此操作系统必须提供地址映射功能。该功能可使用户或编译程序不必过问物理存储空间的分配细节,从而为用户编程提供了方便。(4)内存扩充内存扩充的功能是在不增加物理内存空间的前提下,使系统能够运行内存要求量比实际物理内存大得多的作业,或让更多的作业并发执行。内存扩充是借助于虚拟存储管理技术来实现的。108设备管理设备管理的主要任务有:为用户分配I/O设备,完成用户程序请求的I/O操作,提高CPU和输入输出设备的利用率,改善人机界面。为实现上述任务,设备管理应具备以下功能:(1)缓冲管理(2)设备分配(3)设备处理(4)虚拟设备管理109(1)缓冲管理缓冲是指在内存中划出来的用来存放暂时信息的一片区域。为了缓解CPU与I/O设备间速度不匹配的矛盾,增加CPU与设备、设备与设备间操作的并行程度,提高CPU和I/O设备的利用率,通常在系统中设置了各种不同类型的缓冲区。操作系统应能对这些缓冲进行有效管理。(2)设备分配设备分配是指根据用户所请求的设备类型、数量,按照一定的分配算法对设备进行分配。同时也涉及到对设备请求未能满足的进程的管理问题。110(3)设备处理设备处理是指启动指定的I/O设备,完成用户规定的I/O操作,并对设备发来的中断请求进行及时的响应和处理。(4)虚拟设备管理虚拟设备也称为逻辑设备,是指用户意识中的、而实际上并不存在的设备。为提高设备的利用率和加快程序的执行速度,操作系统可通过虚拟设备技术,把每次仅供一个进程使用的独享设备改造成能被多个用户使用的虚拟设备。这样,每个用户都觉得自己得到了一台设备,但这台设备并不是真正的物理设备,而是由操作系统虚构出来的逻辑设备。111文件管理现代计算机系统的外存中,都以文件形式存放着大量的信息。操作系统必须配置相应的文件管理机构来管理这些信息。文件管理机构的主要功能包括:(1)文件存储空间的管理(2)目录管理(3)文件读写管理(4)文件保护(5)文件系统的安全性(6)文件接口112(1)文件存储空间的管理文件存储空间是存放文件信息的载体,为实现对它的管理,文件管理机构必须能够记住整个文件管理存储空间的使用情况,并且能够根据文件需要对其进行分配和回收。至于文件空间的分配和回收,都是以盘块为单位进行的。(2)目录管理目录或称文件目录,是用来描述系统中所有文件基本情况的一个表。最简单的文件目录由若干个目录项所组成,每个目录项包括一个文件的名字、物理位置及其它大量管理信息。系统对文件的管理实际上是通过文件目录进行的。在不同系统中,文件目录有着不同的组织方式。文件管理机构应能够有效地管理所有文件目录。(3)文件读写管理对文件进行读写是文件管理必须具备的最基本操作。以读为例,应该能够从外存指定区域把指定数量的信息读入到内存指定的用户区或系统区。113(4)文件保护文件保护是为了防止文件被盗窃或被破坏。文件保护应能够防止未经核准的或冒名顶替的用户存取文件,防止被核准的用户以不正当的方式使用文件。(5)文件系统的安全性文件系统的安全性是指文件系统避免因软件或硬件故障而造成信息破坏的能力。为尽量减少在系统发生故障时对文件系统的破坏,最简便的措施是为重要的文件保存多个副本,即“定期转储”,当系统出现故障时,可以装入转储的文件来恢复文件系统。(6)文件接口文件管理机构应向用户提供一个使用文件的接口,使用户能通过该接口,很方便地对文件进行建立、打开、关闭、撤销、读、写等操作。114Linux操作系统简介Linux是类Unix操作系统。(Linux=LinuxIsNotUNIX)Unix系统是1969年由Bell实验室的KenThompson,DennisRitchie,DouglasMcIlory,和JoeOssanna设计实现的。115Linux操作系统简介GNU是RichardStallman1983年在MIT发起的一个自由软件和大范围合作工程。116Linux操作系统简介Minix是最小的类Unix操作系统,是AndrewS.Tanenbaum专门为教学编写的。117Linux操作系统简介Linux是LinusTorvalds在Minix的基础上开发的内核。118Linux操作系统简介如今,从各种嵌入式系统到超级计算机系统,Linux作为操作系统得到了广泛的应用。它的服务器版LAMP(Linux,Apache,MySQL和PHP)应用框架也得到了广泛的应用。常见的版本:RedHat/Fedora、CentOS、Debian/Ubuntu、

SUSE、Mandriva、FreeBSD、Gentoo当前最新的Linux内核3.2.7(3.18.8)参考网站:/

119LINUX系统的特

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论