操作系统教学课件_第1页
操作系统教学课件_第2页
操作系统教学课件_第3页
操作系统教学课件_第4页
操作系统教学课件_第5页
已阅读5页,还剩124页未读 继续免费阅读

下载本文档

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

文档简介

操作系统OperatingSystem两个问题全球最大的软件公司Microsoft(微软)最重要的软件产品(立家之本)操作系统(Windows)全球第二大的软件公司Oracle(甲骨文)最重要的软件产品(立家之本)数据库(Oracle)自我介绍孙锦程计算机教研组主楼315电子邮件:china_sjcsina为什么学习操作系统

加深对使用的操作系统的理解,有利于深入编程;用户为了开发应用程序必须与操作系统打交道编程时借鉴操作系统的设计思想和算法(比如插件开发、微内核)操作系统中所用的许多概念和技巧可以推广应用到其他领域存在人们意识不到的大量“操作系统”(如:嵌入式系统-家电、手机)设计操作系统或者修改现有的系统选择购买操作系统:因为我们并不总使用Windows2000/XP操作系统涉及到计算机科学很多领域计算机体系结构/硬件软件设计程序设计语言数据结构算法网络学习核心技术并能在其他地方应用操作系统是目前最复杂的软件系统

课程的地位及特点本课程地位

专业核心课程

考研核心课程

技术开发的理论基础课程的特点实践性强(从实践总结出原理)涉及面广(并行程序,性能问题,结构问题,程序方法论,软件工程等等)错综复杂:纵横交错如何学好本课程1、理论学习2、实验、实习3、源代码分析、参与(Linux)重点参考书1、汤子瀛等,《计算机操作系统》,西安电子科技大学2、南京大学孙钟秀院士,《操作系统教程》第三版,高等教育出版社3、Silberschatz,《操作系统概念》(中、英文)第六版,高等教育出版社

参考书操作系统基础屠立德屠祁清华大学出版社现代操作系统陈向群等译机械工业出版社操作系统吴企渊梁燕清华大学出版社计算机操作系统徐甲同等西安电科大出版社操作系统教程孟庆昌西安电科大出版社计算机操作系统教程张尧学史美林清华大学出版社计算机操作系统教程周长林左万历高等教育出版社Windows操作系统原理尤晋元、史美林机械工业出版社OperatingSystemsPrinciplesLubomirBic清华大学出版社本课程课件第一章概论第二章进程管理第三章内存管理第四章设备管理第五章文件管理和作业管理第六章网络操作系统操作系统第一章概论第二章进程管理第三章内存管理第四章设备管理第五章文件管理和作业管理第六章网络操作系统操作系统第一节操作系统的概念第二节操作系统的发展第三节操作系统的分类第四节操作系统的结构第一章

概论第一节操作系统的概念计算机系统操作系统在计算机系统的地位计算机硬件操作系统实用程序应用程序操作系统设计者程序员终端用户

操作系统是一个系统软件,它管理计算机系统中的软件和硬件资源,在计算机硬件和用户之间起到一个接口作用。操作系统的定义教材定义:用以控制和管理计算机硬件和软件资源、合理地组织计算机的工作流程以及方便用户使用计算机的程序的集合。这个定义具有以下三个方面的含义:1、操作系统统一控制和管理计算机系统所拥有的硬件和软件资源,使之可以得到更加有效合理的利用。2、操作系统能合理地组织计算机系统的工作流程,增强系统的处理能力。3、操作系统提供了用户与裸机之间的接口,使用户更方便地使用计算机。两个简单有趣的定义1、购买“操作系统”时,零售商所装的所有东西。2、一直运行在计算机上的程序二、操作系统的特征1、并发性2、共享性3、异步性/随机性4、虚拟性二、操作系统的特征1、并发性

