收藏 分享(赏)

自考操作系统概论复习2.doc

上传人:dreamzhangning 文档编号:2770201 上传时间:2018-09-27 格式:DOC 页数:11 大小:147KB
下载 相关 举报
自考操作系统概论复习2.doc_第1页
第1页 / 共11页
自考操作系统概论复习2.doc_第2页
第2页 / 共11页
自考操作系统概论复习2.doc_第3页
第3页 / 共11页
自考操作系统概论复习2.doc_第4页
第4页 / 共11页
自考操作系统概论复习2.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、1、习题解答1.计算机系统由哪两大部分组成? 答:计算机系统是能按照人的要求接受和存储信息,自动进行数据处理和计算,并输出结果信息的机器系统。计算机系统由两大部分组成:硬件(子)系统和软件(子)系统,其中硬件子系统是系统赖以工作的实体,它是有关的各种物理部件的有机的结合。软件子系统由各种程序以及程序所处理的数据组成,这些程序的主要作用是协调各个硬件部件,使整个计算机系统能够按照指定的要求进行工作。 硬件子系统包括中央处理器、主存存储器、输人输出控制系统和各种外围设备。 软件子系统包括系统软件、支援软件和应用软件三个部分。2.什么是计算机的操作系统? 答:操作系统(Operating Syste

2、m 缩写 OS)是一种系统软件。它对程序的执行进行控制,还使用户能方便地使用硬件提供的计算机功能,也使硬件的功能发挥得更好。它是一种用于管理计算机系统资源和控制程序执行的系统软件,它扩充系统的功能,为用户提供方便的使用接口和良好的运行环境。 3.操作系统管理哪些资源? 答:操作系统管理计算机系统的资源,其中硬件资源主要包括中央处理器、主存储器和各种外围设备;软件资源包括了程序和数据,通常这些程序和数据是以文件的方式存储和使用的。它说明资源的使用情况,实现多用户共享计算机系统的各种资源。 4.为什么要把“I/O 指令”等定义为特权指令? 答:若用户程序中直接使用 IO 指令,则可能引起冲突或由于

3、某些意外而造成错误。例如,用户程序中要启动磁带后取磁带上的信息,但可能操作员错拿了另一用户的磁带,把它以磁带机上,这时用户程序启动磁带机后从磁带上得到的信息实际上不是自己需要的,就可能造成程序执行后得到结果不正确。更糟糕的是当用户程序启动磁带机的目的是要把一些信息记到磁带上,将可能覆盖已在磁带上的信息,即把另一用户磁带上的信息破坏了。为了防止类似于这样一类的错误启动外围设备的工作不是用户程序直接做,而是由操作系统来做。5.操作系统是如何防止用户使用特权指令的? 答:为了防止用户程序中使用特权指令,计算机硬件结构区分两种操作模式:目态和管态,其中目态下只能使用除特权指令以外的指令,管态下可以使用

4、全部指令。当在目态下使用特权指令时,硬件就发出信号:“程序使用非法指令” ,且不允许程序继续执行下去。所以可以把用户程序置在目态下运行,而操作系统中必须使用特权指令的那部分程序可在管态下运行,这样可保证计算机系统的安全可靠。 6.操作系统为什么要提供“系统调用”? 答:系统调用是操作系统为用户程序提供的一种服务界面,也可以说是操作系统保证程序设计语言能正常工作的一种支持。在源程序一级,用户用程序设计语言描述算题任务的逻辑要求(如读文件、写文件等) 。而这些要求的实现只通过调用操作系统提供的不同功能的子程序,即系统调用。 7.批处理操作系统、实时操作系统和分时操作系统各有什么特点?答:批处理操作

5、系统是将一批作业的程序和数据交给系统后,系统顺序控制作业的执行,当一个作业执行结束后自动转入下一个作业的执行。多道批处理操作系统,允许若干个作业同时装入主存储器,处理器轮流地执行各个作业,各个作业同时使用各自所需的外围设备。实时操作系统接收到外部信号后及时进行处理,并且要在严格的时限内处理完接收的事件。实时操作系统要求要有比分时操作系统更强的及时性。可靠性是实时系统最重要的设计目标之一。 分时操作系统的主要特点是:交互性。用户能够直接与计算机系统交互。及时性。由于支持人机交互,所以主机应该尽快地对用户的要求给予响应。独立性。这主要是指多个用户虽然在同时使用主机系统,但是他们相互之间是不干扰的。

