计算机操作系统第11章操作系统的性能指标.ppt
《计算机操作系统第11章操作系统的性能指标.ppt》由会员分享,可在线阅读,更多相关《计算机操作系统第11章操作系统的性能指标.ppt(71页珍藏版)》请在三一办公上搜索。
1、计算机操作系统 主讲:四川大学计算机学院 刘 循,第11章 操作系统的性能指标和系统结构,操作系统结构是操作系统设计中首先需要考虑的因素。操作系统结构对操作系统的性能指标有很大的影响,而操作系统性能指标又影响到计算机系统的性能。良好的操作系统结构会提升操作系统的性能指标,充分发挥计算机系统性能,充分利用CPU的处理速度和存储器的存储能力。,11.1 操作系统的性能指标,1系统的可靠性 系统的可靠性是系统能够发现、诊断和恢复硬件、软件故障,以减小用户误操作或环境破坏而造成的系统损失的能力。系统的可靠性通过系统平均无故障时间进行度量。平均无故障时间越长,系统的可靠性越高。系统的并发行、共享性和随机
2、性对系统的可靠性影响很大。用户一方面希望系统的可靠性高,另一方面又希望系统的并发性、共享性和随机性好。显然,这两方面是矛盾的,如何处理好这两方面的矛盾是操作系统需要解决的问题。,11.1 操作系统的性能指标,2系统的吞吐量 系统的吞吐量是指系统在单位时间内所处理的信息量,用一定时间内系统所完成的作业个数来度量。系统吞吐量反映了系统的处理效率。吞吐量越大,系统的处理效率越高。但是,增大系统的吞吐量则意味着加大系统的并发性,使得系统的开销大,减小了系统的可靠性。,3系统的响应时间 系统的响应时间是从系统接收作业到输出结果的时间间隔。在批处理系统中,用户从提交作业到得到计算结果的时间间隔为响应时间。
3、对分时操作系统或实时操作系统,系统的响应时间是指用户终端发出命令到系统作出应答之间的时间间隔。4系统的资源利用率 系统的资源利用率表示系统中各部件、各设备的使用程度,即单位时间内某设备实际使用时间。系统中各设备越忙,系统的资源利用率越高。,11.1 操作系统的性能指标(续),5系统的可移植性 系统的可移植性是将一个操作系统从一个硬件环境转移到另一个硬件环境仍能够正常工作的能力。常用转移工作的工作量来度量。从传统意义上讲,系统的可移植性并不是操作系统结构中的主要问题。但是,由于计算机用户的广泛性和跨行业性,要求操作系统能够在不同的硬件平台上实现运行,可移植性成为操作系统结构中需要考虑的问题。,1
4、1.1 操作系统的性能指标(续),11.2 操作系统结构,操作系统结构是一个非常复杂的问题,在设计操作系统之前,首先需要确定操作系统的结构。目前,操作系统结构主要有五种形式:简单结构形式、模块化结构形式、基于层结构形式、微内核结构形式和虚拟机结构形式。,11.2.1 简单结构形式,简单结构形式是将系统所有的软件和数据结构都放置在一个模块中,操作系统各功能部分之间没有明显的接口。在操作系统发展的初期,大多系统采用简单结构形式。特别是某些商用操作系统,以市场需求为出发点,在一个非常短的时间内构建,不可能对操作系统结构进行充分地分析和严格地定义。通常是先构建一个规模非常小、功能极其简单的操作系统,然
5、后,根据应用需要不断地扩充系统功能。这样的简单结构设计形式不利于后来的系统功能变化和扩充,造成一个功能改变影响到所有的功能,使得整个系统发生变化,最终导致系统完全脱离最初的设计理念。MS-DOS系统是一种较早的单任务操作系统,该操作系统基于简单结构方式构建。,在MS-DOS系统设计之初,由于受当时的操作系统技术和计算机硬件发展的限制,需要在有限的内存空间中放入操作系统核心程序。因此,MS-DOS操作系统的结构只能追求最小存储空间。为了在最小存储空间条件下获取最多功能,只能将各功能拼凑在一起,以最简单的形式搭建系统,如图11.1所示。虽然MS-DOS的结构由四个部分构成,但是这四个部分并不按照系
6、统功能进行分布,相互之间也不是真正意义上的层次依赖关系。,11.2.1 简单结构形式(续),图11.1 MS-DOS系统结构,11.2.1 简单结构形式(续),11.2.2 模块化结构形式,模块化结构形式将程序模块作为系统结构的基本单位,按照功能需要把整个系统分解为若干模块,每个模块可以再带有子模块,每个模块具有一定的独立功能,模块之间接口明确,自由调用,可以根据需要约定参数传递或返回结果。各个模块分别设计、编码和调试,如图11.2所示。,图11.2 模块化结构形式,11.2.2 模块化结构形式(续),模块化结构形式的优点如下:结构紧密、组合方便,系统可以按照不同的需求,组合不同模块;接口简单
7、直接、模块之间调用的灵活性使系统效率较高;各个子模块的设计、编码可以同时进行,研制过程快。,11.2.2 模块化结构形式(续),模块化结构形式的缺点如下:模块之间可以任意相互调用,调用关系复杂,模块的独立性差,造成系统结构不清晰,可靠性降低;数据为全局量,系统内各模块均可对其进行存取和修改,造成模块间的关系更加隐蔽,难于对软件结构进行综合性的理解和修改,软件的可靠性、易读性、适应性难以保证;随着系统规模的扩大,系统的复杂性迅速增长。因此,模块化结构形式适应性较差,适用于规模较小、使用环境比较稳定却效率要求较高的系统。,11.2.3 基于层结构形式,为了减轻操作系统设计的复杂性,在操作系统结构上
8、提出了基于层结构形式。基于层结构形式按照操作系统功能进行层次划分。不同的层次完成不同的功能,相邻层之间定义严格的接口,上层的功能根据下层提供的功能实现。在基于层结构形式中,通常,最底层为计算机硬件接口,最上层为用户接口。为了支撑系统其它的功能部件,进程和线程控制以及处理器调度、进程通信等相关功能都尽可能放在结构的较底层。层与层之间的关系按照系统的应用方式或命令调用次序来决定。,11.2.3 基于层结构形式(续),图11.3所示为基于层结构中最典型的6层结构。这6层分别为:计算机硬件层、进程管理和调度层、存储管理层、I/O处理层、文件存取层、资源分配和调度层。6层结构中没有包括用户接口层,按照功
9、能,用户接口层应该位于在资源分配和调度层之上,即最上层。,图11.3 操作系统6层结构,11.2.3 基于层结构形式(续),基于层结构形式具有如下优点:每层的功能明确,可以采用模块化设计 每一层的功能明确,可以独立设计、编码和测试。模块化设计简化了系统设计和实现,容易形成结构清晰的软件系统,最终能实现可靠、可适应、可移植的系统设计。有利于系统的维护和扩充 层次内部的修改和变化,只在层次内部进行,只要各层次的接口不变,各层次的主要功能不变,就不会对其它层次造成影响。基于层结构形式具有如下缺点:核心层功能多 基于层结构形式下进程控制、进程调度、进程通信等功能全部交给核心层使得核心层越来越大。,11
10、.2.3 基于层结构形式(续),层次划分比较困难 基于层结构形式必须将操作系统按照功能进行严格的层次划分,实现上比较困难。每层独立性差 每一层功能只能构建在其下层功能的基础上,层次之间独立性差,且下层不能利用上层的信息。层次变化难 层次之间的依赖关系使得除去或增加某个层次比较困难。增加了系统开销 层次结构在具体实现上需要增加层次之间的通信程序,增加了系统的开销。,11.2.3 基于层结构形式(续),最早采用基于层结构形式的操作系统是THE(Technische Hogeschool Endhoven),该操作系统由和其学生于1968年在荷兰开发。,THE操作系统结构上采用了6层结构,如图11.
11、4所示。除最下层为硬件层之外,第2层实现了处理器管理功能中的CPU调度和进程间的同步机制,存储管理位于第3层,操作员控制台位于第4层,输入/输出管理位于第5层,用户程序位于第6层。THE系统的层次结构与前面的操作系统6层结构一样,存在最严重的问题是存储管理位于进程管理之上,使得存储管理需要依赖进程管理,而进程管理却不能利用存储管理的功能。因此,进程调度中选取调度决策不能利用存储管理信息,不能判别存储器的使用情况,不能参考内存的使用状况。在THE层次结构中,操作员位在于输入/输出管理之下,因此,操作系统在高层上对机器有很大的依赖性。,11.2.3 基于层结构形式(续),图11.4 THE操作系统
12、的层次结构,11.2.3 基于层结构形式(续),图11.5 OS/2操作系统的层次结构,OS/2是IBM公司较早开发的一种单用户、多任务操作系统。按照功能设计的系统结构为5层,如图11.5所示。,11.2.3 基于层结构形式(续),在OS/2的层次结构中,计算机硬件处于最底层,应用程序处于最上层。操作系统核心层在硬件层之上,实现了中断处理、时钟管理、原语操作和进程管理、存储器管理、设备管理等功能。核心程序常驻内存,并采取特殊保护措施,实现了对硬件的有效控制,使得操作系统运行更加快速和安全。应用程序层位于最上层,能够利用系统为用户提供资源和功能。因此,OS/2是一种比较合理的操作系统层次结构。,
13、11.2.3 基于层结构形式(续),现代操作系统设计中,分层结构具有一定的指导性,但是,分层结构的缺点决定了其的局限性,很难有一种操作系统会采用纯粹的分层结构形式。随着操作系统的发展,为了避免定义过多的层次带来的复杂性,操作系统的层次有所减少,系统能够用较少的层次完成更多的功能,并在层次结构的基础上再采取模块化,发挥模块化的优势,避免层次之间定义的困难。,11.2.3 基于层结构形式(续),11.2.4 基于微内核结构形式,随着操作系统的发展和所需功能的增加,核心层变得越来越大,管理起来也越加困难。现代操作系统为了简化系统结构,提出了微内核结构形式,在设计上使得核心尽可能小。为了实现核心微小化
14、,原来操作系统内核中不必要的功能需要被除去或分离出来放在核的外面,内核中只留下部分进程管理和存储器管理、进程通信功能。图11.6所示为微内核结构中的客户服务器结构。该微内核结构将操作系统分为微内核和服务进程。微内核运行在核心态,提供进程调度、虚拟存储、消息传递、设备驱动以及内核原语操作、中断处理等基本操作,核心的全部工作是处理客户与服务器间的通信。服务进程运行在用户态。,11.2.4 基于微内核结构形式,图11.6 操作系统微内核结构形式,11.2.4 基于微内核结构形式(续),除核心外操作系统的所有其他部分被分成若干个相对独立的服务进程,提供各种系统功能。每一部分只处理一方面的功能,如文件服
15、务、进程服务、终端服务、存储器服务、网络服务等。微内核结构优点如下:易于扩展操作系统 如果操作系统需要为用户提供新的服务,新的服务的加入只影响到用户空间,对核心没有影响,系统不必修改核心。新的服务不直接访问硬件,如果在文件服务器中发生错误,文件服务器可能崩溃,但不会导致整个系统的崩溃。,11.2.4 基于微内核结构形式(续),硬件环境变化对操作系统改动很小 硬件环境变化会引起微内核变化,但是,由于微内核很小,即使需要修改,改动也很小,对操作系统不会带来大的改动。使操作系统更加安全和可靠 微内核很小,很容易实现安全保护。系统提供的大量服务进程都运行在用户空间下,而非核心空间。如果一个服务失败,不
16、会影响操作系统其他的功能。这提高了操作系统的稳定性。,在微内核的安全保护上系统可以利用基本的授权机制阻止外界对内核代码的非授权访问,或者采用除中断事件能够进入核心状态外,任何其它的事件不可以在核心状态下执行的限制。适用于分布式系统 一个客户通过消息传递与服务器通信,客户无需知道这条消息是在本机处理还是通过网络送给远程机器上的服务器。,11.2.4 基于微内核结构形式(续),微内核的主要功能是提供客户与各种服务之间的通信,通信以消息传递的方式进行。在微内核系统中,除内核部分外,操作系统的其他部分被分成相对独立的进程,称为服务器进程。每一个服务器进程提供一类服务,微内核的各种服务器进程可以实现要求
17、的操作系统接口。客户进程和服务器进程都运行在用户空间。内核被映射到所有进程的虚拟地址空间中,实现控制所有进程的目的。客户程序对文件的访问必须通过文件服务器进行,客户程序与服务并不直接交互,而是通过微内核交换消息。当客户进程需要访问某个设备时,客户进程与内核进程通信,内核进程将消息发送到设备驱动进程。同样,设备完成的结果通过内核发送消息回客户进程。,11.2.4 基于微内核结构形式(续),微内核结构是操作系统结构的一种发展趋势,在业界是一个争议性话题。支持微内核技术者认为微内核提供了实现操作系统模块化、端口化的基础;反对微内核者认为微内核制造了一个瓶颈,限制了多用户系统的规模。,11.2.4 基
18、于微内核结构形式(续),20世纪80年代中期,卡内基梅隆大学(Carnegie Mellon University)在Mach操作系统设计中采用了微内核结构,如图11.7所示。,图11.7 Mach微内核支持策略,11.2.4 基于微内核结构形式(续),Mach采用微内核的主要目的在于研究操作系统支持进程之间利用消息进行通信的问题。Mach为多处理器环境设计的一种多任务、多线程的操作系统,支持进程和线程。在Mach系统中,一个任务中的一个线程相当于一个标准进程,因此,一个任务可以支持多个线程,一个线程只对应一个进程。如果一个任务在多处理器环境下建立,则通过线程同步机制实现其对资源的访问。Mac
19、h支持的地址空间是新型的虚拟存储器空间。在多处理器情况下,进程的通信不采用共享存储器,而采用消息机制。,11.2.4 基于微内核结构形式(续),利用消息,Mach实现了客户线程与核心线程、核心线程与服务器线程之间的通信。但是,对跨越网络的线程通信,Mach通过用户空间的消息服务器实现,而不是直接由内核空间中的消息机制实现。内核并不支持跨越网络的消息通信。用户空间中的消息服务器需要在内核空间中进行注册,由内核对服务器进行定义后才能使用。Mach微内核支持可扩展的功能,利用用户空间的程序,可以定义各种操作系统策略支持。Mach中已经建立了支持不同操作系统的标准功能的公共集合,其中BSD UNIX是
20、其默认的操作系统,Mach的微内核能够将BSD UNIX的系统调用映射到相应的用户级服务。Mach微内核中除了支持BSD UNIX操作系统外,还支持Apple公司的MacOSX服务器操作系统和其他操作系统。在内核扩展方面,Mach与虚拟机结构有些相似。,11.2.4 基于微内核结构形式(续),无论是基于层结构方式,还是微内核结构方式,硬件都处于最底层,操作系统核心位于硬件层之上。因此,核心可以利用硬件提供的指令为核心之上的用户和应用程序创建一系列的系统调用。在核心之上的系统程序既可以利用核心提供的系统调用,也可以利用硬件提供的指令,使得这些系统程序能够提供更高级的功能。,11.2.5 虚拟机结
21、构形式,11.2.5 虚拟机结构形式(续),将硬件和系统调用看作一体,处于上层的应用程序可以利用下层提供的所有功能的观点,是产生虚拟机(Virtual Machine,VM)结构的基础。虚拟机结构可以将核心提供的不同系统调用映射为不同的操作系统系统调用。因此,虚拟机结构允许在单一硬件平台上建立依赖策略的多操作系统版本,如图11.8所示。,11.2.5 虚拟机结构形式(续),图11.8 扩展内核形成虚拟机结构,在虚拟机结构中,操作系统管理和控制多用户共享的计算机硬件,用户只是应用计算机资源而与其它用户没有直接的关系。通过CPU调度和虚拟存储器技术,在虚拟机接口上的每个用户都会将自己的进程视为在自
22、己“单独”的处理器和内存环境下运行,即自己“单独”在使用计算机,自己完全拥有计算机资源,而没有感觉到还有其他用户在并发操作。如图11.9所示,多道应用在虚拟机结构的最上面,计算机CPU、内存、设备等硬件在最下层,应用和硬件之间不直接打交道,而是通过虚拟机实现通信。,11.2.5 虚拟机结构形式(续),图11.9 虚拟机结构,11.2.5 虚拟机结构形式(续),虚拟机结构优点如下:保护了系统资源 每个虚拟机都与其它的虚拟机完全隔离,所以不存在资源的安全问题。虽然,虚拟技术将一个物理设备变成了多个逻辑设备,但是,虚拟技术是通过软件实现的,并没有直接的资源共享问题。独立用户环境为操作系统的研究和开发
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 操作系统 11 性能指标
链接地址:https://www.31ppt.com/p-6606456.html