并发性是指在计算机系统中同时存在有多个程序,从宏观上看,这些程序是同时向前推进的。单CPU环境下,并发程序是在CPU上交替运行的。用户程序与用户程序;用户程序和操作系统程序之间并发执行。在多处理器环境下,多个程序的并发特征,就不仅在宏观上是并发的,而且在微观(即在处理机一级)上也是并发的。

但是,不论是什么计算环境,我们所指的并发都是在一个操作系统的统一指挥下的并发。2、共享性

是指操作系统程序与多个用户程序共享系统中的各种资源。并发和共享是操作系统两个最基本的特性,它们互为依存。1、资源的共享是由于程序的并发执行而引起的,若系统不允许程序并发执行,自然就不存在资源共享问题。2、若系统不能对资源共享实施有效管理,必然会影响到程序的并发执行,甚至程序无法并发执行,操作系统也就失去了并发性,导致整个系统效率地下。3、随机性/异步性

操作系统的运行是在一个随机的环境中运行的,即用户不能对所运行的程序的行为以及硬件设备的情况做任何的假定。我们无法知道一个运行着的程序会在什么时候做什么事情,也无法知道一个设备什么时候向处理器发出中断请求,因此我们也无法知道操作系统正处于什么样的状态之中。它是把物理上的一个实体变成逻辑上的多个对应物,或者把物理上的多个实体变成逻辑上的一个对应物的技术。多道程序设计中的CPUSpooling技术窗口技术时分/频分多路-物理信道虚拟存储器4、虚拟性计算机的逻辑结构中央处理器外存储器内存储器输出设备系统总线输入设备适配器适配器适配器I/O端口I/O端口外存储器接口控制器运算器存储器三、操作系统的功能从功能即资源管理的观点看,操作系统的主要任务就是管理计算机系统的资源。操作系统的功能和目标处理机管理(进程管理)存储器管理(内存管理)设备管理文件管理作业管理操作系统的功能和目标一、处理机管理(进程管理)

进程管理主要是对处理机进行管理。CPU是计算机中最宝贵的硬件资源。为了提高CPU的利用率,操作系统采用了多道程序技术。当一个程序因等待某一条件而不能运行下去时,就把处理机占用权转交给另外一个可运行程序。或者,当出现了一个比当前运行的程序更重要的可运行程序时,后者应能抢占CPU。为了描述多道程序的并发执行,就引入了进程的概念。通过进程管理协调多道程序之间的关系,解决处理机实施分配策略,使CPU资源得到最充分的利用。正是由于操作系统对处理机管理策略的不同,从而呈现在用户面前的就是具有不同性质的操作系统,例如批处理方式、分时处理方式和实时处理方式等。

二、内存管理有关内存的知识内存是现代计算机系统操作的中心,内存是可以被CPU和I/O设备所共同访问的数据的仓库。一个程序要执行的话,它必须先映射成绝对地址并装入内存。存储器管理主要管理内存资源。它包括以下几点:1)内存分配:在内存中除了操作系统、其他系统软件外,还有一个或多个用户程序,操作系统要解决分配问题,使其互不冲突。2)存储保护:由于系统中有多个程序,要保证他们之间互部干扰,保证用户程序不破坏系统程序。3)内存扩充:当用户作业所需要的内存量超过计算机系统所提供的实际内存容量时,就要把内存和外存结合起来,为用户提供一个比实际内存大的多的虚拟存储器。类似于仓库管理

三、设备管理四、文件管理

系统中的信息资源(程序和数据)是以文件的形式存放在外存储器上的,需要时再将其装入。文件管理的任务就是有效支持文件存储、检索修改,解决文件共享、保密和保护,以方便用户安全、方便地访问文件。五、作业管理/用户接口

1)程序级:提供一组广义指令供用户程序调用。

2)作业级:提供一组控制操作指令供用户去组织、控制自己的作业执行。

基本任务:使用户合理调度运行用户作业