6、多路性。分时操作系统在宏观上看,整个系统同时在为多个用户服务。 8.从资源管理的观点来看,操作系统有哪些基本功能? 答:从资源管理的观点看,操作系统的功能可分成五大部分,即: 处理器管理。操作系统按照一定的调度算法分配处理机。 存储管理。负责分配、回收和保护存储单元。 文件管理。涉及到文件存储空间的分配与回收、文件目录管理、文件读写与保护。 设备管理。对设备进行分配、回收与控制。 作业管理。负责作业的调度和作业控制。2、存储管理1.解释下列术语逻辑地址;绝对地址;地址转换 答:逻辑地址:对于用户来说,他无须知道自己的作业究竟是在主存的什么位置,他们可以认为自己的程序和数据就是放在从 0 地址开

7、始一组连续的地址空间中,这个地址空间是程序用来访问信息所用的一系列连续地址单元的集合,该地址空间就是逻辑地址空间。逻辑地址空间中,地址单元的编号称为逻辑地址。 绝对地址:主存也被按照连续的存储单元进行编号,绝对地址空间就是主存中一系列连续存储信息的物理单元的集合,也称绝对地址空间为存储地址空间或物理地址空间。绝对地址空间中物理单元的编号称为绝对地址。 地址转换:由于一个作业装入到与其逻辑地址空间不一致的绝对地址空间,使得逻辑地址与绝对地址不同,而引起的对有关地址部分的调整,即逻辑地址转换成绝对地址的过程称为重定位,也称为地址转换。 2.存储保护的目的是什么?怎样实现存储保护? 答:存储保护的目

8、的就是为了保护主存中各区域内的信息不被破坏,它包括存储的权限,存储不可跨越区域等等。为实现存储保护,必须由硬件和软件配合实现。比如在页式管理中,要由操作系统提供页表,硬件机构确定页的使用必须是安全的,如不能访问不属于自己的页等。 3.什么叫重定位?重定位的方式有哪两种?比较它们的不同。 答:由于一个作业装入到与其逻辑地址空间不一致的绝对地址空间,使得逻辑地址与绝对地址不同,而引起的对有关地址部分的调整,即逻辑地址转换成绝对地址的过程称为重定位,也称为地址转换。 重定位有静态和动态两种情况。 所谓静态重定位是在装入一个作业的时候,把作业中的指令地址和数据地址全部一次性地转换成绝对地址。 所谓动态

9、重定位是由软件和硬件相配合来实现的。地址重定位不再是装入的时候一次完成了,而是设置一个基址寄存器,装入作业的时候,将作业在主存区域的首地址放入到基址寄存器中。作业执行的时候,由硬件的地址转换机构动态地对地址进行转换,执行指令的时候,只要将逻辑地址加上基址寄存器的内容,就得到了绝对地址。静态重定位和动态重定位的不同在于:静态重定位是在作业装入的时候一次完成,动态重定位是在作业执行时再实现的。静态重定位是软件支持的,动态重定位是硬件和软件合作实现的。静态重定位不能实现主存的移动,而动态重定位可以。动态重定位还可能提供虚拟存储空间。 4.比较固定分区、可变分区和页式存储管理的优缺点。 答:固定分区优

10、点: 能支持多道程序设计。 无需专门的硬件地址转换机构。 缺点: 主存利用率不算太高,分配中出现内部零头问题。 分区大小固定不灵活,不能为程序动态申请内存。 不具备虚拟存储能力。 可变分区优点: 支持多道程序设计。 没有内部零头问题,主存利用率比固定分区高。 采用移动技术后可以满足正在执行的作业的主存扩充的要求。 缺点: 动态重定位和保护措施需要硬件机构支持,成本高。 由于有外部零头,所以主存利用率依然不算很高。 移动技术开销很大。 每次必须将作业完整调入并连续存放,主存利用率不高。 不具备虚拟存储能力。 页式存储管理优点: 支持多道程序设计 解决了外部零头问题,内部零头大大减少(一个作业平均

11、只有50页面大小的内部零头)主存利用率比较高。 用户作业无需在主存中连续存放,提高主存的利用率。 如果是分页虚拟存储管理,可以提供大容量的多个虚拟存储器,主存利用率更高了。 缺点: 动态重定位和保护措施需要硬件机构支持,成本高; - 2 -采用页表,占用了一部分主存空间和处理机时间。 分页虚拟存储管理中,增加了缺页中断的处理,增加了系统开销。 5.采用可变分区方式管理主存时,为什么要引人移动技术? 答:采用移动技术可以使分散的主存空闲区集中以满足分配要求,采用移动技术后可允许作业执行时动态扩充主存区域。“ 6.页式存储管理中为什么要设置页表?答:因为页式管理时把作业分散在主存中的不连续块中存放

