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

下载本文档

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

文档简介

1、计算机操作系统(OperatingSystem),07级计算机科学与技术专业,第一章操作系统概论,1.1什么是操作系统?例1:早期计算机应用于军事部门,帮助军方计算普通弹道导弹的飞行轨迹。例2:银行、金融部门利用计算机进行大量数值计算,以减轻工作量。例3:政府、企业利用计算机数据库系统建立政府、企业的管理、生产、营销系统,以提高办公和经营效率。,例4:计算机进入家庭后成为继报纸、广播、影视后的第四代媒体。美国麻省理工学院(MIT:MassachusettesInstituteofTechnology)教授尼葛洛庞帝著作数字化生存中指出:计算不再只和计算机有关,它决定我们的生存。指出:“比特”没

2、有重量,易于复制,可以以极快的速度传播,在它传播时,时空障碍完全消失。,想象一下,没有计算机的世界将会怎样?依赖计算机进行处理的事务将停滞或转为人工;间接依赖于计算机芯片的设备也将无法使用;任何技术都是一把双刃剑,科技应以人为本,我们在充分享受计算机及其网络技术带来的便利的同时,也应该防范各种计算机技术带来的负面影响。,操作系统课程的主要学习内容:通用操作系统在文件管理、作业管理、进程管理、存储管理、设备管理等方面的原理和基本实现技术。1.1什么是操作系统1.1.1操作系统作为最基本的系统软件硬件是躯体,软件是灵魂。没有灵魂的躯体是没有生命的,没有躯体的灵魂将无所依附。,1.计算机系统资源a.

3、计算机系统系统硬件系统软件b.系统硬件:构成计算机系统所必须配置的全部设备以及机器级语言。包括组成计算机的集成芯片、电路板、电气连线、显示器、电源,以及各种物理部件。还需有直接控制部件和设备的微程序代码和基于硬件的机器语言。这些机器级代码序列集成在处理器芯片中,或固化在非易失性的存储器中,成为硬件系统的一部分。,c.系统软件:指的是计算机系统必须配置的程序和数据的集合。系统软件中最基本的就是操作系统,它为其他系统软件和应用软件提供运行支持。其他系统软件:如命令解释程序、编辑程序、编译程序、连接程序等,它们虽然不属于操作系统,但是一般随操作系统一起由计算机厂商提供,是系统开发中重要的一类软件。,

4、2.计算机系统的层次结构(1)为什么要用层次结构来描述计算机系统?可以分层地设计开发计算机系统的各个组成部分,隔层的功能实现无需考虑。每一层在设计时的错误可以封闭在该层中,不会向其他层扩散。(2)计算机系统的层次结构:如下图所示。,a.最底层的硬件:通常把一台没有任何软件配置和支持的计算机称为“裸机”。b.硬件之外为操作系统,它是运行在计算机基本硬件系统上的最基本的系统软件。c.语言处理程序包括命令解释程序、编辑程序、编译程序、连接程序等。d.应用程序就是用户自定义安装的适用于不同场合和工作的软件。,1.1.2操作系统作为资源管理器将操作系统作为资源管理器的观点是目前对操作系统描述的主要观点。

5、(1)资源:指计算机系统为了进行数值计算和数据处理所需要的各种物质资源,通常分为系统硬件资源和软件资源。(2)在资源管理方面操作系统的功能a.监视资源b.分配资源c.回收资源d.保护资源,1.1.3操作系统作为虚拟机(1)什么是虚拟机?虚拟机的观点是基于编程人员的观点,操作系统对用户来说是一个扩展了的机器,称为虚拟机。(2)为什么要引入“虚拟机”的概念?为了屏蔽计算机硬件复杂、具体的实现细节。,(3)虚拟机的功能:反映为功能和数量的扩展a.功能上的扩展操作系统提供了一批功能很强的系统调用,用户通过命令和程序使用这些系统调用,构成高级指令系统。b.数量上的扩展单机操作系统引入多道程序技术,多个用

6、户同时使用一台机器,但在逻辑上并感觉不到是在和别人公用一台计算机,多个用户或用户的应用程序可以共享计算机的硬件和软件资源。,1.2单道批处理系统与多道程序设计1.单道批处理及其处理过程把一批作业以脱机方式输入到磁带机上,并在系统中配上监督程序,在其控制下使这批作业一个接一个地连续处理的工作方式就称为“单道批处理方式”。示意图如下:,2.多道批处理系统(1)多道程序设计的基本概念为了进一步提高资源的利用率和系统吞吐量,在60年代中期引入了多道程序设计技术,形成了多道批处理系统。多道程序系统的引入,可以使CPU、内存以及各种外设资源得以充分利用,改变了单道程序系统中运行用户程序时,外设空闲等待,而