小结操作系统的定义操作系统的特征-并发、共享、随机、虚拟操作系统的功能-进程管理、内存管理、设备管理、文件管理、作业管理第一节操作系统的概念第二节操作系统的发展第三节操作系统的分类第四节操作系统的结构第一章

概论

如同任何其他事物一样,操作系统也有它的诞生、成长和发展过程。为了更清楚地把握操作系统的实质,了解操作系统的发展是很有必要的,因为操作系统的许多概念都是在操作系统的发展过程中出现并逐步得到发展和成熟的。第二节操作系统的发展历史穿孔操作员计算机室卡片盒

许多机时被操作员在机房里走来走去的过程浪费了。一、手工操作

在第一代计算机时期,构成计算机的主要器件是电子管,计算机运行速度慢,没有操作系统。用户直接用机器语言编制程序,并在上机时独占全部计算机资源,用户既是程序员,又是操作员。程序员手工操作阶段开关置内存地址,按’装入地址’按钮开关置程序始址,按’运行’按钮开关置机器指令,按’装入数据’按钮穿孔->纸带(卡片)装上输入机->程序和数据送入计算机->控制台开关启动程序运行->计算->输出结果->取走纸带。操作过程运行时间=作业时间+操作时间缺点:用户独占资源人工干预较多(浪费处理机时间,极易出错)计算时间拉长例子:计算机速度计算时间作业建立和人工干预手工占的比例每秒1万次运行1个小时花了3分钟5%每秒10万次运行6分钟花了3分钟50%每秒100万次运行36秒花了3分钟83%改进的两个重点:缩短手工操作和人工干预时间CPU和I/O速度不匹配,矛盾越来越突出。20世纪50年代晶体管计算机出现,开始出现各种高级语言,操作人员、程序人员和维护人员开始有了明确分工。由于处理器速度的提高,造成手工操作的输入输出与计算机处理速度的不匹配现象。因此,人们设计了监督程序(或称为管理程序)来实现作业的自动转换处理。程序员将数据、程序以及用作业语言书写的作业说明书作为作业信息提交给操作员,操作员将这些作业信息“成批”地输入到计算机中,有监督程序识别每一个作业进行处理。这种自动定序的处理方式称为“批处理”。

二、批处理

联机I/O批处理原理:借助于作业控制语言变革了计算机的手工操作方式。用户不再通过开关和按钮来控制计算机的执行,而是通过作业控制卡来描述对作业的加工和控制步骤,并把作业控制卡和程序、数据提交给操作员,操作员收集到一批作业后一起把它们放到卡片机上输入计算机。计算机上则运行一个驻留在内存的执行程序,以对作业进行自动控制和成批处理,自动进行作业转换以减少系统空闲和手工操作时间。监督程序标准输入程序编译程序装配程序标准输出和处理程序输入用户作业程序编译后的用户作业程序装配好的用户作业程序执行、输出结果调用子程序转到下一个作业联机I/O批处理的缺点:速度慢,I/O设备和CPU仍然串行工作,CPU时间浪费相当大。脱机I/O批处理:另设一台辅机,仅与I/O设备打交道,不与主机连接。I/O工作脱离了主机,辅机和主机可以并行工作,大大加快了程序的处理和数据的输入输出。.用户纸带机卡片机打印机输入磁带输出磁带系统监督程序联机批处理.用户纸带机卡片机打印机输入磁带输出磁带监督程序

脱机批处理卫星机系统在早期的单道批处理系统中,内存中仅有单个作业在运行,致使系统中仍有许多资源空闲,设备利用率低,系统性能较差。例子:计算某个数据处理问题,要求从输入机(速度为6400字符/秒)输入500个字符,经处理(费时52毫秒)后,将结果(假定为2000个字符)存到磁带上(磁带机速度为10万字符/秒),然后,再读500个字符处理,直至所有的输入数据全部处理完毕。

单道算题运行时处理器的使用效率处理器的利用率为:

52/(78十52十20)≈35%