12、,必须通过页表来建立逻辑地址中的页号到绝对地址中的块号的映射,作为硬件进行地址转换的依据。 7.页式存储管理中页面大小是根据什么决定的?页表的长度又是根据什么决定的? 答:页面的大小是由地址结构决定的。页表的长度是由作业的信息量决定的,作业有多少页,页表中就有多少个记录项。 8.叙述页式存储管理中地址转换过程。 答:首先,操作系统为每个作业创建一张页表,它建立了逻辑地址中的页号到绝对地址中的块号的映射。然后,借助于硬件地址转换机构,在作业执行过程中,每执行一条指令时,按逻辑地址中的页号查页表得到对应的块号,再根据公式“绝对地址=块号块长+页内地址”换算出欲访问的主存单元的绝对地址。 9.什么叫

13、虚拟存储器? 答:根据程序执行的互斥性和局部性两个特点,我们允许作业装入的时候只装入一部分,另一部分放在磁盘上,当需要的时候再装入到主存,这样以来,在一个小的主存空间就可以运行一个比它大的作业。同时,用户编程的时候也摆脱了一定要编写小于主存容量的作业的限制。也就是说,用户的逻辑地址空间可以比主存的绝对地址空间要大。对用户来说,好象计算机系统具有一个容量很大的主存储器,称为“虚拟存储器” 。 10.叙述页式存储管理实现虚拟存储器的基本思想。 答:基本思想是:只需将作业的全部信息作为副本存放在磁盘上,作业被调度投入到运行时,至少把第一页信息装入主存储器,在作业执行过程中访问到不在主存储器的页的时候

14、,再把它们装入到主存。 11.采用可变分区方式管理主存时,能实现虚拟存储器吗?为什么? 答:不可以,因为可变分区每次必须将作业完整调入并连续存放,这不适合虚拟存储的要求。同时,可变分区的硬件地址转换机构把绝对地址超出限定范围时作地址错处理,而不是产生“缺分区中断” 。 12.什么叫“抖动”?怎样衡量页面调度算法的好坏? 答:如果选用了一个不合适的调度算法,就会出现这样的现象:刚被淘汰了的页面又立即要用,又要把它调入进来,而调入不久又被调出,调出不久再次被调入,如此反复,使得调度非常频繁,以至于大部分时间都花费在来回调度上。这种现象叫“抖动” 。一个好的调度算法应减少和避免抖动现象。 13.假定

15、某计算机系统的主存容量为 32K,对主存采用动态定位可变分区分配算法。现在已经有 3 个作业在主存储器中(如图) ,当作业 J2 执行时,要求扩充 3K 作业,为了满足作业 J2 这一要求,应移动几道作业的信息?写出它们的次序、方向和距离。 答:因为采用可变分区的管理方式,要求作业的逻辑地址空间是连续的,并且主存空间也是连续的。因此,作业 J2 要求扩充的主存区域应该在原占有区域之后,于是必须通过移动来集中空闲区以供J2 扩充之需。移动的方法有两种: 先把 J1 向上移动 1K 再把 J2 向上移动 2K. J3 向下移动 2K. 显然,第二种方法只要进行一次移动,明显比第一种方法好。 14.

16、某采用页式存储管理的系统,接收了一共 7 页的作业,作业执行时依次访问的页为:l、2、3、4、2、1、5、6、2、1、2、3、7.若把开始 4 页先装入主存,若分别用先进先出(FIFO)调度算法和最近最少用(LRU)调度算法,作业执行时回产生多少次缺页中断?写出依次产生缺页中断后应淘汰的页。 答:采用先进先出调度算法会产生 6 次缺页中断,依次淘汰的页是 1、2、3、4、5、6. 采用最近最少用调度算法会产生 4 次缺页中断,依次淘汰的页是3、4、5、6. 15.某采用页式存储管理的系统,把主页分成大小为 128 的相等长度的块。有一个用户要把一个 128 128 的数组置成初值“0” ,在分

17、页时把数组中的元素每一行放在一页中,假定分给用户可用来存放数组信息的工作区只有一块(既只能放数组中的一行元素) 。用户编制了如下两个不同的程序来实现数组的初始化: l)var A:array 1.。128of arrayl.。128of integer; for j :=1 to 128 do for i:=1 to 128 do Aj:=0; 2)var A:array1.。128of array1.。128Of integer; for i:=1 to 128 do for j:=1 to 128 do Aj:=0; 当分别运行这两个程序时,在实现数组初始化的过程中各会产生多少次缺页中断?

18、 答:假定数组的第一行元素已经存放在了一个主存块中,由于分页进把数组中的元数每一行放在一页中,所以每次 i+1 的时候都会产生缺页中断。这样一来,按 1)编制的程序,每执行一次 Aj:=0 就会产生一次缺页中 断,于是总共产生(128128-1)次缺页中断。而 2)编制的程序执行时产生(128-1)次缺页中断。3、文件管理1.什么叫文件?答:所谓文件是指逻辑上具有完整意义的信息集合。在计算机系统中,很多东西都是以文件的形式存放在辅存中供用户使用,其中包括作业的源程序、目标程序、数据以及各类软件程序等等。 2.文件系统应具有哪些功能 答:为了正确地按名存取,文件系统具有如下功能: 实现从逻辑文件

