




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2022/11/19第一章操作系统引论第一章操作系统引论1.1操作系统的目标和作用1.2操作系统的发展过程1.3操作系统的基本特性1.4操作系统的主要功能1.5操作系统的结构设计
1.计算机系统的组成硬件软件系统软件应用软件1.计算机系统的组成图1.1计算机硬件的组成1.计算机系统的组成
操作系统系统软件 语言处理系统编译程序解释程序汇编程序计算机软件应用软件:火车售票系统、超市管理系统2.计算机系统的层次结构图1.2计算机系统的层次结构你知道下列哪些是操作系统吗?极品飞车DOSLINUXWINDOWSTURBO-CWORDFOXPROUNIX一个C语言源程序操作系统的概念操作系统是用于控制和管理计算机系统内各种软硬件资源、合理有效地组织协调计算机系统的工作流程、提供友好的用户接口以方便用户使用计算机的程序集合。Whatisoperatingsystem?1.1操作系统的目标和作用1.1.1操作系统的目标★从机(计算机)的角度使计算机系统能更加高效地工作★从人(用户)的角度使用户使用计算机系统更加方便★具体来说:
①有效性②方便性③可扩充性④开放性1.1.1操作系统的目标有效性体现在两个方面:资源利用率、吞吐量未配置OS的计算机系统:用户直接在计算机硬件上运行自己所编写的程序,用机器语言书写程序;配置了OS:可通过命令来使用计算机系统,运行用高级语言编写的程序。1.1.2操作系统的作用用户与计算机硬件系统的接口命令方式系统调用方式图形、窗口方式资源管理者实现了对计算机资源的抽象1.1.2操作系统的作用
1.OS作为用户与计算机硬件系统之间的接口图1.3OS作为接口的示意图1.1.2操作系统的作用2.OS作为计算机系统资源的管理者①处理机管理②存储器管理③I/O设备的管理④文件管理1.1.2操作系统的作用3.OS实现了对计算机资源的抽象裸机:没有配置任何软件的计算机。软件:是在硬件基础之上对硬件的性能加以扩充和完善。虚拟机:一个裸机在每加上一层软件后,就变成了一个功能更强的机器,我们把这种“功能更强的机器”称之为“虚拟机”或“扩展机”。OS的作用-扩充机器图1.4I/O软件隐藏了I/O操作实现的细节OS的作用在下面的程序执行过程,操作系统做了什么?#include<stdio.h>intmain(intargc,char*argv[]){puts("helloworld");return0;}
OS的作用1.用户告诉操作系统执行程序2.操作系统找到该程序,检查其类型3.检查程序首部,找出正文和数据的地址4.文件系统找到第一个磁盘块5.父进程需要创建一个新的子进程,执行程序6.操作系统需要将执行文件映射到进程结构7.操作系统设置CPU上下文环境,并跳到程序开始处OS的作用8.程序的第一条指令执行,失败,缺页中断发生9.操作系统分配一页内存,并将代码从磁盘读入,继续执行10.更多的缺页中断,读入更多的页面11.程序执行系统调用,在文件描述符中写一字符串12.操作系统检查字符串的位置是否正确13.操作系统找到字符串被送往的设备14.设备是一个伪终端,由一个进程控制OS的作用15.操作系统将字符串送给该进程16.该进程告诉窗口系统它要显示字符串17.窗口系统确定这是一个合法的操作,然后将字符串转换成像素18.窗口系统将像素写入存储映像区19.视频硬件将像素表示转换成一组模拟信号控制显示器(重画屏幕)20.显示器发射电子束,你在屏幕上看到“Helloworld”6.推动操作系统发展的主要动力不断提高计算机资源的利用率例如:多道批处理系统、SPOOLing系统、虚拟存储器技术、基于网络用户访问的文件系统和数据库系统等方便用户例如:允许进行人机交互的分时系统(或称多用户系统)、图形用户界面等器件的不断更新换代计算机体系结构的不断发展1.2操作系统的发展过程无操作系统的计算机
人工操作
脱机I/O方式批处理系统
单道批处理系统
多道批处理系统分时系统实时系统微机操作系统、网络操作系统与分布式操作系统1.2操作系统的发展过程计算机发展分为四个阶段:1946~50年代末:第一代,电子管时代,无操作系统。50年代末~60年代中:第二代,晶体管时代,批处理系统。60年代中~70年代中:第三代:集成电路时代,多道程序设计。70年代中期~至今:第四代:大规模、超大规模集成电路时代,分时系统。1.2.1无操作系统的计算机系统用户:用户既是程序员,又是操作员;编程语言:为机器语言;输入输出:纸带或卡片;1.人工操作方式1.人工操作方式1.人工操作方式计算机的工作特点用户独占全机:不出现资源被其他用户占用,资源利用率低;CPU等待人工操作:计算前,手工装入纸带或卡片;计算完成后,手工卸取纸带或卡片;CPU利用率低;2.脱机输入/输出方式
在采用脱机输入输出方式时,程序和数据的输入输出都是在外围计算机的控制下完成的,即它们是脱离主机进行的,故称之为脱机输入输出操作。脱机I/O方式的主要优点如下:(1)减少了CPU的空闲时间。(2)提高I/O速度。2.脱机输入/输出方式1.2.2单道批处理系统
第二代计算机(1955—1965):这个时期是晶体管计算机时代。批处理是指计算机系统对一批作业自动进行处理的一种技术。利用磁带把若干个作业分类编成作业执行序列,每个批作业由一个专门的监督程序(Monitor)自动依次处理。可使用汇编语言开发。1.单道批处理系统的处理过程程序员把程序卡片拿到卫星机上,读入到“输入磁带”。操作员把“输入磁带”放进主机去运行,结果写到“输出磁带”。“输出磁带”送到卫星机上去打印。批处理中的作业的组成:用户程序数据作业说明书(作业控制语言)1.2.2单道批处理系统
图单道批处理系统的处理流程1.2.2单道批处理系统
还有下一个作业?把下一个作业的源程序转换为目标程序源程序有错吗?装配目标程序运行目标程序开始是否停止是否单道批处理系统是最早出现的一种OS,严格地说,它只能算作是OS的前身而并非是现在人们所理解的OS。该系统的主要特征如下:
(1)自动性
(2)顺序性
(3)单道性2.单道批处理系统的特征1.2.3多道批处理系统多道程序设计技术:在内存中放多道程序,使它们在管理程序的控制下相互穿插地运行。在批处理系统中采用多道程序设计技术,就形成了多道批处理。把用户提交的作业先存放在外存上并排成一个队列,称为“后备队列”,然后由作业调度程序按一定的算法选择作业运行。用户程序监督程序I/O操作I/O中断请求启动I/OI/O完成结束中断I/O中断请求启动I/OI/O完成结束中断t1t2t3t4t5t6t7t8(a)单道程序运行情况1.2.3多道批处理系统程序A调度程序I/O请求(b)四道程序运行情况程序B程序C程序DI/O请求I/O请求I/O请求I/O完成I/O完成I/O完成A完成C再运行1.2.3多道批处理系统2.多道批处理系统的优缺点
(1)资源利用率高。(2)系统吞吐量大。(3)平均周转时间长。(4)无交互能力。4.多道批处理需要解决的问题
处理机管理问题。(2)内存管理问题。(3)I/O设备管理问题。(4)文件管理问题。(5)作业管理问题。1964年IBM宣布推出System/360计算机系统第一个采用小规模集成电路的主流机型试图一次性地解决上述问题由于所有的计算机都有相同的体系结构和指令集在理论上,为一型号编写的程序可以在其他型号机器上运行OS/360操作系统IBMSystem/360,庞大的软件怪兽数千名程序员写的数百万行汇编语言代码系统自身占据了大量存储空间和一半的CPU时间数百万行汇编代码中有成千上万处错误IBM不断发行新的版本试图更正这些错误,每个新版本在更正老错误的同时又引入新错误随着时间的流逝,错误的数量大致保持不变1.2.4分时系统
1.分时系统(Time-SharingSystem)的产生分时系统是为了满足用户需求所形成的一种新型OS。它与多道批处理系统之间,有着截然不同的性能差别。用户的需求具体表现在以下几个方面:
(1)人—机交互
(2)共享主机
(3)便于用户上机分时技术分时技术:把处理机的响应时间分成若于个大小相等(或不相等)的时间单位,称为时间片(如100毫秒),每个终端用户获得CPU,就等于获得一个时间片,该用户程序开始运行,当时间片到(用完),用户程序暂停运行,等待下一次运行。例如:我们上课。图1-7分时系统示意图2.分时系统实现中的关键问题
为实现分时系统,其中,最关键的问题是如何使用户能与自己的作业进行交互。
(1)及时接收。
(2)及时处理。3.分时操作系统特点多路性交互性“独占”性及时性同时有多个用户使用一台计算机宏观上:是多个人同时使用一个CPU微观上:多个人在不同时刻轮流使用CPU用户根据系统响应结果进一步提出新请求(用户直接干预每一步)用户感觉不到计算机为其他人服务(OS提供虚机器,各个用户的虚机器互不干扰)系统对用户提出的请求及时响应第一个分时操作系统CTSS分时系统的思想——1959年在MIT提出每个用户有一个联机终端调试程序的用户常常只发出简短的命令计算机能够为许多用户提供交互式、快速服务,同时在CPU空闲时还能在后台运行大作业MULTICS的灾难MULTICS设计目标是:便利的终端使用——大量远程终端通过电话线接入计算机主机高可靠的大型文件系统——大容量的用户信息共享;存储和构造层次化信息结构的能力MULTICS研制难度超出所有人的预料(PL/1语言)长期研制工作达不到预期目标,1969年4月贝尔实验室退出,通用电气公司也退出。MULTICS的灾难MIT坚持下来,最终,MULTICS成功运行并商业化。MULTICS的意义引入了许多现代操作系统领域概念雏形,对随后的操作系统特别是UNIX的成功有着巨大的影响1.2.5实时系统
引入:要求及时处理的场合实时系统(Real-TimeSystem)是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。实时控制:如工业控制、武器的控制等。实时信息处理:如联网订票系统,股市行情实时信息处理系统。
2.实时任务按任务执行时是否呈现周期性来划分(1)周期性实时任务。(2)非周期性实时任务。根据对截止时间的要求来划分(1)硬实时任务(Hardreal-timeTask)。(2)软实时任务(Softreal-timeTask)。多路性:相同独立性:相同及时性:实时系统要求更高交互性:分时系统交互性更强可靠性:实时系统要求更高3.实时系统与分时系统特征的比较1.2.6微机操作系统的发展
操作系统沿着两个方向继续向前发展,一个是随着计算机系统结构的发展,形成多处理机操作系统、网络操作系统和分布式操作系统;另一个则是把操作系统应用于微机,形成微机操作系统。按运行方式可以分为以下3类:单用户单任务OS单用户多任务OS多用户多任务OS
1.单用户单任务操作系统单用户单任务操作系统的含义是,只允许一个用户上机,且只允许用户程序作为一个任务运行。这是最简单的微机操作系统,主要配置在8位和16位微机上。最有代表性的单用户单任务微机操作系统是CP/M和MS-DOS。2.单用户多任务操作系统单用户多任务操作系统的含义是,只允许一个用户上机,但允许用户把程序分为若干个任务,使它们并发执行,从而有效地改善了系统的性能。目前在32位微机上配置的操作系统基本上都是单用户多任务操作系统,其中最有代表性的是由微软公司推出的Windows和IBM公司推出的OS/2。微软Windows操作系统1990年微软公司推出的Windows3.0。1992年推出的Windows3.1版,提供了386增强模式。1993年推出了WindowsNT是一个全新的32位多任务操作系统,支持网络功能的操作系统。1995年推出了Windows95,绑定ie浏览器。2001年推出windowsxp。2006年推出windowsVista。2009年推出windows7。2012年推出windows8。个人计算机采用Windows占90%以上。
3.多用户多任务操作系统多用户多任务操作系统的含义是,允许多个用户通过各自的终端使用同一台机器,共享主机系统中的各种资源,而每个用户程序又可进一步分为几个任务,使它们能并发执行,从而可进一步提高资源利用率和系统吞吐量。其中最有代表性的是UNIX家族的OS。UNIX操作系统Linux操作系统Linux是由芬兰藉科学家LinusTorvalds于1991年编写完成的操作系统内核。许多人对Linux进行改进、扩充、完善,做出了关键性贡献。Linux由最初一个人写的原型变成在Internet上由无数志同道合的程序高手们参与的一场运动。拯救苹果公司的Macintosh(MACOS)Macintosh操作系统美国Apple公司推出Macintosh机操作系统。MAC是全图形化界面和操作方式的鼻祖。由于它拥有全新的窗口系统、强有力的多媒体开发工具和操作简便的网络结构而风光一时。MINIX操作系统荷兰Vrije大学计算机系教授AndrewS.Tanenbavm开发一个与UNIX兼容,然而内核全新的操作系统。Minix没有借用AT&T一行代码,学生可以通过它来剖析一个操作系统,研究其内部如何运作,其名称源于‘小UNIX’,因为它非常简洁,短小。Minix用C语言编写,着眼于可读性好,代码中加入数千行注释。可运行在IBMPC,Macintosh,Sparc,Amiga,Atari等许多平台上。多处理机操作系统
为了提高计算机系统性能和可靠性,把多台处理机通过互连网络连接在一起的计算机系统。近年来所推出的大、中、小型机,大多数都在采用多处理机体系结构,在高档微机中也出现了这种趋势。分类:紧密耦合松散耦合网络操作系统
网络操作系统:在通用操作系统基础上,用于管理网络通信和共享资源,协调各主机上任务的运行,并向用户提供统一的、有效的网络接口的软件集合。目标:网络通信,资源共享。功能:网络通信资源管理提供多种网络服务提供网络接口分布式操作系统分布式系统:由互连网络将多个分散的处理单元连接起来,以实现并行处理及资源共享。分布式操作系统的所有系统任务可在任何处理机上运行,自动实现全系统范围内的任务分配并自动调度各处理机的工作负载。透明性:资源共享,分布对用户来讲是不知道的。自治性:处于分布式系统的多个主机处于平等地位。优点:处理能力强,速度快,可靠性强。网络和分布式的区别
(1)分布具有各个计算机间相互通讯,无主从关系;网络有主从关系(2)分布式系统资源为所有用户共享;而网络有限制地共享(3)分布式系统中若干个计算机可相互协作共同完成一项任务嵌入式操作系统什么是嵌入式系统: 运行在嵌入式智能芯片环境中,对整个智能芯片以及它所操作、控制的各种部件装置等等资源进行统一协调、调度、指挥和控制的系统软件。限制:内存有限,处理器速度慢,显示屏幕小嵌入式操作系统的应用智能卡移动通信计算机外设机顶盒零售设备印刷机复印机互联网服务器电话交换设备1.3操作系统的基本特性并发性共享性虚拟性异步性
1.3.1并发性1.并发与并行在操作系统中同时存在许多活动,多个事件会在同一时间段内发生。并行性:是指两个或多个事件在同一时间发生。并发性:是指两个或多个事件在同一时间间隔内发生。在多道程序处理时,宏观上并发,微观上交替执行(在单处理机环境下)。
2.引入进程通常的程序是静态实体,在多道程序系统中,它们是不能独立运行的,更不能和其它程序并发执行。在操作系统中引入进程的目的,就是为了使多个程序能并发执行。进程是指在系统中能独立运行并作为资源分配的基本单位,它是由一组机器指令、数据和堆栈等组成的,是一个能独立运行的活动实体。多个进程之间可以并发执行和交换信息。3.引入线程通常在一个进程中可以包含若干个线程,它们可以利用进程所拥有的资源。在引入线程的OS中,通常都是把进程作为分配资源的基本单位,而把线程作为独立运行和独立调度的基本单位。线程被视作现代操作系统的一个重要标致。1.3.2共享性共享是指系统中的所有资源不再为一个程序所独占,而是供同时存在于系统中的多道程序所共同使用。根据资源属性不同,可分为:互斥共享方式同步访问方式并发和共享是操作系统两个最基本的特征,这两者之间又是互为存在条件的。
1.3.3虚拟性所谓虚拟,是指把一个物理上的实体,变为若干个逻辑上的对应物。在OS中利用了多种虚拟技术虚拟处理机:多道程序并发执行,分时使用一台处理机。虚拟存储:将一台机器的物理存储器变为虚拟存储器,以便从逻辑上扩充存储器的容量。虚拟设备:将一台物理I/O设备虚拟为多台逻辑上的I/O设备。虚拟信道:把一条物理信道虚拟为多条逻辑信道。1.时分复用技术时分复用,亦即分时使用方式,它最早用于电信业中。为了提高信道的利用率,人们利用时分复用方式,将一条物理信道虚拟为多条逻辑信道,将每条信道供一对用户通话。在计算机领域中,广泛利用该技术来实现虚拟处理机、虚拟设备等,以提高资源的利用率。2.空分复用技术早在上世纪初,电信业中就使用频分复用技术来提高信道的利用率。它是将一个频率范围非常宽的信道,划分成多个频率范围较窄的信道,其中的任何一个频带都只供一对用户通话。之后,在计算机中也使用了空分复用技术来提高存储空间的利用率。1.3.4异步性(Asynchronism)在多道程序环境下,允许多个进程并发执行,但由于竞争资源等因素的限制,使进程的执行不是“一气呵成,而是以“走走停停”的方式运行。多道程序环境下程序的执行,是以异步方式进行的;每个程序在何时执行,多个程序间的执行顺序以及完成每道程序所需的时间都是不确定和不可预知的。进程是以人们不可预知的速度向前推进,此即进程的异步性。1.4操作系统的主要功能操作系统具有以下功能:处理机管理存储器管理设备管理文件管理用户接口1.4.1处理机管理
主要任务:是对处理机的分配和运行实施有效管理。处理机的运行及分配都是以进程为单位,对处理机管理,可归结为对进程的管理。1.4.1处理机管理功能进程控制:基本功能就是创建和撤消进程以及控制进程的状态转换。进程同步:为多个进程(含线程)的运行进行协调(协调方式:互斥和同步)。进程通信:用来实现在相互合作的进程之间的信息交换。调度:作业和进程的状态切换,包括作业调度和进程调度。1.4.2存储器管理功能存储器管理的主要任务:为多道程序的并发运行提供良好环境;便于用户使用存储器;提高存储器的利用率;为尽量多的用户提供足够大的存储空间。1.4.2存储器管理功能存储器管理的主要功能内存分配:为每道程序分配内存空间,提高存储器的利用率;存储保护:确保每道用户程序都只在自己的内存空间中运行,彼此互不干扰;地址映射:进程的逻辑地址到内存物理地址的映射。内存扩充:用虚拟存储技术解决内存容量不足的问题;请求调入功能页面置换功能1.4.3设备管理功能设备管理的主要任务:为用户程序分配I/O设备;完成用户程序请求的I/O操作;提高CPU和I/O设备的利用率;方便用户使用I/O设备。1.4.3设备管理功能设备管理的主要功能:缓冲管理:匹配CPU和外设的速度,提高两者的利用率和并行操作程度;设备分配:根据用户进程的I/O请求、系统的现有资源情况以及按照某种设备分配策略,为之分配其所需的设备;设备处理:设备驱动程序用于实现CPU和设备控制器之间的通信。1.4.4文件管理功能文件管理的主要任务:对用户文件和系统文件进行管理,以方便用户使用,并保证文件的安全性。1.4.4文件管理功能文件管理的功能:文件存储空间的管理:为每个文件分配必要的外存空间,提高外存的利用率。目录管理:使用户按名存取,能实现文件共享,提高速度。文件读、写管理和文件保护:根据用户请求,从外存中读取数据,或将数据写入外存。并提供有效的存取控制功能1.4.5操作系统与用户之间的接口为了方便用户使用操作系统,OS又向用户提供了“用户与操作系统的接口”。该接口通常可分为两大类:(1)用户接口。它是提供给用户使用的接口,用户可通过该接口取得操作系统的服务;(2)
程序接口。它是提供给程序员在编程时使用的接口,是用户程序取得操作系统服务的惟一途径。系统调用(程序接口)操作命令操作系统裸机
应用程序系统程序(作业接口)1.用户接口用户接口又进一步分为:联机用户接口:由一组磁盘操作命令和命令解释程序组成。脱机用户接口:由一组作业控制语言JCL组成。图形接口:采用图形化的操作界面。2.程序接口程序接口就是系统调用方式。系统调用是指系统为响应用户程序请求操作系统服务所提供的子程序。用户程序可通过调用操作系统提供的系统调用获取系统服务,如DOS的INT21H、INT25H等,Windows系统的API函数。系统调用对用户屏蔽了操作系统的具体动作而只提供有关的功能。1.5OS结构设计软件是指当计算机运行时,能提供所要求的功能和性能的程序和数据的集合;以及描述程序功能需求以及程序如何操作使用的文档。软件工程是指运用系统的、规范的和可定量的方法,来开发、运行和维护软件。其目的是为了解决在软件开发中所出现的编程随意、软件质量不可保证以及维护困难等问题。什么是内核?内核(kernel)是作为可信软件来提供支持进程并发执行的基本功能和基本操作的一组程序模块。内核通常驻留在内核空间,运行于核心态,具有访问硬设备和所有主存空间的权限,是仅有的能执行特权指令的那部分程序。无结构OS模块化OS结构分层式OS结构1.5.1传统的操作系统结构在早期开发操作系统时,设计者只是把他的注意力放在功能的实现和获得高的效率上,缺乏首尾一致的设计思想。这种OS是无结构的。主要是编制紧凑程序,便于利用内存。1.无结构操作系统缺点:逻辑复杂,维护困难.过程3过程2过程7过程1过程6过程5过程8过程42.模块化OS结构
模块化程序设计技术,是基于“分解”和“模块化”原则来控制大型软件的复杂度的。将OS按其功能划分为若干个具有一定独立性和大小的模块。并规定好各模块间的接口,各模块之间能通过该接口实现交互。2.模块化OS结构2.模块化OS结构衡量模块的独立性有以下两个标准:内聚性,指模块内部各部分间联系的紧密程度。内聚性越高,模块的独立性越强。耦合度,指模块间相互联系和相互影响的程度。显然,耦合度越低,模块的独立性越好。模块独立性指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。模块化OS结构优缺点优点:提高OS设计的正确性、可理解性和可维护性;增强OS的适应性;加速OS的开发过程。缺点:模块划分和模块间的接口难保证正确合理。模块依赖关系可能复杂。3.分层式OS结构分层结构或虚拟机划分层次,在某一层次上的程序代码只能调用低层次上的代码,使模块间的调用变为有序系统每加一层,就构成一个比原来功能更强的虚拟机层次的设置应考虑的因素程序嵌套:各模块间嵌套关系复杂运行频率:随层次的增高,相应软件的运行速度就随之下降公用模块:低层用户接口:高层3.分层式OS结构分层结构的优点:易保证系统的正确性。易扩充和易维护性。分层结构的缺点:系统效率降低了1.5.2客户/服务器模式
为了提高OS的灵活性和可扩充性而将OS划分为两部分,一部分是用于提供各种服务的一组服务器(进程),另一部分是内核,用来处理客户和服务器之间的通信。在内核中还应具有其它一些机构,用于实现与硬件紧密相关的一些较基本的功能。客户服务器模型1.客户/服务器模式的组成客户/服务器系统主要由客户机、服务器和网络系统三个部分组成。客户机:通常在一个LAN网络上连接有多台网络工作站(简称客户机)服务器:通常是一台规模较大的机器,它应能为网上所有的用户提供一种或多种服务。网络系统:用于连接所有客户机和服务器,实现它们之间通信和网络资源共享的系统。
2.客户/服务器之间的交互第一步:客户发送请求消息
当客户机上的用户要请求服务器进行应用处理时,应输入相应的命令和有关参数。由客户机上的发送进程先把这些信息装配成请求消息,然后把它发往服务器;客户机上的接收进程则等待接收从服务器发回来的响应消息。第二步:服务器接收消息
服务器中的接收进程平时处于等待状态,一旦有客户机发来请求,接收进程便被激活,并根据请求信息的内容,将之提供给服务器上的相应软件进行处理。第三步:服务器回送消息
服务器的软件根据请求进行处理,在完成指定的处理后,把处理结果装配成一个响应消息,由服务器中的发送进程将之发往客户机。第四步:客户机接收消息
客户机中的接收进程把收到的响应消息转交给客户机软件,再由后者做出适当处理后提交给发送该请求的客户。3.客户/服务器模式的优点C/S模式之所以能成为当前分布式系统和网络环境下软件的主要工作模式,是由于该模式具有传统集中模式所无法比拟的一系列优点。(1)数据的分布处理和存储。(2)便于集中管理。(3)灵活性和可扩充性。(4)易于改编应用软件。1.5.3面向对象的程序设计技术面向对象技术的基本概念对象类封装继承多态1.5.3面向对象的程序设计技术世界是由什么组成的?
名胜人
物品
动物,植物……
1.5.3面向对象的程序设计技术对象类(抽象化)Shape1.5.3面向对象的程序设计技术继承图1-9类的继承关系1.5.3面向对象的程序设计技术面向对象技术的优点:(1)通过“重用”提高产品质量和生产率。(2)使系统具有更好的易修改性和易扩展性。(3)更易于保证系统的“正确性”和“可靠性”。
1.5.3面向对象的程序设计技术1.5.4微内核OS结构引入:
微内核是指精心设计的、能实现现代OS核心功能的小型内核,它运行在核心态,且开机后常驻内存。文件系统设备驱动虚拟存储进程控制应用程序
…应用程序微内核(Micro-kernel)硬件微内核操作系统的基本特征足够小的内核主要任务是:①实现与硬件紧密相关的处理;②实现一些较基本的功能;③负责客户和服务器之间的通信。1.5.4微内核OS结构2)基于客户/服务器模式将操作系统中最基本的部分放入内核中,而把操作系统的绝大部分功能都放在微内核外面的一组服务器(进程)中实现。1.5.4微内核OS结构3)应用“机制与策略分离”原理所谓机制,是指实现某一功能的具体执行机构。而策略,则是在机制的基础上,借助于某些参数和算法来实现该功能的优化,或达到不同的功能目标。通常,机制处于一个系统的基层,而策略则处于系统的高层。4)采用面向对象技术1.5.4微内核OS结构1.5.4微内核OS结构微内核的基本功能进程(线程)管理低级存储器管理中断和陷入处理1.5.4微内核OS结构微内核操作系统的优点提高了系统的可扩展性增强了系统的可靠性可移植性好提供了对分布式系统的支持融入了面向对象技术1.5.4微内核OS结构微内核操作系统存在的问题微内核OS的运行效率低。客户机应用客户机应用OS内核文件服务器磁盘设备驱动器返回(a)在整体式内核文件操作中的上下文切换微内核(b)在微内核中等价操作的上下文切换用户态
系统库(函数库)应用程序
系统调用接口
模块内核(进程管理、存储管理、文件管理、设备管理、网络管理)
设备驱动
计算机硬件核心态单内核Linux单内核结构Linux单内核结构进程调度(SCHED)
文件管理
硬件驱动程序
逻辑文件系统
进程间通信(IPC)
网络管理
硬件驱动程序
网络协议
存储管理
硬件相关
硬件无关
Linux内核子系统之间的联系
操作系统服务进程客户进程1客户进程2文件服务器进程服务器主存服务器……
微内核(消息传递)
计算机硬件
用户进程用户态核心态客户通过微内核发送消息给文件服务
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汽修材料供应商合同范本
- 村委会与政府共建协议书
- 鸡蛋采购合同协议书范本
- 离职员工调解协议书范本
- 犯人死亡协议赔偿协议书
- 法人代表不担责协议合同
- 股权委托处理协议书模板
- 混凝土浇捣班组合同范本
- 汽油销售安全协议书范本
- 海外矿山合同协议书范本
- JCT640-2010 顶进施工法用钢筋混凝土排水管
- 中科大固体物理课程作业答案88张课件
- 泵用机械密封的设计与制造
- SOAP病历的书写课件
- GB/T 25517.2-2010矿山机械安全标志第2部分:危险图示符号
- 建筑设计防火规范2001修订版
- S-150溶剂油化学品安全技术说明书(江苏华伦)
- 七年级音乐作业
- 江苏建筑施工安全台账(正式版)
- 高中数学必修二 第十章 概率 章末测试(提升)(含答案)
- “三级”安全安全教育记录卡
评论
0/150
提交评论