7、外设工作时,CPU空闲等待的状况。,下图显示的是三道程序情况下并行运行的实例:,多道程序系统在宏观上是并行的,即多个作业“同时”在计算机系统中运行,但在微观上是它们是串行的,即在CPU上也是一个一个地运行,因为只有一个CPU部件。(2)多道程序系统的优缺点优点:a.资源利用率高由于在内存中驻留了多道程序,它们共享资源,可保持资源处于忙碌状态,从而使各种资源得以充分利用。,b.系统吞吐量大吞吐量是指系统在单位时间内所完成的总工作量。能提高系统吞吐量的主要原因可归结为:第一,CPU和其他资源保持忙碌状态;第二,仅当作业完成或运行不下去时才进行切换,系统开销小。缺点:a.平均周转时间长:作业的周转时

8、间是指从作业进入系统开始,直至其完成并退出系统所经历的时间。,b.无交互能力或交互能力差:用户一旦把作业提交给系统后,直至作业完成,用户都不能与自己的作业进行交互,这对修改和调试程序极不方便。1.3操作系统的功能和主要特征1.3.1操作系统的功能操作系统要控制工作流程,要管理资源,要为用户服务,以上三项是操作系统的功能要点。操作系统的功能主要体现在以下五个方面:,a.处理机(CPU)管理CPU是整个计算机系统中的核心硬件资源,它的性能和使用情况对整个计算机系统的性能起着关键作用。引入“进程”的概念。操作系统对CPU的管理转换为对进程的控制和管理。,b.存储管理存储器包括主存和辅存,是作业的程序

9、、数据以及其他系统软件、应用软件驻留的地方,是计算机运行作业时所必需的重要资源。存储管理包括以下几个方面:地址重定位:将用户的程序和数据的逻辑地址映射为内存的实际物理地址。存储分配:为用户程序和数据分配存储空间。,存储保护:通过存储保护措施防止用户程序或数据侵入其他程序或数据的内存区域,尤其是操作系统所占用的核心区域。存储扩充:使用虚拟内存等扩充方法对有限的存储空间进行扩充。,c.设备管理设备管理指的是对除CPU和存储器以外的硬件设备进行的管理操作。设备管理也称外设管理,外设种类繁多、控制复杂,相对CPU而言运行速度又较慢,因此设备管理需要考虑如何有效地分配和使用设备,如何协调处理器与设备操作

10、间的速度差异,提高系统总体性能。,设备管理包括以下几个方面:缓冲管理:通过设立缓冲区等方式解决快速的CPU和慢速的I/O设备间速度不匹配的问题。设备分配:为用户程序提出的合理的、有序的设备分配请求分配设备。设备处理:通过中断、设备控制器、通道等方式完成CPU和I/O设备间的通信。设备独立性:使用户对设备的使用和控制是透明的。,虚拟设备:通过“假脱机”等方法将慢速的独占设备改造为高速的共享设备。d.文件管理计算机要处理大量的数据,操作系统将这些数据与信息以及对它们的操作抽象为文件管理,建立文件管理的结构体系,管理文件的存储空间,形成了操作系统的文件管理系统。目录管理文件读、写管理文件存取控制文件

11、存储空间的管理,e.用户接口定义:操作系统为用户提供的使用计算机软硬件资源的方法。接口的使用在很大程度上屏蔽了计算机硬件的操作细节,使用户和程序员与系统硬件隔离开来,而只需在软件层面对计算机进行管理和操作。操作系统为用户提供了以下接口:命令接口:为联机用户提供了交互式的命令,用户输入命令得到输出结果。,程序接口:用户程序通过系统调用使用计算机硬件资源,如高级程序设计语言中的库函数和Dll(动态链接库)文件等。图形接口:将命令方式改造为图形控制方式,采用如鼠标、光笔、触摸屏等设备来控制计算机,这种方式也称为“GUI-GraphicUserInterface-用户图形接口”。,1.3.2操作系统的

12、主要特征(1)并发性-Concurrencea.并发性与并行性的区别并发性:指的是两个或多个事件在同一时间间隔内发生(一个时间段内)。并行性:指的是两个或者多个事件在同一时刻发生(一个时间点)。,b.并发执行的条件必须引入“进程”这样的单位作为资源分配的基本单位。(2)共享性-Sharinga.共享的定义:系统中的资源可供内存中多个并发执行的进程共同使用,而不是由单个进程所独占。b.共享的种类互斥共享:系统中的某些资源,如打印机、磁带机,虽然它们可以提供给多个进程使用,,但为使打印或记录的结果不致造成混淆,应规定在一段时间内只允许一个进程访问该资源。同时共享“同时”往往是宏观上的,而在微观上,