分析上面的例子,可以看出效率不高的原因,当输入机输入500个字符后,处理器只花了52毫秒就处理完了,而这时第二批输入数据还要再等98毫秒时间才能输入完毕,在此期间CPU一直空闲着。这个例子说明单道程序工作时,计算机系统的各部件的利用率没有得到充分发挥。为了提高效率,考虑让计算机同时接受两道算题,当第一道程序在等待外围设备的时候,让第二道程序运行,以降低CPU空闲等待时间,那么,处理器的利用率显然可以有所提高。例如,计算机在接受上述算题时还接受了另一道算题:从另一台磁带机上输入2000个字符,经42毫秒的处理后,从行式打印机(速度为1350行/分)上输出两行。当这两道算题同时进入内存计算时,计算过程如图所示。其中,P1表示程序甲占用CPU对输入机输入的500个字符进行处理,由于52毫秒处理便结束,下次处理要等待98毫秒之后,故这个时间段内CPU是空闲的。系统调度程序乙工作,它从磁带机上输入2000个字符后,P2表示对这批数据进行处理。相应的I/O设备和CPU的操作都是并行的。不难算出,此时处理器的利用率为:(52+42)/150≈63%三、多道程序系统

第二代计算机后期,特别是计算机进入第三代以后,系统软件和硬件都有了很大发展,特别是主存容量的增大以及大容量辅助存储器的出现,这一切都使得计算机体系结构发生了很大变化。由以中央处理器为中心的结构改变为以主存为中心,而通道使得输入输出操作与CPU操作的并行处理成为可能。

所谓多道是指允许多个程序同时存在于主存中,由中央处理器以切换方式为之服务,使得多个程序可以同时执行,计算机资源不再被某一个用户所独占。

多道程序设计的好处:1、提高了CPU的利用率;2、提高了内存和I/O设备的利用率;3、改进了系统的吞吐率;4、充分发挥了系统的并行性缺点是:延长了作业周转时间在多道程序设计中需要解决的技术问题:存储保护与程序浮动;处理器的管理和分配;系统资源的管理和调度仍需要进行的改进:在批处理系统中,用户不能干预自己程序的运行,无法得知程序运行情况,对程序和排错不利。单用户

随着计算机的发展,硬件价格越来越低,人们开始关注计算机使用的方便性,也就是说如何提高和增加计算机的人-机对话功能,因此很快就出现了分时系统。这种系统是在一台计算机上挂若干台联机终端,用户通过自己的终端与计算机对话来控制、调试、干预他的程序。而系统则是将处理机的时间划分为小的时间间隔(又称时间片),轮流地为每个终端上的作业服务,使每个用户都感觉好象自己在使用计算机。

四、分时操作系统分时操作系统多个联机用户通过终端(键盘/显示器)同时使用一台计算机系统进行计算分时操作系统具有以下特性:同时性独立性及时性交互性日常生活:律师分时操作系统

分时操作系统和批处理操作系统都基于多道程序设计技术,但存在下列区别:

目标不同:批处理(提高系统资源利用率和作业吞吐率)、分时(多个用户快速响应)

适应作业的性质不同:批处理(适应已经调试好的大型作业)、分时(正在调试的小作业)

资源使用率不同:批处理(合理安排不同负载的作业,使资源利用率较佳)、分时(终端用户使用相同程序时,调用开销较小)。

作业控制方式不同:批处理(用户通过JCL语句书写作业控制流,预先提交,脱机工作)、分时(用户键盘输入,交互方式,联机作业)批处理、多道程序=〉充分利用系统资源(CPU、内存、外设)分时系统=〉为用户提供与计算机系统直接交互的能力,允许许多用户共享计算机系统现代操作系统的正式形成

多道和分时系统的出现,标志着现代操作系统的正式形成。操作系统发展的主要动力