19、到物理文件间的转换。 有效地分配文件的存储空间。 建立文件目录。 提供合适的存取方法以适应各种不同的应用。 实现文件的共享、保护和保密。 提供一组文件操作。 3.什么是文件的逻辑结构和存储结构?答:用户是从使用的角度来组织文件,用户把能观察到的且可以处理的信息根据使用要求构造成文件,这种构造方式称为文件的逻辑结构。文件系统是从文件的存储和检索的角度来组织文件,在存储媒介上的文件构造方式称为文件的存储结构。 4.解释顺序文件、链接文件和索引文件。 答:(1)顺序结构 将一个文件逻辑上连续信息存放在存储介质(磁盘)中相邻的块上,这种存储结构保证了逻辑记录顺序和物理块顺序相一致。磁带上的文件只能是顺

20、序结构的,因为磁带机本身就是个顺序存取的设备。 (2)链接结构(串联结构) 文件所占用的存储介质物理块不再要求连续(相邻)的,可以分散在存储媒介上。在结构上,采用链表的结构方式,将每一块的最后一个单元用来存放下一个物理块的地址,形成指针链。最后一块的最后一个单元为 0 表示结束。 (3)以索引结构 和链接结构一样,也是一个非连续存储的结构,但它不采用链接方式,而是为每一个文件建立一张索引表,索引表中存放文件中每一个记录存放的物理地址。 5.解释记录的成组和分解 答:当文件的一个逻辑记录的长度小于一个物理块的长度的时候,我们可以把若干个逻辑记录合并成一组存到一个物理块中,这个工作称为成组。访问某

21、个记录的时候,需要把这个记录从它所在的块中的一组记录中分离出来,这一工作称为分解。记录的成组和分解可以提高存储空间的利用率,并且可以减少存储设备的启动次数。 6.假定某个文件由长度为 80 个字符的 100 个逻辑记录组成,磁盘存储空间被划分成长度为 2048 个字符的块,为有效地使用磁盘空间,你可采用成组方式把文件存放到磁盘上,回答下列问题: 该文件至少占用多少磁盘存储块? 若该文件是以链接结构形式在磁盘上的,现用户要求使用第28 个逻辑记录,写出系统为满足用户要求而应做的主要工作。 答:每块能存放的记录个数为20488025 个。一共需要 100254 块。 首先系统计算出第 28 个记录

22、在第 2 个物理块上,然后系统通- 3 -过文件目录读出第一块物理块,在该块最后单元找到第二物理块的地址,读出第二物理块,再经过肇按第 28 个记录在第二块中的位置读出该记录。7.举一例说明数据的分解操作过程。 答:就以上题为例,假定某个文件由长度为 80 个字符的 100 个逻辑记录组成,磁盘存储空间被划分成长度为 2048 个字符的块,为有效地使用磁盘空间,采用成组方式把文件存放到磁盘上,现用户要求每次读一个逻辑记录到他的工作区中,当对该逻辑记录处理后,要求把下一个逻辑记录读人到工作区,直到连续读出 8 个记录。 由于主存储器与外存之间的信息交换是以块为单位的,所以应当在主存中开辟一个 2

23、048 字节的缓冲区。由上题可知每块中含有 25 个记录,文件一共占用 4 块,用户在指明了要读人记录的记录号 N 后,根据公式N25得到该记录应该在 4 块的哪一块中,将该块读人到缓冲区中,并根据公式(N25)得到该记录是块内的第几个记录(式中表示取整, ()表示取余数) ,将该记录从缓冲区拷贝到用户工作区,然后 Nl,如果(N1)25N25,则将缓冲区中的下一个记录拷贝到用户工作区,而无需启动 I/O 操作,否则,按照新的块号将一个数据块读进缓冲区,并将记录从缓冲区拷贝到用户工作区。 8.页式存储管理中用位示图表示主存空间的分配情况,磁盘存储空间的分配也可用位示图来表示,两者能合用一张位示

24、图吗? 答:不行,主存空间和磁盘存储空间是两种不同的存储空间,应该使用不同的位示图来表示分配情况。 9.为了实现按名存取,文件目录应包含哪些内容? 答:为了实现按名存取,文件目录至少要包括文件的名字和文件存放的物理地址,除此之外,目录中还可以包含其他的控制和管理文件的信息,如:文件类型、记录长度、记录个数、口令、建立日期、保存期限、上次修改时间等。 10.怎样才能防止不同的用户可能给各自的文件取了相同的名字而造成混乱? 信息来源“岁月答:可以采用二级目录或多级目录结构。在主目录中登记每个用户的名字和用户文件目录的存放地址;在第二级用户文件目录中登记用户的每个文件的文件名及文件存放位置。这样,不