13、这些进程可能是交替地对该资源进行访问。典型的同时共享设备有磁盘设备、可重入的文件等。(3)虚拟性-Virtual操作系统中的“虚拟性”指的是通过某种技术把一个物理实体变为若干个逻辑上的对应物。,(4)不确定性Undetermined含义内存中的每个进程何时获得处理机运行,何时又因提出某种资源请求而暂停,以及进程以怎样的速度向前推进,每道程序共需多少时间能完成等都是不可预知的。,产生不确定性的原因不同的程序、进程,其功能不同,侧重也不同,有的侧重计算而较少的输入输出操作,则其对CPU的占用就相对较多;有的侧重输入输出操作,则对I/O设备的争用就比较激烈。不确定性是允许的,只要在相同的环境下给出相

14、同的输入,系统运行后输出结果是确定的就可以了。,1.4操作系统的结构操作系统是一个大型的系统软件,其结构历经了四代的变革。第一代操作系统是无结构的;第二代操作系统采用了模块化结构;第三代是层次结构;进入20世纪90年代中期后,微内核操作系统结构开始得以流行。,操作系统是一个十分复杂的大型软件,为了控制该软件的复杂性,在开发操作系统时,先后引入了分解、模块化、抽象和隐藏等方法。开发方法的不断发展促进了操作系统结构的更新换代。通常把第一代至第三代的操作系统结构称为传统操作系统结构,而把微内核的操作系统结构称为现代操作系统结构。,1.4.1无结构操作系统早期开发操作系统时,设计者把注意力更多地放在功

15、能的实现和获得高效率上,缺乏首尾一致的设计思想。此时的操作系统是为数众多的一组过程的集合,各过程之间可以相互调用,在操作系统内部不存在任何结构,因此这种操作系统是无结构的,也称为整体系统结构。,该阶段程序设计的技巧只是如何编制紧凑的程序,以便有效地利用内存,对GOTO语句的使用不加任何限制,所设计出的操作系统庞大杂乱,缺乏清晰的程序结构。这使编制出的程序错误多、结构乱,给调试工作带来困难,另一方面也使程序难以阅读和理解,增加了维护人员的负担。,1.4.2模块化操作系统(1)模块化结构模块化程序设计技术,是20世纪60年代出现的一种程序设计技术,该技术基于“分解”和“模块化”原则来控制大型软件的

16、复杂度。为使操作系统有较清晰的结构,操作系统不再是由众多的过程直接构成,而是将操作系统按其功能划分为若干个具有一定独立性和大小的模块。,每个模块具有某方面的管理功能,如进程管理模块、存储器管理模块、I/O设备管理模块和文件管理模块等。之后,规定各模块间的接口,使各模块之间能通过接口实现交互,然后再进一步将各模块细分为若干具有一定管理功能的子模块。如:把进程管理模块又分为进程控制、进程同步、进程通信和进程调度等子模块,同时也要规定各子模块之间的接口。,如下图所示:,操作系统,进程管理,存储器管理,文件管理,进程控制,进程调度,内存分配,内存保护,磁盘管理,目录管理,(2)模块化操作系统的优缺点优

17、点:a.提高了操作系统设计的正确性、可理解性和可维护性;b.增加了操作系统的可适应性;c.加速了操作系统的开发过程。,缺点:a.设计时,对模块的划分及对接口的规定不能做到很精确,因此很难保证按此规定所设计出的模块会完全正确,这将使这些模块在装配成操作系统时发生困难。b.以功能观点来划分模块时,不能将共享资源和独占资源加以很好的区别,由于管理上的差异,会使模块间存在复杂的依赖关系,使操作系统结构变得不清晰。,1.4.3分层式操作系统(1)设计基础从改进设计方式上说,应使每一步设计都是建立在可靠的基础上。(2)设计流程从物理机器开始,在其上添加一层具有一定功能的软件A1,由于A1是建立在完全正确的