器件快速更新换代计算体系结构不断发展提高计算机系统的资源利用率的需要让用户使用计算机越来越方便的需要满足用户新要求,提供给用户新服务第一节操作系统的概念第二节操作系统的发展第三节操作系统的分类第四节操作系统的结构第一章

概论第三节操作系统的分类

根据操作系统在用户界面的使用环境和功能特征的不同,操作系统一般可分为三种基本类型,即批处理系统、分时系统和实时系统。随着计算机体系结构的发展,又出现了嵌入式操作系统、个人操作系统、网络操作系统和分布式操作系统。单用户操作系统多用户操作系统批处理系统分时操作系统实时操作系统1、批处理操作系统(BatchProcessing)

批处理操作系统的工作方式是:用户将作业交给系统操作员,系统操作员将许多用户作业组成一批作业,输入到计算机中,在系统中形成一个自动转接的连续的作业流,然后启动操作系统,系统自动、依次执行每个作业。最后由操作员将作业结果交给用户。优点:作业流自动化;效率高;吞吐率高。缺点:无交互手段;调试程序困难。

分时操作系统的工作方式是:一台主机连接了若干终端,每个终端有一个用户在使用。用户交互地向系统提出命令请求,系统采用时间片轮转法方式处理服务请求,并通过交互方式在终端上向用户显示结果。

分时系统具有多路性、交互性、“独占”性和及时性的特征:

多路性:宏观上看多人同时使用一个CPU;

交互性:用户根据系统响应结果进一步提出新请求;

“独占”性:用户感觉不到计算机为其他用户服务;

及时性:系统对用户提出的请求及时响应。2、分时操作系统3、实时操作系统实时操作系统是指计算机能及时响应外部事件的请求,在规定的严格时间内完成对该事件的处理,并控制所有实时设备和实时任务协调一致地工作的操作系统。目前有三种典型的实时系统:过程控制系统、信息查询系统和事务处理系统。1)计算机用于生产过程控制时,要求系统能现场实时采集数据,并对采集的数据进行及时处理,进而能自动地发出控制信号控制相应执行机构,使某些参数(压力、温度、距离、湿度)能按预定规律变化,以保证产品质量,导弹制导系统,飞机自动驾驶系统,火炮自动控制系统都是实时过程控制系统。2)计算机还可用于控制进行实时信息处理,情报检索系统是典型的实时信息处理系统,计算机接收成千上百从各处终端发来的服务请求和提问,系统应在极快的时间内做出回答和响应。3)事务处理系统不仅对终端用户及时作出响应,而且要对系统中的文件或数据库频繁更新。例如,银行业务处理系统,每次银行客户发生业务往来,均需修改文件或数据库。要求这样的系统响应快捷、安全保密,可靠性高。操作系统的进一步发展

微机(个人计算机)操作系统网络操作系统的发展分布式操作系统的发展嵌入式操作系统的发展

个人计算机系统是一种单用户多任务的操作系统。它主要供个人使用,功能强、价格便宜。4、个人计算机操作系统

从七十年代中期到八十年代早期,微型计算机上运行的一般是单用户单任务操作系统,如:CP/M、CDOS(Cromemco磁盘操作系统)、MDOS(Motorola磁盘操作系统)和早期的MS-DOS(Microsoft磁盘操作系统)。八十年代以后到九十年代初,微机操作系统开始支持单用户多任务和分时操作。以MP/M、XENIX和后期MS-DOS为代表。

近年来,微机操作系统得到了进一步发展,以Windows、OS/2、MACOS和Linux为代表的新一代微机操作系统具有GUI、多用户和多任务、虚拟存储管理、网络通信支持、数据库支持、多媒体支持、应用编程支持API等功能。5、网络操作系统