25、同的用户有同名文件时,由于文件的路径是不一样的,所以不会产生混乱。多级目录是在二级目录的基础上,在用户目录下,根据项目和应用领域再建立子目录和孙目录,这样可以避免同一个用户的同名文件造成的混乱。 11.有一个文件可供两个用户共享,但这两个用户却对这个文件定义了不同的名字,为了保证两个用户都能存取该文件,应怎样设置文件目录?简单画出目录结构关系且解释之。 答:采用二级目录结构。如图 43 所示,用户 zhangshan 和用户 lisi 对一个共享文件分别定义了不同的名字 ww 和 pw,只要在它们各自的目录表中把相应的文件存放地址填上共享文件在存储介质上的起始位置,当用户 zhangshan

26、存取 ww 文件,用户 lisi 存取 pw文件时,文件系统按照目录查找文件时得到相同的文件存放位置。于是各用户使用了不同的文件名,却仍能共享同一文件。12.总结文件的存取方法、文件的存储结构、存储设备类型之间的关系。 答:文件的存取方法有两种:顺序存取和随机存取。文件的存取方法决定了文件的存储结构,它们的关系如表 41 所示。 13.文件系统提供的主要文件操作有哪些?答:文件系统提供的主要文件操作有以下几种: 建立“操作。用户要求把一个新文件存放到存储介质上时,首先要向系统提出”建立“要求。系统在接到用户的”建立“要求后,在文件目录中寻找空目录项进行登记“打开”操作。用户要使用存放在存储介质

27、上的文件前,必需提出“打开 ”要求。系统在接到用户的“打开”要求后,找到该用户的文件目录,如果文件目录在外存上,还要把它调入到主存,然后从文件目录中找到与用户的需求相符合的目录项,取出文件存放的物理地址。如果是索引文件,还要将这个文件的索引表也调入到主存中,这样,后继的读操作能够很快地进行。 “读写”操作。用户调用这个操作来读写文件,系统只允许用户对已经过“打开”或“建立”操作的文件进行读写。对顺序存取方式的文件,用户只需给出读写的文件名,而无需给出读写记录的编号,系统执行本操作的时候,每次顺序读写一个或几个逻辑记录。对于采用随机方式的文件,用户除了要给出需读写的文件名外,还要给出需读写记录的

28、编号(或主键) ,系统执行读操作的时候,按指定的记录号(或键)查索引表,得到记录存放的物理地址后,按地址将记录读出;执行写操作的时候,在索引表找到一个空登记项且找一个空闲的存储块,把记录存人找到的存储块中,同时在索引表中登记“关闭”操作。经过“打开”或“建立”的文件,在读写完毕后,需要执行“关闭”操作。执行关闭操作时要检查读到主存储器中的文件目录或索引表是否被改变,如果改过,则应把修改过的文件目录或索引表重新保存好。一个关闭后的文件不能再使用,如果要使用,必须重新执行“打开”操作。用户提出“关闭”要求时,必须说明关闭哪个文件。“删除”操作。用户用本操作向系统提出删除一个文件的要求,系统执行时把

29、指定文件的名字从目录和索引表中除取,并收回它所占用的存储区域。 14.文件系统中为什么要设置“建立” 、 “打开”和“关闭”操作?答:要把一个文件存放到存储介质上或使用一个已经建立在某存储介质上的文件前,首先应该把文件的属性(文件名、文件类型、可访问性、记录大小等) ,文件的管理信息(口令、建立日期、保存期限等)以及存取方式,通过特定的形式告诉文件系统。 “建立” 。 “打开”和“关闭”操作就是为此目的而设置的。 用“建立”操作向系统提出生成一个新文件的要求。 用“打开”操作向系统申请读一指定文件的权力。 用“关闭”操作表示已经不再要读写某个文件了,向系统归还使用文件的权力。 15.当用户要读

30、一个尚未打开的文件的时候,系统怎么处理? 答:当用户要读一个文件的时候,系统先要验证该用户是否有使用权力,所以任何一个用户如果要读文件前都要执行“打开”操作。系统不允许隐式使用,那么当读一个还没有打开的文件,系统不会执行读操作,而是返回一个“文件未打开”的错误信息。如果系统允许隐式使用,那么系统将会替用户做打开文件的工作。 16.文件系统能允许用户去“关闭”一个不是自己“打开”或“建立”的文件吗? 内容来自“岁月“ 答:不能!一个不是自己“打开域”建立“的文件,是没有权力使用和强行关闭的。4、设备管理1.从使用的角度,外围设备可分为哪两类?用户要求使用外围设备时,系统采用什么方法来分配? 答:

31、从使用角度来分析设备的特点,可以把设备分成两类:一类是一个作业在执行期间独占使用的设备,称为独占设备。这类设备一般采用静态分配的办法在作业执行前就分配出去了,直到作业结束撤离的时候,才将分配出去的设备收回,收回后,才能再分配给其他需要使用该类设备的作业。另外一类是共享设备。这类设备可以由几个作业同时使用。共享设备采用动态分配的办法,这种方法不是在作业执行前分配,而是到作业需要启用设备的时候才分配设备给作业。 2.如果某作业申请外围设备时,指定申请某台外围设备,那么按中图 5-l 设置的分配表怎样实现分配? 答:如果用户指定申请某台外围设备,用户给出设备绝对号,系统为它分配时先查设备分配表,按照

32、设备绝对号找到登记项,查是否未分配且是好的,若是则分配给用户,状态改成已分配,填上占用的作业名,通知用户已经分配成功;若已经分配或者设备坏了,则分配不能被满足,输出信息告诉用户不能分配的原因。 3.什么是输入输出操作? 答:作业执行中总要不断地启动外围设备,把信息读入主存储器进行处理,或者把主存储器中的信息传送到存储介质上。主存储器与外围设备之间的信息传送操作就叫作输入输出操作。 4.解释通道命令、通道程序、通道地址字、通道状态字。答:通道命令:又称为通道命令字(CCW,Channel command Word) ,它是规定设备的某一种动作的指令。 通道程序:是由通道命令编制出来一段程序,用于

33、控制设备的工作。整个通道程序确定了外围设备应执行的操作及操作顺序。 通道地址字:通道程序是存放在主存中的,为了使通道能够正确快速地找到通道程序的起始地址,系统在主存中安排一个固定的单元,用来存放通道程序的起始地址,这个固定的单元称为通道地址字(CAW,Channel address Word) 通道状态字:通道被启动后,控制指定的设备完成规定的操作,同时,通道在执行对外围设备控制的过程中,要记录通道与设备执行- 4 -情况,为此系统在主存中安排另一个固定单元,用于存放这些被记录状态,这个固定单元称为通道状态字(CSW,Channel Status Word) 。5.中央处理器与通道是怎样配合工

34、作的? 答:中央处理器组织好通道程序,并把通道程序的首地址存人通道地址字中。然后,中央处理器执行“启动 IO”指令来启动通道工作。通道收到命令后根据通道和设备的工作情况,或者逐条执行通道程序中的通道命令,来控制设备运行;或者拒绝接受,并且用条件码向中央处理器作出是否接受启动的回答。 中央处理器分析条件码,若启动不成功,则推迟相应的输人输出操作的执行,待适当的时候重新执行“启动 IO”指令。 通道把执行通道程序的情况汇集在通道状态字中,当通道完成输人输出操作,向中央处理器汇报命令执行情况。由于通道和设备执行操作的情况已经在 CSW 中了,所以一般由通道产生 I/O 中断,将中断的通道和设备记载到

35、寄存器中,中央处理器响应中断后,操作系统分析特定寄存器和 CSW 中的内容并做相应地处理。 6.什么叫驱动调度?总结对磁盘的驱动调度过程。 答:在共享设备中,采用某种策略从等待访问该设备的进程中选择一个进程访问设备的工。作称为驱动调度。其目的是降低若干个访问者执行 IO 操作的总时间,提高 I/O 操作的吞吐量。对于磁盘设备来说驱动调度先进行“移臂调度” ,以寻求较优化的寻找时间,定位好柱面,然后再进行旋转调度“,寻求好的延迟时间,定位好扇区。 7.假定磁盘的移动臂现在处于第 8 柱面,有如下 6 个请求者等待访问磁盘,请你列出最省时间的响应次序: 序号 柱面号 磁头号 扇区号 1 9 6 3

36、 2 7 5 6 3 15 20 6 4 9 4 4 5 20 9 5 6 7 15 2 (分析)先进行移臂调度,再进行旋转调度,由于寻找时间更为重要,那么要想时间最短就要有最短的寻找时间,所以移臂调度可以选择最短寻找时间优先算法。根据题目,访问 9 柱面和访问 7 柱面在寻找时间上是等同的,可以任意选择一个,假设选择了第 9 柱面,这里有进程 1 和进程 4 满足要求,再根据旋转调度,进程 1 访问的扇区号小于进程 4,应该西先访问,所以确定进程 1 第一访问,其次是在同一个柱面上的进程 4,之后,根据最短寻找时间优先算法,接下来应该是第 7 柱面的任务 6 或任务 2,同样我们应该选择任务