18、物理机器上的,在经过精心设计和测试后,可以认为A1是正确的。再在A1上添加一层新软件A2、A3An,这样一层一层地自底向上添加软件,每一层都实现若干功能,最后总能构成一个满足需要的操作系统。,每一层仅使用其下一层所提供的服务和功能,使得系统的调试和验证都变得容易。如:在调试第一层软件A1时,由于它只使用了物理机器提供的功能,所以它与所有高层软件A2、A3An无关,其他层次也是如此。这就符合了层内的高内聚度和层与层之间的低耦合度的设计要求。,A1,A2,A3,物理机器,1.4.4微内核操作系统结构(1)发展历程及应用微内核结构是20世纪90年代发展起来的。由于它能支持多处理器运行,所以适用于分布

19、式系统环境。当前比较流行的、能支持多处理运行的操作系统几乎都采用了微内核结构。如,早期CarngieMellon大学研制的MachOS和广泛使用的WindowsNT系统都采用了微内核结构。,(2)微内核技术的现代特征微内核技术形成和发展的同时,客户/服务器技术、面向对象技术也迅速发展,并且广泛应用到基于微内核结构的操作系统中。因此,微内核操作系统结构,便具有了以微内核为核心,以客户/服务器为基础,并且采用面向对象程序设计方法进行开发的现代特征。,(1)客户/服务器模式-Client/ServerMode基本概念为了提高操作系统的灵活性和可扩充性而将操作系统划分为两部分。a.提供各种服务的一组进

20、程类型:进程服务器、存储器服务器、文件服务器等。状态:所有这些进程都运行于用户态(UserMode)。,工作模式:一个用户进程要求读文件的某一块时,该进程就向文件服务器(进程)发出一个请求;当服务器完成了该用户的请求后,向该用户回送一个响应。b.内核功能:处理客户和服务器之间的通信。工作模式:如图所示。,客户,内核,各服务器,根据请求的类别和请求的紧急程度进行分类和级别的区分,综述:所谓微内核技术是指精心设计的,能实现现代操作系统核心功能的小型内核,它与一般的操作系统核心不同,它更小更精炼,不仅运行在核心态,而且系统启动后常驻内存,不会因内存紧张被置换出内存。但微内核并非一个完整的操作系统,而

21、只是为构建通用操作系统提供一个重要基础。,1.5操作系统的分类1.5.1分类的原则与观点操作系统的种类很多,也具有不同的特征,对操作系统的分类可以基于不同的观点。课本中对操作系统的分类是从操作系统工作的综合角度出发的,没有经过比较详细的划分,实际上操作系统的分类可以有以下多个角度。,(1)从操作系统的工作角度可分为单用户系统、批处理系统、分时系统、实时系统(2)从计算机体系结构的角度可分为a.单机操作系统(单机单任务、单机多任务)b.主从式多终端操作系统(一台计算机作为主机,其他机器作为接受服务的终端机)c.多机多用户操作系统d.客户/服务器结构操作系统e.网络操作系统,f.分布式操作系统(地

22、理上分布,逻辑上也分布;地理上分布,逻辑上集中)分布:各本地节点各自管理本地数据,节点间若存在数据共享则需要接口通信。优点是各节点平时各自为政,需要合作时再联系,减少了系统的开销。集中:把全局数据合理分布在系统的多个节点上,使得大多数数据可以就近存取,速度快、响应时间短,但实现起来比较复杂。,(3)从操作系统设计的角度可分为a.面向进程的操作系统(面向进程的角度)如“一个人拿起一本书”的一个动作是一个整体,不需要拆分,也不能拆分,这是从看“进程”的角度出发的。进程的定义执行中的程序或程序的一次执行,包括可执行的程序和程序所需的数据和程序连续运行所必需的状态信息。,b.面向对象的操作系统(面向对

23、象的角度)可以把以上动作拆分得更细微人:包含描述人属性的信息(是动作的施加者)拿:用左手还是右手等信息(人执行的动作)书:包含描述书属性的信息(是动作的接受者)【例如】一次数据传输(从内存到CPU),内存为源地点,CPU为目的地,数据是传输的内容,也可以用面向对象的观点来考虑。,1.5.2单用户操作系统单用户操作系统面对单一用户,所有资源均提供给该用户,用户对系统有绝对的控制权。单用户操作系统是从早期的系统监控程序发展起来的,进而成为系统管理程序,再进一步发展为独立的操作系统。它的基本特征是:针对一台机器、单一用户的操作系统。,工作流程:单用户操作系统在作业运行前,用户必须初始化所有硬件条件和

