《自考操作系统原理复习资料.docx》由会员分享,可在线阅读,更多相关《自考操作系统原理复习资料.docx(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、自考操作系统原理复习资料操作系统(operating system, OS )是计算机系统中必不可少的系统软件。它是计算机系 统中各种资源的管理者和各种活动的组织者、指挥者。它使整个计算机系统协调一致 且有效地工作。通过本课程的学习,我们将知道操作系统要做什么、怎么做和为什么要 这样做。学习操作系统,首先我们应该知道操作系统的概念。本章主要讲述了以下几个问题。一、什么是操作系统二、操作系统的形成三、操作系统的类型四、操作系统的功能一、什么是操作系统在回答这个问题之前,我们先来了解一下什么是计算机系统。计算机系统是按用户的要 求接收和存储信息、自动进行数据处理并输出结果信息的系统。计算机系统由硬
2、件系统和软件系统组成。软硬件系统的组成部份就是计算机系统的资 源,当不同的用户使用计算机时都要占用系统资源并且有不同的控制需求。操作系统就是计算机系统的一种系统软件,由它统一管理计算机系统的资源和控制程序 的执行。操作系统的设计目标一是使计算机系统使用方便。二是使得计算机系统能高效地工作。 二、操作系统的形成早期没有操作系统一原始汇编系统一管理程序-操作系统可以看到,操作系统是随着 计算机硬件的发展和应用需求的推动而形成的。三、操作系统的类型按照操作系统提供的服务,大致可以把操作系统分为以下几类:批处理操作系统、分时操作系统、实时操作系统、网络操作系统和分布式操作系统。其 中批处理操作系统、分
3、时操作系统、实时操作系统是基本的操作系统(加亮)1、批 处理操作系统按照用户预先规定好的步骤控制作业的执行,实现计算机操作的自动化。 又可分为批处理单道系统和批处理多道系统。单道系统每次惟独一个作业装入计算机系 统的主存储器运行,多个作业可自动、顺序地被装入运行。批处理多道系统则允许多个 作业同时装入主存储器,中央处理器轮流地执行各个作业,各个作业可以同时使自学要求:明确存储管理的职能是对主存储器中的用户区域进行管理;理解在不同的 管理方式下如何实现存储保护、地址转换、以及主存空间的分配和回收;比较各种管理 方式的特点;掌握虚拟存储器的实现原理和方法。重点是:各种管理方式的特点;可变分区方式的
4、主存分配算法以及挪移技术;分页式虚 拟存储管理的实现以及页面调度算法;分段式虚拟存储管理的实现。操作系统的存储管理如同一个大地主,管着一个大庄园,当有农户需要租用田地时,地主就给 分配一块地让他种(用户区分配)。等到地里长出了果实(结果出来后,地主还得来收 回这块地(去配)。为了管好这片田地,地主还要管好庄园的门,凡是要进去种地的,都得由地主根据他的需要让他到位置确定实际的田地上 去干活。(把逻辑地址转换成物理地址)庄园里还有一些大家共同可以使用的地方,比如地主的花园,工具房等,大家可以进去,也可以使用,但是不许改变任何现有的东东, 还有,每一个农户只能在自己的地里刨食吃,如果有人胆敢到别人地
5、里或者地主的花园 里摘花偷食,可要当心他们养的狼狗跳出来哦。(共享和保护)固然,再大的地也是不够多的,地主为了多赚些钱,当所有的地都租出去的时候,他想 办法把有些种田人暂时不种的那块地里的东东连地皮一起挖出来放到仓库里先堆着。把 地腾出来租给别人种(这一招可够绝的,无非地主说啦,这就是“虚拟存储。)你说这 个地主是好是坏? ?概述:本章讨论的是主存储器空间的管理。主存储空间分成系统区和用户区两部份。存 储管理的功能包括:主存空间的分配和去配、实现地址转换、主存空间的区享和保护和 主存空间扩充。一、重定位(领略)1、区分逻辑地址与绝对地址。 绝对地址:主存储器以字节为编址单位,容量为n的主存储器
6、中,每一个单元有惟一的 编号,从0到n-1,这个惟一的编号就是主存储器的物理地址.比如我们现在用的128MB内存条中就有128x 1024x 1024=134217728字节,所以它的内存绝对地址就是 从。到134217727.注意啦,庄园的大地主就是这么给自己的地做上标记的。 逻辑地址:在多道程序设计的系统中,操作系统为了方便用户,就允许每一个用户都 认为自己的作业的程序和数据存放在地址是0开始的连续空间中。这样用户程序中使用 的地址就是逻辑地址.种田人不管地主庄园有多少块地,标了什么号,只要记住自己需要多少地,给自己种的 地打上标记就是了。地主想,只要你们能干活,不需要知道了我的底细了吧(
7、家财不可 外扬哦)。2、重定位(地址转换的方式)为了保证作业的正确执行,必须根据分配给作业的主存区域对作业中指令和数据的存放 进行重定位,这种把逻辑地址转换成绝对地址的工作称为“重定位”或者“地址转换”。重定 位的方式有“静态重定位”和“动态重定位”两种。庄园主道:静态重定位比较简单,想当初张三来这儿,说要租一百块地,青菜种在第1块 地,萝卜种2块地里,土豆得重在第3块地里然后得在第28块地里养鸭,完了要把 28块地里的鸭粪拉到第49块地的鱼塘里喂鱼我就说,行啦行啦,你进去,庄园的 左边101到200号那100块地就分给你吧,以后你要找哪块地养鸭养鱼的,就得按我给你 编的号来找。每一个地址都已
8、经加之100 了,不会找错吧。别说我没讲清晰哦。至于动 态重定位,庄主笑道:这个我也能做到,这么实现的:李四来租地时,我也不问他,直 接把他带到空暇的一片地方。派人记着这那片地的第一个地址。比如说是100号吧。李 四这个笨小子干着干着会叫起来说:“老板,现在我要到32号地里抓鱼! ”旁边人一听, 即将告诉他“哎呀,你现在已经分了地啦,起始地块是100号,那你就得到132号地去才 对! ”就这样,李四每一次要找地方时,都叫别人给他重新算一下。这样他才不会找错 位置。这样也有一个好处,就是如果有人出价更好,我可以让他搬到别处去干活,反 正都是叫别人给他重新算位置,所以他就不用记住搬地方后的物理地址
9、啦。(1 )静态重 定位在装入一个作业时,把作业中的指令地址和数据地址全部转换成绝对地址。这种转换工 作是在作业开始前集中完成的,在作业执行过程中无需再进行地址转换。所以称为“静 态重定位”。(2 )动态重定位在装入一个作业时,不进行地址转换,而是直接把作业装到分配的主区域中。在作业执 行过程中,每当执行一条指令时都由硬件的地址转换机构转换成绝对地址。这种方式的 地址转换是在作业执行时动态完成的,所以称为动态重定位。动态重定位由软件(操作系统)和硬件(地址转换机构)相互配合来实现。动态重定位的 系统支持稣呈序浮动“,而静态重定位则不能。二、固定分区存储管理(领略)分区存储管理是把存储器中的用户
10、区作为一个连续区或者分成若干连续区进行管理。早 先使用一个分区的存储管理,后发展成多分区的存储管理。多个分区的管理可采用固定 分区方式和可变分区方式。1、固定分区存储管理的原理固定分区的意思就是指主存空间划分成若干连续区后,这些分区的大小和个数就固定 不变。固定分区管理利用一张“主存分配表”说明各分区的情况。装入和结束作业均通过这个 分区表来记录分区使用的变化情况。2、如何实现存储保护固定分区管理可采用静态重定位的方式装入作业。装入程序把作业中的逻辑地址转换 为绝对地址。并检查绝对地址是否在指定(装入)的分区内,如果是,就装入这个作业。 否则就不能装入。如果装入主存分区的作业占用处理器时(注意
11、,是运行时),进程调 度程序(不是装入程序了)必须把作业所在分区的上下限地址存入“下限寄存器”和“上 限寄存器”中,这样可以在指令执行中判断其所用到的绝对地址是否越界,达到存储保护 的目的。3、怎样提高主存空间的利用率这里有几种办法:(1)分区按大小顺序罗列,这样可以使作业总是先使用满足要求的最小分区。(2)根据时常浮现的作业大小和频率划分分区。(3)按作业的对主存空间的需求量排成多个队列,规定队列与分区的对应关系。也就 是说多大的作业只能放在多大的分区里,就算有更大的分区空着,也不许他进入。 三、可变分区的管理(领略)可变就是指分区的大小和位置不是固定的,而是根据作业要求的主存量来分配分区的
12、 大小。1、主存的分配和去配(回收)在系统初始化时,.主存除了操作系统所占部份外,整个用户区是一个大的空暇区,可以 按作业需要的空间大小顺序分配空暇区直到不够时为止。当做业结束时,它的占用分区被收回。这个空暇区又可以根据新作业的大小重新用于分 配,所以主存中的已占分区和空暇区的数目和大小都是在变化的。可以用两张表“已分 配区表”和空暇区表来记录和管理。2、常用的分配算法最先适应分配算法:简单地说,就是在分区表中顺序查找,找到够大的空暇区就分配。 但是这样的分配算法可能形成许多不连续的空暇区,造成许多“碎片”,使主存空间利用 率降低。最优适应分配算法:这种算法总是挑选一个能满足作业要求的最小空暇
13、区。但是这种 算法可能形成一些极小的空暇区,以致无法使用,这也会影响主存利用率。最坏适应分配算法:这种算法和上面的正好相反,它总是挑一个最大的空暇区分给作 业使用,使剩下的空间不至于太小。3、地址转换与存储保护采用可变分区方式管理时,普通均采用动态重定位方式装入作业。也就是每读一条指 令,都要变换一次地址。变换要靠硬件支持,主要是两个寄存器:基址寄存器和限 长寄存器,限长寄存器存放作业所占分区的长度,基址寄存器则存放作业所占分区的 起始地址,这两个值确定了一个分区的位置和大小。转换时根据逻辑地址与限长值比较,如果不有超过这个值,表示访问地址合法,再加之 基址寄存器中的值就得到了绝对地址了,否则
14、形成“地址越界”中断。达到存储保护的 目的。对于共享程序,则硬件提供两组限长寄存器和基址寄存器。访问时对访问区享区和作业 区的地址分别进行转换。4、挪移技术的应用挪移技术要“挪移”的东东就是主存空间中的作业。把某个作业移到另一处主存空间去( 在磁盘整理中我们应用的也是类似的挪移技术),这样的最大好处就是可以合并一些 空暇区。但是挪移技术的应用也要注意以下问题。挪移会增加系统开消。所以要尽量减少挪移。挪移是有条件的,如果作业在执行过程中正等待与外围设备传输信息,就不能挪移。因 此在挪移时首先要判定该作也是否与外设交换信息。四、页式存储管理(领略)1、如何分页和分块页式存储管理中有两个名词:“页”
15、和“块”,其中的“块”是针对硬件来说的,就是把存 储器分成若干相等大小的区,每一个区就称为一个块。对应的,在程序中,逻辑地址进行“分页”,其大小和每一个块相一致。事实上,页面的大小是由块的大小自然决定的。对于程序来说,其逻辑地址还是和原来 一样采用连续的地址。只是按照块的位数取其前面数位做为页号.分配空间时,根据作业长度可以确定它的页面数,根据这个页面数在主存中分配相应的 块数,只要是空暇块就可以放入,即使不是相邻的。并把分配情况记在“页表”中,根 据页表可以找到相对应的页号与块号,就得出绝对地址了。2、采用页式管理,使主存空间充分利用,页不必为了得到连续空间而进行挪移。可以提高系统效 率。3
16、、页表的构造与作用每一个被装入主存的作业都有一张页表,指出该作业逻辑地址中的页号与所占用的主 存块号之间的对应关系。页表的长度由作页拥有的页面数决定,行号对应为页号,行 中记录的是主存中的块号。页表是硬件进行地址转换的依据,每执行一条指令时按逻辑地址中的页号查找页表并转 换成绝对地址。在多道程序设计系统中,进入主存的每一个作业都有一张页表,由一个硬件“页表控制 寄存器”来记录每一个作业的页表所在位置和长度以便作业转换时同时转换页表。4、快表的构造与作用快表就是页表的一部份克隆,每行中有页号及其对应的块号,整个快表存放在一个小 容量的高速缓存中,访问时快表和内存同时进行查找,因为快表速度很快,而
17、常用的页 都登记在快表中,因此可以大大加快执行速度。5、采用页式管理的地址转换过程(为什么不直接用块分配表来记录而要用位示图呢,因为主存块不少,这样可以节省空 间,提高效率。位示图就是用一个位(0或者1)来表示一个块的使用状态,一个字32位,可 以表示32块。按顺序罗列,只需一小段内存就可以记录主存中大量的块状态)6、利 用位示图实现页式存储空间的分配和回收页式存储管理把主存空间分成大小固定的许多块,在装业作、也时,如何知道主存中哪些 块已使用,哪些还未用,可以用位示图来表示。块号=字号x字长+位号字号寸字/长(即块号i除以字长取整)位号=i mod字长(即块号i除以字长取余)。五、段式存储管
18、理(领略)1、段式存储中段的划分段式管理是根据人们对程序中需要分段编制的要求出发而提供的。它提供给用户编 程时使用的逻辑地址由“段号”和“段内地址”两部份组成,其形式和页式管理相同。但是实 际上是不同的:页式存储管理提供连续逻辑地址由系统自动分页,段式存储管理中的作业分段是由用户 决定的,每段独立编程,因此段间的逻辑地址是不连续的。2、段式存储空间的分配这种分配方法和可变分区管理方式的分配方法相同,所不同的是:可变分区管理方式中是为每一个作业分一个区,而段式管理是为一个作业中的每一个段 分一个连续的空间。(段式管理更细)。3、段表的构造与作用段表由段号、本段限长和起始地址三部份组成,由于每一行
19、记录的行号可以对应 程序的段号,因此段号实际上被省略,不占存储空间。与其他管理方式一样,段表记录的信息用于地址转换和存储保护。段表的表目起到了基 址/限长寄存器的作用。4、段式存储管理的地址转换这个转换过程如同可变分区方式的地址转换,但是由段表的表目替代了基址/限长寄存 器。绝对地址=根据段号找到段表中的起始地址+段内地址(如果段内地址超过限长则产生 “地址越界”程序性中断事件达到存储保护)多道程序设计系统中,每一个进入主存的作业都建立了段表,因此还有一个硬件“段表 控制寄存器”来记录每一个作业的段表在主存中的位置和长度。六、虚拟存储器(领略)1、什么是虚拟存储器虚拟存储器是为“扩大”主存容量
20、而采用的一种设计技巧,它利用作也在只装入部份信 息时就可以执行的特性和程序执行中表现出来的局部性特性,借助于大容量的辅助存 储器实现小主存空间容纳大逻辑地址空间的作业。虚拟存储器的容量由计算机的地址结构(总线位数)决定。2、虚拟存储器的实现原理它的工作原理如下:首先把作业信息保留在磁盘上,当做业请求装入时,只将其中一部 分先装入主存,作业执行中若要访问的信息不在主存中,则再设法将这些信息装入主存。 3、分页式虚拟存储器的实现页式虚拟存储管理是在页式存储管理的基础上实现的。首先把作业信息作为副本存 放在磁盘上,作业执行时,把作业信息的部份页面装入主存储器,作业执行时若所访问 的页面已经在主存中,
21、则进行地址转换,得到绝对地址,否则产生“缺页中断”由操作 系统把当前所需的页面装入主存。4、常用的页面调度算法:FIFO、LRU、LFU当主页中无空暇块时,为了装入一个页面,就必须按某种算法将主存中某个页调出,调 入所需装入的页面。这就是页面调度。常用的算法有:先进先出调度算法(FIFO)、 最近至少使用调度算法(LRU )和最近最不常用调度算法(LFU )o 特殊要注意掌握的就是LRU的算法,如何进行调度。5、缺页中断率如果作页执行中访问页面的总次数为A,其中有F次访问的页面尚未装入主存,则有F 次缺页中断,仁F/A,这里的僦称为缺页中断率。影响缺页中断的因素有: 分配给作业的主存块数块数n
22、 T f1页面的大小页面大小f。程序编制方法局部化程度TR页面调度算法6、段式虚拟存储器的实现段式虚拟存储管理以段式存储管理为基础,在磁盘上保留作业的各个分段信息,作 业执行时把需要执行的一段或者几段装入主存。在实际使用中,也要进行查表和地址转 换以及“缺段中断”和调度(包括调出、装入、挪移等)工作。用各自所需的外围设备,这样可以充分利用计算机系统的资源,缩短作业时间,提高系统的吞吐率。2、分时操作系统,这种系统中,一个计算机系统与许多终端设备连接,分时系统支持多个终端用户,同时以交互方式使 用计算机系统,为用户在测试、修改和控制程序执行方面提供了灵便性。分时系统的 主要特点是同时性、独立性、
23、及时性和交互性。3、实时操作系统能使计算机系统接收到外部信号后及时进行处理,并在严格的规定时间内完成处理,且给出反馈信号。 它是较少有人为干预的监督和控制系统。实时系统对可靠性和安全性要求极高,不强 求系统资源的利用率。4、网络操作系统可以把若干计算机联合起来,实现各台计算机之间的通信及网络中各种资源的共享,像我们现在使用的Windows , UNIX和Linux等操作系统都是网络操作系统。5、分布式操作系统的网络中各台计算机没有主次之分,在任意两台计算机间的可进行 信息交换和资源共享。这一点上分布式操作系统和网络操作系统差别不大,他们的本质 区别在于:分布式操作系统能使系统中若干计算机相互协
24、作完成一个共同的任务。这使 得各台计算机组成一个完整的,功能强大的计算机系统。四、操作系统的功能从资源管理的观点出发,操作系统功能可分为五大部份:处理器管理、存储管理、文件 管理、设备管理和作业管理。计算机系统是由硬件系统和软件系统两部份组成,操作系统是软件系统的一个组成部 分,它是直接在硬件系统的基础上工作的,所以在研究操作系统之前,先必须对计算机 系统的结构有一个基本的了解,本章就是讲述计算机系统结构的基本知识。本章的考核知识点是:1.计算机系统的层次结构2.硬件环境3.操作系统结构学习本章要求:了解计算机系统的结构,有关硬件的I/O中断和存储结构,硬件的保护 措施;有关操作系统的结构,操
25、作系统提供的使用接口。重点是:硬件环境和操作系统的结构 一、计算机系统的层次结构(识记) 现代的通用计算机系统是由硬件和软件组成的一种层次式结构,最内层是硬件系统,最 外层是使用计算机系统的人,人与硬件系统之间是软件系统本章考核知识点:1.多道程序设计2.进程3.进程状态4.进程控制块5.进程队列6.可再入程序7.中断及中断响应8.中断优先级9.进程调度自学要求:通过本章学习应该掌握多道程序设计是如何提高计算机系统效率的;进程与 程序有什么区别;进程的基本状态以及状态变化;进程队列及进程调度策略;中断的作 用。重点是:多道程序设计;进程的定义和属性;进程调度策略。一、多道程序设计(领略)1、什
26、么是多道程序设计。让多个计算问题同时装入一个计算机系统的主存储器并行执行,这种设计技术称“多 道程序设计”,这种计算机系统称“多道程序设计系统”或者简称“多道系统”。存储保护:在多道程序设计的系统中,主存储器中同时存放了多个作业的程序。为避 免相互干扰,必须提供必要的手段使得在主存储器中的各道程序只能访问自己的区域。 这样,每道程序执行时,都不会破坏其他各道的程序和数据。特殊是当某道程序发生错 误的时一,也不至于影响其它的程序。程序浮动:在多道程序设计系统中,对程序有一些特殊要求,也就是说,程序可以随 机地从主存的一个区域挪移到另一个区域,程序被挪移后仍丝毫不影响它的执行,这种 技术称为“程序
27、浮动”。在多道程序设计的系统中,有三点基本要求:用“存储保护”的方法保证各道程序互不侵犯;用“程序浮动”技术让程序能灵便地改变存放区域且能正确执行;必须对资源按一定的策略分配和调度。2、多道程序设计利用了系统与外围设备的并行工作能力,从而提高工作效率。具体表现为:提高了处理器的利用率;充分利用外围设备资源:计算机系统配置多种外围设备,采用多道程序设计并行工作时, 可以将使用不同设备的程序搭配在一起同时装入主存储器,使得系统中各外围设备时常 处于忙碌状态,系统资源被充分利用;发挥了处理器与外围设备以及外围设备之间的并行工作能力;从总体上说,采用多道程序设计技术后,可以有效地提高系统中资源的利用率
28、,增加单 位时间内的算题量,从而提高了吞吐率。3、多道程序设计对算题量和算题时间的影响。采用多道程序设计能改变系统资源的使 用情况,提高系统效率。但是应注意以下两个问题: 可能延长程序的执行时间;并行工作道数与系统效率不成正比。从表面上看,增加并行工作道数就可提高系统效率, 但实际上并行工作道数与系统效率是不成正比,因为并行的道数要根据系统配置的资源 和用户对资源的要求而定:(1 )主存储器的大小限制了可同时装入的程序数量;(2 )外围设备的数量也是一个制约条件;(3)多个程序同时要求使用同一资源的情况也会时常发生。总之,多道程序设计能提高系统资源的使用效率,增加单位时间的算题量;但是对每一
29、个计算问题来说,从算题开始到全部完成所需要的时间可能延长,此外在确定并行工作 道数时应综合系统的资源配置和用户对资源的要求。二、进程(领略)1、进程的定义:把一个程序在一个数据集上的一次执行称为一个“进程2、进程是由程序、数据集和进程控制块三部份组成。我们举一个例子,比如在有一个用户程序notepad.exe(记事本),当它存放在磁盘上时, 就是一个程序,在windows操作系统下运行它时,就会在内存中建立一个记事本程序的 进程,而我们在记事本中编辑的当前文字就是这个进程的数据集,操作系统会为当前 的进程设置一个进程控制块。如果我们再打开一个记事本程序的窗口,就会建立另一 个进程,此时运行的是
30、同一个程序,但存在两个进程,第二个窗口中的编辑内容就是第 二个进程的数据集。3、进程与程序的区别及关系。程序是静止的,进程是动态的。进程包括程序和程序 处理的对象(数据集),进程能得到程序处理的结果。进程和程序并非一一对应的,一 个程序运行在不同的数据集上就构成为了不同的进程。通常把进程分为“系统进程”和“ 用户进程”两大类,把完成操作系统功能的进程称为系统进程,而完成用户功能的进程 则称为用户进程。三、进程状态(领略)1、进程的三种基本状态.通常,根据进程执行过程中不同时刻的状态,可归纳为三种基本状态:等待态:等待某个事件的完成;就绪态:等待系统分配处理器以便运行;运行态:占有处理器正在运行
31、。2、进程的状态变化进程在执行中状态会不断地改变,每一个进程在任何时刻总是处于上述三种基本状态的 某一种基本状态,进程状态之间转换关系如下图所示:运行态一等待态往往是由于等待外设,等待主存等资源分配或者等待人工干预而引起的。 等待态就绪态则是等待的条件已满足,只需分配到处理器后就能运行。运行态-就绪态不是由于自身原因,而是由外界原因使运行状态的进程让出处理器, 这时候就变成就绪态。例如时间片用完,或者有更高优先级的进程来抢占处理器等。 就绪态一运行态系统按某种策略选中就绪队列中的一个进程占用处理器,此时就变成 了运行态。进程有四个基本属性:多态性从诞生、运行,直至泯灭。多个不同的进程可以包括相
32、同的程序三种基本状态它们之间可进行转换并发性并发执行的进程轮流占用处理器四、进程控制块(领略)1、进程控制块的基本内容。通常进程控制块包含四类信息:标志信息含惟一的进程名说明信息有进程状态、等待原因、进程程序存放位置和进程数据存放位置现场信息包括通用、控制和程序状态字寄存器的内容管理信息存放程序优先数和队列指针2、进程控制块的作用进程控制块(Process Control Bl, oc简称PCB),是操作系统为进程分配的用于标志进程, 记录各进程执行情况的。进程控制块是进程存在的标志,它记录了进程从创建到消亡动 态变化的状况,进程队列实际也是进程控制块的链接。操作系统利用进程控制块对进 程进行
33、控制和管理。进程控制块的作用有:(1)记录进程的有关信息,以便操作系统的进程调度程序对进程进行调度。这些信息包括标志信息、说明信息、现场 信息和管理信息等;(2 )标志进程的存在,进程控制块是进程存在的惟一标志五、进程队列(领略)1、进程队列的链接。在多道程序设计的系统中往往会同时创建多个进程.在单处理器的情况下,每次只能让 一个进程运行,其他的进程处于就绪状态或者等待状态。为了便于管理,时常把处于相 同状态的进程链接在一起,称“进程队列”,由于进程控制块能标志进程的存在和动态 刻划进程的特性,因此,进程队列可以用进程控制块的连接来形成。链接的方式有两 种:单向链接和双向链接。2、进程基本队列
34、就绪队列:由若干就绪进程按一定次序链接起来的队列。等待队列:把等待资源或者等待某些事件的进程罗列的队列3、进程的入队和出队。出队和入队:当发生的某个事件使一个进程的状态发生变化时,这个进程就要退出所 在的某个队列而排入到另一个队列中去。出队:一个进程从所在的队列退出的操作称为出队入队:一个进程排入到一个指定的队列的操作称为入队。系统中负责进程入队和出队的工作称为队列管理。无论单向链接还是双向链接,解决入,出队问题,都是首先找到该队列的队首指针,沿 链找出要入队的进程以及它要插入的位置,或者找出要出队的进程,然后修改本进程指 针(入队情况)和相邻进程的有关指针值即可。六、可再入程序(识记)(1)
35、什么是可再入程序.一个能被多个用户同时调用的程序称做“可再入”的程序。(2)可再入程序的性质。可再入程序必须是纯代码,在执行时自身不改变;一个可再入程序要求调用者提供工作区,以保证程序以同样方式为各用户服务。编译程序和操作系统程序通常都是“可再入”程序,能同时被不同用户调用而构成不 同的进程。七、中断及中断响应(领略)1、中断的定义。一个进程占有处理器运行时,由于自身或者外界的原因(浮现了事件)使运行被打断, 让操作系统处理所浮现的事件,到适当的时候再让被打断的进程继续运行,这个过程称 刈中断,。2、中断的类型。从中断事件的性质出发,中断可以分为两大类:强迫性中断事件包括硬件故障中断,程序性中
36、断,外部中断和输入输出中断等自愿性中断事件是由正在运行的进程执行一条访管指令用以请求系统调用而引起的中 断,这种中断也称为“访管中断”。自愿中断的断点是确定的,而强迫性中断的断点可能发生在任何位置。3、中断的响应和处理。中断响应(硬件即中断装置操作)处理器每执行一条指令后,硬件的中断位置即将检查有无中断事件发生,若有中断事件 发生,则暂停现行进程的执行,而让操作系统的中断处理程序占用处理器,这一过程称 为“中断响应”。中断响应过程中,中断装置要做以下三项工作:是否有中断事件发生判别自愿性中断,只要检查操作码是否为访管指令。判别强迫性中断,则要检查中断寄存器内容。若为0,则无中断;若非0,则表示
37、有中 断事件发生。若有中断发生,保护断点信息每一个程序都有一个程序状态字(PSW)来反映本状态的执行状态,如基本状态、中断 码和中断屏蔽位等内容。处理器设有一个“程序状态字寄存器”用来存放当前运行程序 的PSW.程序状态字可分为当前PSW、旧PSW和新PSW.当浮现中断事件后,把被中断进程的PSW保存为旧PSW,即完成断点信息保护。启动操作系统的中断处理程序工作中断装置通过“交换PSW ”过程完成此项任务,即把浮现的中断事件存放到当前PSW 中断码位置,然后把该当前PSW保存为旧PSW,再把操作系统中断处理程序的新 PSW送到程序状态字寄存器中,成为当前的PSW.中断处理(软件即操作系统操作)
38、操作系统的中断处理程序对中断事件进行处理时,大致要做三方面的工作:保护被中断进程的现场信息把中断时的通用寄存器,控制寄存器内容及旧PSW保存到被中断进程的进程控制块中。 分析中断原因根据旧PSW的中断码可知发生该中断的具体原因。处理发生的中断事件普通只做一些简单处理,在多数情况下把具体的处理交给其他程序模块去做。八、中断优先级和中断屏蔽(识记)1、中断优先级是硬件设计时确定的。中断装置按预定的顺序来响应同时浮现的中断 事件,这个预定的顺序称为“中断优先级”。中断优先级是按中断事件的重要性和紧迫程 度来确定的,是由硬件设计时固定下来的。普通情况下,优先级的高低顺序挨次为:硬 件故障中断、自愿中断
39、、程序性中断,外部中断和输入输出中断.2、中断的嵌套处理3、中断屏蔽的作用。中断优先级只是规定了中断装置响应同时浮现的中断的次序,当 中断装置响应了某个中断后中断处理程序在进行处理时,中断装置也可能去响应另一个 中断事件。因此会浮现优先级低的中断事件的处理打断优先级高的中断事件的处理,使 得中断事件的处理顺序与响应顺序不一致,而且会形成多重嵌套处理,使多现场保护、 程序返回等工作变的复杂。中断屏蔽技术就是为了解决上述问题而提出的在一个中断处理没有结束之前不响应其 他中断事件,或者只响应比当前级别高的中断事件.于是,之中断装置检查到有中断事 件后,便去查看PSW中中断屏蔽标志,如果没有屏蔽就响应
40、该中断;否则,暂时不响 应该中断,待屏蔽标志消除后再响应。自愿中断是不能屏蔽的。九、进程调度(领略)1、进程调度的职责。按选定的进程调度算法从就绪队列中选择一个进程,让它占用处 理器。2、选择进程调度算法的几个准则:提高处理器利用率增大吞吐量减少等待时间缩短响应时间3、进程调度的常用算法:先来先服务、优先数法、轮转法、分级调度。先来先服务调度算法该算法按进程进入就绪队列的先后次序选择可以占用处理器的进 程。优先数调度算法对每一个进程确定一个优先数,该算法总是让优先数最高的进程先使 用处理器。对具有相同优先数的进程,再采用先来先服务的次序分配处理器。系统常 以任务的紧迫性和系统效率等因素确定进程
41、的优先数。进程的优先数可以固定的,也可 随进程执行过程动态变化。一个高优先数的进程占用处理器后,系统处理该进程时有 两种方法,一是“非抢占式”,另一种是“可抢占式前者是此进程占用处理器后向来运 行到结束,除非本身主动让出处理器,后者则是严格保证任何时刻总是让优先数最高的 进程在处理器上运行。时间片轮转调度法把规定进程一次使用处理器的最长期称为“时间片”。时间片轮转调 度算法让就绪进程按就绪的先后次序排成队列,每次总选择该队列中第一个进程占用处 理器,但规定只能使用一个时间片,如该进程尚未完成,则排入队尾,等待下一个供 它使用的时间片。各个进程就这样轮转运行。时间片轮转算法时常用于分时操作系统 中。分级调度算法由系统设置多个就绪队列,每一个就绪队列中的进程按时间片轮转法占 用处理器,这就是分级调度算法。4、进程的切换进程调度将从就绪队列中另选一个进程占用处理器,使一个进程让出 处理器,由另一个进程占用处理器的过程称“进程切换若有一个进程从运行态变成等待态,或者完成工作后就撤销,则必然会发生进程切换。 若一个进程从运行态或者等待态变成就绪态,则不一定发生进程切换。本章考核知识点:1、重定位2、固定分区存储管理3、可变分区存储管理4、页式存 储管理5、段式存储管理6、虚拟存储器
限制150内