37、 6,再选择 2,然后是访问 15 柱面的任务 3,最后是访问 20 柱面的任务 5,整个过程移臂移动了 16 个柱面。次序是 l、4、6、2、3、5. 如果第一步先访问 7 柱面,我们也很容易得到访问顺序是6、2、1、4、3、5,整个过程移臂移动了 14 个柱面。 答:最省时间的响应次序是:l、4、6、2、3、5 或6、2、l、4、3、5.8.什么是输人井和输出井? 答:在具有通道技术的系统中,我们利用中央处理器和通道并行工作的能力,用一台机器完成脱机外围设备操作技术中三台机器的工作。操作系统中包含两个程序:“预输入程序”代替输入外围设备,“缓输出程序”代替输出外围设备。系统在磁盘中划分出专

38、门称为“井”的区域,它分为“输入井”和“输出井” ,它们分别代替低速的独占使用的输入设备和输出设备。 9.什么是 SPOOLING 系统?清简述它的实现思想。 答:操作系统中实现联机同时外围设备操作功能的部分称为斯普林(SPOOIJNG)系统。它的实现思想是: 利用中央处理器和通道并行工作的能力,用一台机器完成脱机外围设备操作技术中三台机器的工作。 操作系统中包含两个程序:“预输入程序”代替输入外围设备,“缓输出程序”代替输出外围设备。系统在磁盘中划分出专门称为“井”的区域,它分为“输入井”和“输出井” 。 “预输入程序”把作业流中作业信息传送到“输入井”保存,作业在执行时只要通过“输入井读”

39、程序从上“输入井”获取数据,而不去启动低速的外围设备。作业执行的时候产生的结果也不直接输出到低速外设上,而是先通过“输出井写”程序输出到“输出井” ,由“缓输出程序”将“输出井”中的数据再输出到低速设备上。 “缓输出程序”输出的时候,中央处理器可以处理别的事务了。实现“输入井读”和“输出井写”程序统称为“井管理”程序。显然,斯普林系统由三个部分组成:“预输入”程序、 “井管理”程序和“缓输出”程序。 10.什么叫虚拟设备?实现虚拟设备的主要条件是什么?答:采用 SPOOL 操作后,利用共享设备来模拟独占设备,使每个作业都感到分到了一台高速的输入输出设备,利用这个技术所提供的设备称为虚拟设备。实

40、现虚拟设备时,必须要有硬件的中断装置和通道技术作支撑,使中央处理器与各种外围设备之间可以并行工作。操作系统采用多道程序设计技术,合理分配处理器,实现联机的外围设备同时操作。实现虚拟设备时,操作系统必须设计好“预输入” 、“井管理” 、 “缓输出”程序。 11.总结实现虚拟设备的优点。 答:实现虚拟设备不仅提高了独占实用设备的利用率,而且大大加快了作业的执行速度。 5、并发进程1.什么叫并发进程? 答:在多道程序设计系统中,作为单个作业可以同时执行,而每一个作业又需要有多个进程的协作来完成。因此,系统会同时存在着许多进程,在单处理器的情况下,这些进程轮流的占用处理器,即一个进程的工作没有全部完成

41、之前,另一个进程就开始工作,我们说这些可同时执行的进程具有并发性,并且把可同时执行的进程称为“并发进程” 。 2.临界区是怎样定义?对临界区的管理应符合哪些要求? 答:并发进程中与共享变量有关的程序段称为“临界区” 。对若干个并发进程共享某一变量的相关临界区得管理有三点要求: 一次至多一个进程能够进入临界区,当有进程在临界区执行时,其他想进入临界区执行的进程必须等待。 不能让一个进程无限制的在临界区执行,即任何一个进入临界区的进程必须有限的时间内退出临界区。 不能强迫一个进程无限期等待键入它的临界区,即有进程退出临界区时应让一个等待进入临界区的进程进入它的临界区执行。 3.采用 PV 操作作为

42、同步机构时,假定与某共享变量相关的信号量 S 的值可在-1,l之间,问 S 的初值是哪个值?当S=1,S=0,S=l 时它们各自的物理含义是什么? 答:S 的初值是 1. Sl,表示有一个进程在等待进入临界区执行。 S0,表示已有一个进程在临界区执行,这时若有进程想进入临界区则必须等待。 Sl,表示无进程在临界区执行,若有进程想进入临界区则可以立即进入。 4.A、B 两个火车站之间是单轨连接的,现有许多列车同时到 A站,须经 A 再到达 B 站,列车出 B 站后又可分路行驶(如图 72)为保证行车安全,请你当调度时,你将如何调度列车?请你用 PV 操作为工具设计一个能实现你的调度方案的自动调度