24、环境(如寄存器状态、设备分配与状态等),并设置必要的输入输出设备,将操作系统的核心部分常驻内存中。接下来,初始化后的系统装入并开始运行应用程序。运行完毕后,系统又回到初始状态,以便下一个用户能够使用。,1.5.3批处理系统1.设计目标:提高系统资源利用率和作业吞吐量。2.处理过程:描述作业提交作业处理作业批处理方式采用的是成批处理或者顺序共享的方式,它允许多个用户以高速、非人工干预的方式进行成组作业工作和程序执行。批处理系统将作业成组(成批)地提交给系统,由计算机顺序自动完成后给出结果,从而减少了用户作业和打断的时间。,缺点:批处理系统环境中,作业处理的平均周转时间较长,用户交互能力较弱。1.

25、5.4分时系统(1)设计初衷批处理系统设计初衷:提高空间利用率和提高作业吞吐率,是从空间和作业角度出发的。分时系统设计初衷:从时间角度来提高效率。,(2)定义分时定义:将一个时间段划分成若干个固定的时间片。分时系统定义:能够以分时为特征,轮流地为各终端用户服务,并能及时地对用户服务请求予以响应的系统,是将CPU处理能力进行切割的产物。,分时系统实际上也是一类多道程序系统,它是基于主从式多终端计算机体系结构的。通常由一台功能很强的主机连接多个终端,提供多个用户同时联机操作。每个用户通过自己所操作的终端,把用户作业提交给主机,主机通过终端向各个用户反馈其作业运行的情况。,(3)分时系统基本特征a.

26、同时性多个用户同时操作,共同使用同一系统资源。b.独立性各用户的操作是独立的,系统响应快,由操作系统保证各个用户程序运行的完整性。c.及时性系统实时待命,对用户的输入做及时响应。响应时间(终端发出命令到系统予以应答所需的时间)长短是衡量分时系统性能好坏的重要指标。,d.交互性用户与系统要形成交互式对话,允许用户随时修改自己的作业,要能尽量响应用户进一步提出的新要求,系统尽可能向用户反馈信息。同时,应做好记录工作,以及时更新系统。(4)调进/调出技术由于CPU只能与主存进行数据交换,外存上的信息进入CPU之前必须经过主存,CPU处理后的数据也须经过内存才能存入外存。因此,将主存和外存(后援存储器

27、)间的数据交换称为“调进/调出”操作。,从主存到外存方向的称为“调出”,从外存到主存方向的称为“调进”。以下分析在分时系统中,对调进/调出技术改进前后的差别。改进前:,单道现行作业,主存,后援存储器,CPU,由于CPU处理速度较快,主存中单道作业执行完后需要从后援存储器中调进新作业,时间开销大。,改进后:,现行作业后备作业,主存,后援存储器,调出,调进,CPU,处理前,处理后,当前现行作业执行完后,可以马上从后备作业队列中调入新作业,因此时间开销小,系统效率得到提高。,1.5.5实时系统(1)定义实时系统(RealTimeSystem)是另一类特殊的多道程序系统,它主要应用于需要对外部事件进行

28、及时响应并处理的领域。实时:体现在立即、及时。对时间的响应至关重要,要做到延时短。(2)实时系统类型根据系统服务的对象和对响应时间的要求,可以将实时系统分为实时控制系统和实时信息系统。,a.实时控制系统要求能随时采集数据,精度高,无延时。举例:航空器飞行、导弹的发射(调整飞行姿态、控制燃料多少等)水利、水电、交管部门的控制面板需要有备用系统的场合,需能够在出现问题时随时更换系统b.实时信息系统精度要求一般,但通常完成远程查询和控制工作,举例:车站、码头、飞机场等的票务查询和订票系统,银行系统,图书馆等的信息查询系统。(3)实时系统基本特征a.实时时钟管理实时系统的主要设计目标,通常完成对某一事

29、件的定时启动和终结任务。“时钟”实质上是一个定时概念,通常由硬件或软件产生固定周期的时钟脉冲,由于单个时钟脉冲的频率非常稳定,因此,可以由一个或若干个脉冲周期来对事件的启动和停止进行实时控制。如,工业生产中的流水线控制。,b.连续人机对话对用户向计算机发出的询问进行记录,并能多次接收询问,针对不同的询问做出不同的回答,或是对相同的询问以及对相同询问的补充询问做出补充回答c.过载的防护“过载”指的是任务的数量或程度超出了系统的设计承受能力的现象。过载现象是不可避免的,一般在设计时,系统的承受和响应能力要稍高于提供给用户使用时的正常水平,并且对各项性能指标设定一个平均值。,当某项指标超过平均值时,则系统显示过载警告,但系统不能因此而崩溃,应还能正常工作一段时间,以待用户进行检测和维护,排除过载现象。d.高可靠性一般采用双机热备份

温馨提示

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

最新文档

评论

0/150

提交评论