网络操作系统是基于计算机网络的一种操作系统,是在各种计算机操作系统之上按网络体系结构协议标准开发的软件,包括网络管理、通讯、安全、资源共享和各种网络应用。其主要目标是计算机之间的相互通讯和资源共享。因为现代操作系统的主要特征之一就是网络功能,因此,除了20世纪90年代初期时,Novell公司的Netware系统被称为网络操作系统之外,人们一般不再特指某个操作系统为网络操作系统。6、分布式操作系统

大量的计算机通过网络被连接在一起,可以获得极高的运算能力和广泛的数据共享。这种系统被称为分布式操作系统。

分布式操作系统具有:统一性、共享性、“透明性和自治性的特征:

统一性:它是一个统一的操作系统;

共享性:所有的分布式系统中的资源是共享的;

透明性:用户并不知道某一操作具体运行在哪一台计算机。

自治性:分布式系统中的多个主机都处于平等地位。7、嵌入式操作系统电子消费产品-家用电器、手机、武器、控制设备嵌入式(计算机)系统硬件不再以物理上独立的装置或设备形式出现,而是大部分甚至全部都隐藏和嵌入到各种应用系统中。特点:微型化-可用内存小(1MB以内、没有外存、微处理器字长短且运算速度有限、能提供的能源较少、外部设备和被控设备千变万化)可定制-专业化实时性-语音、视频、军事武器、航空航天、交通运输可靠性第一节操作系统的概念第二节操作系统的发展第三节操作系统的分类第四节操作系统的结构第一章

概论第四节操作系统的体系结构一、操作系统的结构设计概况和其构件二、操作系统的结构模块接口法(模块组合法、整体式结构)层次式结构虚拟机结构客户/服务器结构和微核结构1.4.1操作系统结构设计概况(1)

操作系统设计呈现出以下特征:一是复杂程度高,二是生成周期长,三是正确性难保证。例如,IBMOS/360、Windows2000操作系统的结构设计概况(2)

操作系统结构设计有两层含义

一.是研究操作系统程序的数据结构和控制结构;二.是组成操作系统程序的构造过程和方法。采用不同的构件和构造方法可组成不同结构的操作系统。操作系统的内核现代操作系统中大都采用了进程的概念,为了解决系统的并发性、共享性和随机性,并使进程能协调地工作,单靠计算机硬件提供的功能是十分不够的。例如,进程调度工作目前就不能用硬件来实现;而进程自己调度自己也是困难的。所以,系统必须有一个软件部分能对硬件处理器及有关资源进行首次改造,以便给进程的执行提供良好运行环境,这个部分就是操作系统的内核。操作系统的内核内核不是进程,是提供支持系统运行的基本功能的一组程序模块,有了内核的支撑,运行环境得到改善,安全性得到保证,系统效率就能提高。分类:微内核和单内核。内核的执行有以下属性操作系统的状态:核心态(管态)、用户态(目态)。内核和裸机组成了一台虚拟机。内核被触发和内核处理流程

运行进程发现中断源发现中断源装配中断码交换PSW自愿中断事件保护现场分析和传递参数原语?原语处理创建系统进程系统调用处理强迫中断事件机器故障中断处理I/O中断处理程序中断处理队列调整低级调度运行进程是否管态目态目态硬件完成操作系统内核完成外中断处理创建系统进程二、操作系统的结构

1、模块组合结构

2、层次结构

3、虚拟机结构

4、客户/服务器和微核法1模块组合(接口)法这是早期使用的一种结构设计方法。“模块接口”,一是“模块化”,二是“接口”。将一个大型软件系统按功能划分成若干相对独立的模块,并规定好模块之间的接口,使模块之间的联系尽可能少。然后对模块分别进行设计、调试,最后将模块按规定的接口连接起来,形成完整的、模块化的操作系统。功能1功能3功能2功能4功能7功能8功能5功能6功能9功能10功能12功能11模块接口法优点:①结构紧密、组合方便,对不同环境和用户的不同需求,可以组合不同模块来满足,灵活性大;②针对某个功能可用最有效的算法和任意调用其他模块中的过程来实现,因此,效率较高;③由于划分成模块和子模块,设计和编码可齐头并进,能加快操作系统研制过程。缺点:模块独立性差,模块之间牵连甚多,形成复杂的调用关系,甚至可能有很多循环调用,造成系统结构不清晰,正确性难保证,可靠性降低,系统功能的增、删、改十分困难。为了克服模块接口法的缺点,人们又进一步提出了有序分层法。2、层次结构