43、系统。 答:当 A、B 两站之间无列车停驶时,可让到达 A 站的一列车进人 A、B 站之间行驶。 当 A 石站之间有列车在行驶时,则到达 A 站者必须在站外等待。 当有列车到达 B 站后,让等在 A 站外的一列车进入。 用一个信号量 S 来控制到达 A 站的列车能否进入单轨道行驶,S的初始值为 l.列车到达 A 站后,先执行 P(S) ,若无列车在 A、B 站之间行驶,则执行 P(S)后立即进人单轨道行驶,到达 B 站后,执行 V(S) ,可释放一个等待进入的列车进入行驶。若 A、B 站之间已有列车在行驶,则执行 P(S)后就等待,直到行驶者到了 B 站执行V(S)后释放一个欲进入者。 5.今

44、有三个进程 R、M、P,它们共享一个缓冲区。R 负责从输入设备读信息,每次读出一个记录并把它存放在缓冲区中:M 在缓冲区加工读入的记录;P 把加工后的记录打印输出。输入的记录经加工输出后,缓冲区中又可存放下一个记录。请用 P、V 操作为同步机构写出他们并发执行时能正确工作的程序。 答:三个进程共用一个缓冲区,他们必须同步工作,可定义三个信号量:S1:表示是否可把读人的记录放到缓冲区,初始值为 1. S2:表示是否可对缓冲区中的记录加工,初始值为 0. S3:表示记录是否加工好,可以输出,初始值也为 0. 三个进程可如下设计: - 5 -begin S1,S2,S3:semaphore; S1:

45、l;S2:S3:0; cobegin process R begin L1:读记录; P(S1) ; 记录存入缓冲区; V(S2) ; goto L1; end; process M begin L2:P(S2) ; 加工记录; V(S3) ; goto L2; end; process P begin L3:P(S3) ; 输出加工后的记录; V(S1) ; goto L3; end; coend; end. 6.现有 4 个进程 R1,R2,W1,W2,它们共享可以存放一个数的缓冲器 B.进程 R1 每次把从键盘上投入的一个数存放到缓冲器 B 中,供进程 W1 打印输出;进程 R2 每次从

46、磁盘上读一个数放到缓冲器 B 中,供进程 W2 打印输出。当一个进程把数据存放到缓冲器后,在该数还没有被打印输出之前不准任何进程再向缓冲器中存数。在缓冲器中还没有存入一个新的数之前不允许任何进程加快从缓冲区中取出打印是怎样才能使这四个进程在并发执行是协调的工作? 答:这四个进程实际上是两个生产者 R1,R2 和两个消费者 W1,W2.各自生成不同的产品中各自的消费对象去消费,他们共享一个的缓冲器。由于缓冲器只能存放一个数,所以,R1 和 R2 在存放数时必须互斥。而 R1 和 W1、R2 和 W2 之间存在同步。为了协调它们的工作可定义三个信号量: S:表示能否把数存人缓冲器 B,初始值为 1

47、. S1:表示 R1 是否已向缓冲器存入从键盘上读入的一个数,初始值为 0. S2:表示 R2 是否已向缓冲器存入从磁盘上读入的一个数,初始值为 0.begin S,S1,S2:semaphore; S:1;S1:S2:0; cobegin process R1 xl :integer begin L1:从键盘读一个数; x1:=读入的数;P(S) ; B:xl; V(S1) ; goto L1; end; process R2 x2:integer; begin L2:从磁盘读一数; x2:=读入的数; P(S) ; B:x2; V(S2) ; goto L2; end; process W

48、1 y:integer; begin L3:P(S1) ; y:=B; V(S) ; 打印 y 中的数; goto L3; end; process W2 z:integer begin L4:P(S2) ; z:=B; V(S) ; 打印 z 中的数; 来源盟“ goto L4; end; coend; end. 7.两个并发进程的程序如下: begin N:integer; N:=3; cobegin process A begin L1:N:N5; goto L1; end; process B begin L2:print(N) ;N:0; goto L2; end; coend; e

49、nd. 若 process A 先执行了三个循环后,process A 和 process B 又并发执行了一个循环,写出可能出现的打印值。请用 PV 操作实现同步,使两并发进程能正确执行。 答:可能的值是 18 或 23.这是因为 process A 执行三个循环后,N18,之后 A 和 B 并发执行,可能先执行 A 中的 N:=N5,再执行 B 中的 print(N) ;这样就会得到 23,也可能先执行 B 中的pint(N) ;这就会得到 18. 可以利用 P、V 操作实现同步: begin N:integer; S:semphore; S:l; N:3; cobegin process A begin L1:P(S) ; N:N5; V(S) ; gotO L1; end; process B begin L2:P(S) ; - 6 -print(N) ; N:0; V(S) ; goto L2; end; co

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 教育教学 > 自考

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报