操作系统-复习课件.ppt
《操作系统-复习课件.ppt》由会员分享,可在线阅读,更多相关《操作系统-复习课件.ppt(167页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、操作系统复习第一章 概述1单道批处理系统什么是批什么是批处理?理?是指计算机系统对一批作业自动进行处理的一种技术。什么是什么是单道批道批处理?理?内存中仅有一道作业的批处理方式。单道批处理系统是最早的OS。单道批道批处理的缺点理的缺点 用户作业仍是一道一道顺序执行,仍不能合理的利用资源。以主机为主的作业,外围设备空闲,相反,又会造成主机空闲。2多道批处理系统在计算机内存中同时存放若干道已开始运行尚未结束的程序,它们交替运行,共享系统中的各种硬、软件资源,从而使处理机得到充分利用。用户提交的作业放在外存上排成一个队列,称为后备队列;后由作业调度程序按一定算法选择若干个调入内存,使它们共享CPU和
2、系统中的资源。多道批多道批处理的理的优点点(1)提高CPU的利用率。(2)提高内存和I/O设备的利用率。(3)增加系统吞吐量。多道批多道批处理的缺点理的缺点(1)平均周转时间长。(2)无交互能力。3分时系统 分时系统是在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端以交互方式使用计算机,共享主机中的资源。主机主机终终端端分分时系系统的思想的思想 采用时间片轮转的方法,同时为许多终端用户服务,对每个用户能保证足够快的响应时间,提供交互会话功能。分分时系系统的工作方式的工作方式 一台主机连接了若干终端,用户交互式向系统提出请求。系统采用时间片轮转方式处理请求,并通过交互
3、方式在终端上向用户显示结果,用户根据结果发出下道命令。分分时系系统实现的关的关键问题(1)及时接收:系统应能及时接收并处理命令,再将结果返回给用户,实现人机交互。(2)及时处理:用户键入命令后能及时控制自己作业的运行。4实时系统 “实时”,是表示“及时”,而实时系统(Real-Time System)是 指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。实时系系统的的应用用(1)实时控制:实时采集现场数据并对所采集数据进行及时处理。如:钢铁冶炼和钢板轧制的自动控制、飞机自动驾驶系统等。(2)实时信息处理:计算机及时接收从远程终端发来的服务请求,
4、根据用户提出的问题对信息进行检索和处理,并在很短时间内对用户做出正确回答。如:银行、机票订购系统、股市行情实时信息处理系统等。5操作系统的特性5.1并发性并行性是指两个或多个事件在同一时刻发生。并发性是指两个或多个事件在同一时间间隔内发生。(与并发相似,但多指硬件支持)程序的并发执行,有效地改善了系统资源的利用率和提高了系统的吞吐量,但它使系统复杂化,操作系统必须具有控制和管理各种并发活动的能力。5.2共享性操作系统与多个用户的程序共同使用计算机系统中的资源。资源共享是指系统中的硬件和软件资源不再为某个程序所独占,而是供多个用户共同使用。由于资源属性的不同,存在两种形式的资源共享方式:(1)互
5、斥共享资源 (2)同时访问方式 并并发和共享共享是操作系统两个最基本的特征,这两者之间又是互为存在条件的。资源共享是以程序的并发为条件的,若系统不允许程序并发执行,自然不存在资源共享问题。若系统不能对资源共享实施有效的管理,也必将影响到程序的并发执行,甚至根本无法并发执行。5.3虚拟性 在操作系统中虚拟是指把一个物理上的实体,变为若干个逻辑上的对应物。物理实体(前者)是实的,而后者是虚的,相应地,用于实现虚拟的技术,称为虚拟技术。在OS中利用了多种虚拟技术,分别用来实现虚拟处理机、虚拟内存、虚拟外部设备和虚拟信道等。5.4异步性在多道程序环境下,允许多个进程并发执行,但由于竞争资源等因素的限制
6、,使进程的执行不是一气呵成,而是以“走走停停”的方式运行。多道程序环境下程序的执行,是以异步方式进行的;每个程序在何时执行,多个程序间的执行顺序以及完成每道程序所需的时间都是不确定和不可预知的。进程是以人们不可预知的速度向前推进,即进程的异步性。6操作系统的主要功能 从资源管理观点看,操作系统具有五大功能:处理机管理存储器管理设备管理文件管理接口的管理6.1处理机管理功能 处理机管理的主要任务是对处理机的分配和运行实施有效管理。对处理机管理,可归结为对进程的管理(进程控制、进程同步、进程通信、调度)。1进程控制当用户作业要运行时,应为之建立一个或多个进程,并为它分配除处理机以外的所有资源,将它
7、放入进程就绪队列。当进程运行完成时,立即撤销该进程,以便及时释放其所占有的资源。进程控制的基本功能就是创建和撤销进程以及控制进程的状态转换。2进程同步 进程同步是指系统对并发执行的进程进行协调。最基本的进程同步方式是使诸进程以互斥方式访问临界资源。此外,对于彼此相互合作、去完成共同任务的诸进程,则应由系统对它们的运行速度加以协调。3进程通信 对于相互合作的进程,在它们运行时,相互之间往往要交换一定的信息,这种进程间所进行的信息交换称为进程通信。4进程调度 当一个正在执行的进程已经完成,或因某事件而无法继续执行时,系统应进行进程调度,重新分配处理机。进程调度是指按一定算法,如最高优先算法,从进程
8、就绪队列中选出一进程,把处理机分配给它,为该进程设置运行现场,并使之投入运行。6.2存储器管理功能存储器管理的主要任务:为多道程序的并发运行提供良好环境;便于用户使用存储器;提高存储器的利用率;为尽量多的用户提供足够大的存储空间。1内存分配 多道程序能并发执行的首要条件是,各道程序都有自己的内存空间,因此,为每道程序分配内存是存储器管理的最基本功能。2内存保护 为保证各道程序都能在自己的内存空间运行而互不干扰,要求每道程序在执行时能随时检查对内存的所有访问是否合法。必须防止因一道程序的错误而扰乱了其它程序,尤其应防止用户程序侵犯操作系统的内存区。3地址映射 在多道程序的系统中,操作系统必须提供
9、把程序地址空间中的逻辑地址转换为内存空间对应的物理地址的功能。地址映射功能可使用户不必过问物理存储空间的分配细节,从而为用户编程提供了方便。4内存扩充 由于物理内存的大小可能限制了大型作业或多个作业的并发执行,为了满足用户的要求并改善系统性能,必须对内存加以扩充。但我们无须去真正地增加内存空间,而只须借助于虚拟技术,便可获得这样地效果,使系统能运行内存要求量远比物理内存大得多得作业,或让更多得作业并发执行。6.3设备管理功能设备管理的主要任务:完成用户程序请求的I/O操作;为用户程序分配I/O设备;提高CPU和I/O设备的利用率;提高I/O速度。6.4文件管理功能文件管理的主要任务:文件存储空
10、间的管理目录管理文件读、写管理和保护6.5向用户提供接口为方便用户使用操作系统,OS向用户提供了用户与操作系统的接口,该接口分为用户接口和程序接口两类。1.用户接口:用户可通过该接口控制自己的作业。又可分为联机用户接口、脱机用户接口和图形用户接口。2.程序接口 该接口是为用户程序在执行中访问系统资源而设置的,是用户程序取得操作系统服务的惟一途径。他由一组系统调用组成,每一个系统调用都是一个能完成特定功能的子程序,每当程序要求OS提供某种服务时,便调用具有相应功能的调用。第二章 进程管理1 前驱图(DAG)前驱图是一个有向无循环图,用于描述进程之间执行的前后关系。如:每个结点可以表示一条语句、一
11、个程序段或进程。结点间的有向边表示两个结点之间存在的偏序或前趋关系“”。下图是不是前驱图?前趋图中必须不存在循环,故上图不是前趋图。对于具有下述四条语句的程序段应具有什么样的前驱关系?S1:a=x+2S2:b=y+4S3:c=a+bS4:d=c+b2.进程1 什么是进程进程是程序的一次执行。进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的独立单位。进程是可与其他进程并发执行的程序,在一个数据集合上的运行过程。它是系统进行资源分配和调度的一个独立单位。进程的定程的定义:进程是程是进程程实体(程序段、数据体(程序段、数据段、段、PCB)的运行)的运行过程,是系程
12、,是系统进行行资源分配源分配和和调度的一个独立度的一个独立单位。位。进程与程序的区别是什么?程序是静态的,进程是动态的;程序的存在是永久的,进程是动态的产生和消亡的。进程具有并发性,而程序没有。进程可分配有资源,而程序没有。进程与程序的联系是什么?进程是由程序、数据和进程控制块(PCB)三部分构成的。进程的目标就是执行他所对应的程序。2 进程的特征动态性并发性独立性异步性 动态性:进程由创建而产生,由调度而执行,由撤销而消亡,是动态的。而程序只是一组有序指令的集合,是静态的。并发性:进程可以并发执行,而程序只能顺序执行。独立性:进程是一个能独立运行、独立分配资源、独立接受调度的基本单位。而程序
13、不能作为一个单位独立参与运行。3 进程控制块(PCB)创建进程时首先创建其PCB,系统利用PCB来控制和管理进程,所以PCB是系统感知进程存在的唯一标志。当进程完成时系统释放其PCB,进程随之消亡。进程与PCB是一一对应的。4 进程的三种基本状态就绪状态执行状态阻塞状态当进程已分配到除CPU以外的所有必要资源时,它便处于就绪状态,一旦获得CPU,便立即执行。当进程已分配到CPU,其程序正在执行,进程就进入执行状态。正在执行的进程,由于发生某个事件而暂时无法执行时,便放弃处理机而进入阻塞状态执行行就就绪阻阻塞塞进程三种状态的转换调度程序选择该程序为其分配CPU1 1 时间片用完;时间片用完;2
14、2 一高优先级进一高优先级进程处于就绪状态。程处于就绪状态。发生某事件而使进程发生某事件而使进程执行受阻,如访问临执行受阻,如访问临界资源时该资源正被界资源时该资源正被其进程访问。其进程访问。阻塞进程的事件消失阻塞进程的事件消失进程转化为就绪状态。进程转化为就绪状态。进程的三个基本状态是:执行状态、就绪状态和阻塞状态。转换如下:1就绪状态执行状态:进程分配到CPU资源2执行状态就绪状态:时间片用完3执行状态阻塞状态:I/O请求4阻塞状态就绪状态:I/O完成5 挂起操作正在执行的进程停止执行,就绪的不接受调度,对于阻塞的进程,即便引起阻塞的事件消失,也不能被调度。具有挂起操作的进程状态转换活动就
15、绪静止就绪:活动就绪(未被挂起的就绪状态)当用原语Suspend挂起后,状态改变。静止就绪活动就绪:当用激活原语Active激活后,状态改变。活动阻塞静止阻塞:活动阻塞(未被挂起的阻塞状态)当用原语Suspend挂起后,状态改变。静止阻塞静止就绪:进程所期待的事件出现后,状态改变。静止阻塞活动阻塞:用激活原语Active激活后,状态改变。6 创建状态和终止状态 在目前实际的系统中,为了管理的需要,还存在着两种常见的进程状态:(1)创建状态(2)终止状态创建状态 创建状态指已经为进程创建了PCB,但该进程所必须的资源尚未分配,故进程还不能被调度执行。终止状态 进程结束或出现无法克服的错误时,由操
16、作系统将其PCB清零,并将PCB空间返还系统,进程进入终止状态。进程五种基本状态的转换7.创建进程 在多道程序环境下,只有作为进程才能运行,因此为使程序运行必须为他创建进程。导致一个进程去创建另一个进程的典型事件:(1)用户登录(2)作业调度(3)提供服务(4)应用请求创建进程完成的主要工作有:(1)OS发现请求创建新进程事件后,调用进程创建原语Creat();(2)申请空白PCB(3)为新进程分配资源(4)初始化进程控制块(5)将新进程插入就绪队列8进程的终止1 终止原因正常结束异常结束(越界错误、保护错、特权指令错、非法指令、运行超时、I/O故障等)外界干预(操作员干预、父进程请求、父进程
17、终止)9进程同步进程间的直接制约关系进程间的直接制约关系进程间的间接制约关系进程间的间接制约关系9.1基本概念进程程互互斥斥:指在多道程序环境下,每次只允许一个进程对临界资源进行访问。进程程同同步步:指多个相关进程在执行次序上的协调。临界界资源源:一次仅供一个进程使用的资源。(物理设备,软资源如变量,表格等)临界区:每个进程中访问临界资源的那段代码叫做临界区。同步机制遵循原则:(1)空闲让进:当无进程处于临界区时,任何有权使用临界区的进程可进入。(2)忙则等待:临界资源互斥访问。(3)有限等待:任何进入临界区的要求应在有限的时间内得到满足(4)让权等待:处于等待状态的进程应放弃占用CPU,以使
18、其他进程有机会得到CPU的使用权。9.2信号量机制信号量机制是一种卓有成效的进程同步工具。整型信号量整型信号量记录型信号量型信号量ANDAND型信号量型信号量信号量集信号量集9.2.1.整型信号量S:是表示资源数目的整形量。仅能通过如下两个标准的原子操作来访问。V操作signal(S)s:=s+1P操作 wait(S)while s=0 do no-op s:=s-1 整型信号量中的wait操作只要是信号量 S=0,就会不断测试,因此该机制为遵循让权等待原则,而是使进程处于忙等状态。9.2.2.记录型信号量semaphoresemaphore:采用了记录型数据结构的记录型信号量。type se
19、maphore=record value:integer;L:list of process;end资源数资源数等待进程链表指针等待进程链表指针procedure signal(S)var S:semaphore;begin s.value=s.value+1;if(s.value =0)then wakeup(s.L);endprocedure wait(S)var S:semaphore;begin s.value=s.value-1;if(s.value 0)then block(s.L);end 记录型信号量中当S.value=1andS2=1andandSn=1)for(i=1;i=
20、n;i+)Si:=Si-1;endforelseBlock(Sj.L)endifSsignal(S1,S2,Sn)for(i=1;i=tiandSn=tn)for(i=1;i=n;i+)Si:=Si-di;endforelseBlock(Sj.L)endifSsignal(S1,d1,Sn,dn)for(i=1;i=n;+i)Si:=Si+di;for(在Si.L中等待的每一个进程P)从等待队列Si.L中取出进程P;if(进程P通过Swait中的测试)进程P进入就绪队列;else 进程P进入某等待队列;endfor9.2.5经典进程的同步问题1生产者消费者问题2哲学家进餐问题3读者写者问题生产
21、者消费者问题缓冲池(n个缓冲区)有一群生产者进程在生产产品,并将这些产品提供给消费者进程消费。为使生产者进程和消费者进程并发执行,两者之间设置了一个缓冲池。生产者将所生产的产品放入缓冲池的一个缓冲区中,消费者进程可从中取走产品消费。他们之间必须保持同步,即不允许生产者进程向一个装满产品的缓冲区中投入产品,也不允许消费者进程到一个空缓冲区中去取产品。Buffer数组:具有n个缓冲区的缓冲池。In指针:输入指针,指示下一个可投放产品的缓冲区。Out指针:输出指针,指示下一个可从中获取产品的缓冲区。Counter:缓冲池中的产品数量。Nexp:存放每次刚生产出来的产品。Nextc:存放每次要消费的产
22、品。Noop:空操作。9.2.6生产者消费者问题1.记录型信号量解决生产者消费者问题var mutex,empty,full:semaphore:=1,n,0;buffer:array0,n-1 of item;In,out:integer:=0,0;Producer:repeat produce an item in nextp;wait(empty);wait(mutex);buffer(in):=nextp;in:=(in+1)mod n;signal(mutex);signal(full);until false;Consumer:repeat wait(full);wait(mute
23、x);nextc:=buffer(out);out:=(out+1)mod n;signal(mutex);signal(empty);consumer the item in nextc;until false9.2.7.AND信号量解决生产者消费者问题var mutex,empty,full:semaphore:=1,n,0;buffer:array0,n-1 of item;In,out:integer:=0,0;Producer:repeat produce an item in nextp;Swait(empty,mutex);buffer(in):=nextp;in:=(in+1)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 复习 课件
限制150内