操作系统的层次结构就是把所有模块按功能的调用次序分别排列成若干层,各层之间的模块只能是单向依赖或单向调用。层次结构的优点:把复杂的整体问题分解成若干个比较简单的相对独立的部分,使的一个复杂的操作系统分解成许多功能单一的模块。

这种层次结构是单向依赖的,上一层模块所提供的功能是建立在下一层的基础上的,或着说上一层功能是下一层功能的扩充和延续,逐步为用户提供一个功能强大的计算机系统。处理器分配和多道程序内存和磁盘管理

进程通讯输入/输出管理用户程序操作员

功能优缺点1、整体问题局部化:分解为单一功能的模块,组织成层次结构,具有单向依赖性,使层次间的依赖和调用关系清晰规范。2、增加、修改和替换一个层次不影响其他层次,有利于系统的维护和扩充。3、层次结构是分层单向依赖的,必须要建立模块间的通信机制,系统花费在通信上的开销较大。3、虚拟机结构虚拟机系统的最早尝试是IBM公司的CP/CMS,后来改名为VM/370(SeawrightandMacKinnon,1979),这一系统的后继产品今天仍然在IBMS/390等大型主机上广泛使用。它基于如下思想,一个分时系统应该提供以下特性:(1)多道程序;(2)一个具有比裸机更方便、界面扩展的计算机。VM/370的主旨在于将此二者彻底地隔离开来。物理计算机资源通过多重化和共享技术可改变成多个虚拟机。这种技术的基本做法是:通过用一类物理设备来模拟另一类物理设备,或通过分时地使用一类物理设备,把一个物理实体改变成若干个逻辑上的对应物。物理实体是实际存在的,而逻辑上的对应物是虚幻的、感觉上的。虚机器4客户/服务器与微内核结构

客户/服务器结构的思想:将操作系统分成两大部分:一是运行在用户态并以客户/服务器方式活动的进程;

二是运行在核心态的内核。

客户/服务器结构的思想每个进程实现一类服务,称服务器进程(如文件服务、进程管理服务、存储管理服务、网络通信服务等)。它的任务是检查是否有客户提出服务请求,如果有请求则在满足客户的要求后返回结果,于是,用户进程与服务器进程形成了客户/服务器(C/S)关系。

客户/服务器结构的思想

运行在核心态的内核把该消息传给服务器;

服务器执行相应操作,再通过内核用消息把结果返回给用户。微内核应用进程页面管理程序缺页中断恢复地址空间函数调用示例:内核外的页面管理程序做缺页处理

内核只实现极少任务,主要起信息验证、交换的作用,因而,称微内核(Microkernel),这种结构也就称为客户/服务器与微内核结构。微内核结构的优点有:1)一致性接口

2)可扩充性

3)可移植性

4)可靠性

5)支持分布式系统

6)支持面向对象的操作系统缺点:性能问题:发送消息和接收消息需要花费一定的时间代价,所有进程只能通过微内核相互通信,所以它就成为系统的瓶颈。(如:GUI图形引擎、微内核大小-第一代300KB代码和140个系统调用,第二代12KB和7个系统调用)Linux是单内核操作系统,Mach是微内核操作系统,Windows2000/XP是改进的C/S结构(微内核+分层结构)。流行操作系统简介DOS操作系统Windows操作系统Unix操作系统Linux操作系统IBM操作系统其他流行操作系统DOS操作系统:DiskOperatingSystem1980年11月,IBM公司和Microsoft公司正式签约委托Microsoft为其即将推出的IBM-PC机开发一个操作系统,这就是PC-DOS,又称IBM-DOS。1981年,Microsoft推出了MS-DOS1.0版,两者的功能基本一致,统称DOS。到1994年推出了最后的版本DOS6.22DOS操作系统微软的发家之宝。DOS采用汇编语言书写,系统开销小,运行效率高。另外,DOS针对PC机环境来设计,实用性好,较好地满足了低档微机工作的需要。但是,随着PC机性能的突飞猛进,DOS的缺点不断显露出来,已经无法发挥硬件的能力,又缺乏对数据库、网络通信、多媒体等的支持,没有通用的应用程序接口,加上用户界面不友善,操作使用不方便,从而,逐步让位于Windows等其他操作系统。Windows操作系统Microsoft公司成立于1975年,到现在已经成为世界上最大的软件公司。从1983年11月Microsoft公司宣布Windows诞生到今天的WindowsXP,Windows已经走过了20个年头,并且成为风靡全球的微机操作系统。目前个人计算机上采用Windows操作系统的占90%,微软公司几乎垄断了PC行业。UNIX操作系统它最早由美国电报电话公司贝尔实验室的Thompson和Ritchie于1969年在DEC公司的小型系列机PDP-7上开发成功,1971年被移植到PDP-11上。1973年Ritchie在BCPL(BasicCombinedProgrammingLanguage)语言基础上开发出C语言,这对UNIX的发展产生了重要作用,用C语言改写后的第3版UNIX具有高度易读性、可移植性,为迅速推广和普及走出了决定性的一步UNIX取得成功的最重要原因是系统的开放性,公开源代码,用户可以方便地向UNIX系统中逐步添加新功能和工具,这样可使UINX越来越完善,能提供更多服务,成为有效的程序开发支撑平台。它是目前唯一可以安装和运行在从微型机、工作站直到大型机和巨型机上的操作系统。Unix系统和C语言的设计者Ritcchie和Thompson共同获得了1983年度的ACM图灵奖(ACMTuringAward)和软件系统奖(SoftwareSystemAward)。Linux和自由软件Linux是由芬兰藉科学家LinusTorvalds于1991年编写完成的一个操作系统内核,当时他还是芬兰首都赫尔辛基大学计算机系的学生,在学习操作系统课程中,自己动手编写了一个操作系统原型,从此,一个新的操作系统诞生了。Linus把这个系统放在Internet上,允许自由下载实例研究:Windows2000/XPWindows2000/XP的设计者们认为:(1)采用整体式或层次式操作系统体系结构是不恰当的,它们在可扩充性和可移植性方面效果不好。(2)采用类似于Mach的微内核结构也是不恰当的,纯的微内核设计只涉及最小内核,其他服务都运行在用户态,它的运算成本太高,在商业上不适用。Windows2000/XP把许多系统服务代码放在核心态运行,包括:文件服务、设备管理、图形引擎等。在一个实际操作系统的设计过程中,要综合考虑来自用户、系统、兼容性等方方面面的因素。因此,Windows2000/XP采用基于对象的技术来设计系统,提出了一种客户/服务器系统结构,该结构在纯微内核结构的基础上做了一些扩展,它融合了层次式结构和纯微内核结构的特点。对操作系统性能影响很大的组件放在内核下运行,而其他一些功能则在内核外实现。这种结构的主要优点是模块化程度高、灵活性大、便于维护、系统性能好。Windows2000/XP客户/服务器结构结构简框

系统进程服务进程应用程序环境子系统

子系统动态链接库用户态核心态

执行体内核设备驱动程序

硬件抽象层图形引擎Windows2000/XP客户/服务器结构

系统线程NTDLL.DLLService.exeRPCSpooler事件日志服务进程任务管理器IE浏览器用户程序子系统DLL

温馨提示

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

评论

0/150

提交评论