计算机操作系统习题大全—1

更新时间:2023-03-08 08:53:17 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

计算机操作系统试题

一 填空:

1.操作系统为用户提供三种类型的使用接口,它们是命令方式和系统调用和图形用户界面。 2.主存储器与外围设备之间的数据传送控制方式有程序直接控制、中断驱动方式、DMA方式和通道控制方式。

3.在响应比最高者优先的作业调度算法中,当各个作业等待时间相同时,运行时间短的作业将得到优先调度;当各个作业要求运行的时间相同时,等待时间长的作业得到优先调度。 4.当一个进程独占处理器顺序执行时,具有两个特性:封闭性和可再现性。

5.程序经编译或汇编以后形成目标程序,其指令的顺序都是以零作为参考地址,这些地址称为逻辑地址。

6.文件的逻辑结构分流式文件和记录式文件二种。 7.进程由程度、数据和FCB组成。

8.对信号量S的操作只能通过原语操作进行,对应每一个信号量设置了一个等待队列。 9.操作系统是运行在计算机裸机系统上的最基本的系统软件。

10.虚拟设备是指采用SPOOLING技术,将某个独享设备改进为供多个用户使用的的共享设备。

11.文件系统中,用于文件的描述和控制并与文件一一对应的是文件控制块。

12.段式管理中,以段为单位 ,每段分配一个连续区。由于各段长度不同,所以这些存储区的大小不一,而且同一进程的各段之间不要求连续。 13.逻辑设备表(LUT)的主要功能是实现设备独立性。

14在采用请求分页式存储管理的系统中,地址变换过程可能会因为缺页和越界等原因而产生中断。

16. 段的共享是通过共享段表实现的。

17.文件的物理结构分为顺序文件、索引文件和索引顺序文件。

18.所谓设备控制器,是一块能控制一台或多台外围设备与CPU并行工作的硬件。 19. UNIX的文件系统空闲空间的管理是采用成组链接法。

20分页管理储管理方式能使存储碎片尽可能少,而且使内存利用率较高,管理开销小。20. 计算机操作系统是方便用户、管理和控制计算机软硬件资源的系统软件。

21. 操作系统目前有五大类型:批处理操作系统、分时操作系统、实时操作系统、网络操作系统和分布式操作系统。

22.按文件的逻辑存储结构分,文件分为有结构文件,又称为记录式文件和无结构文件,又称流式文件。

23.主存储器与外围设备之间的信息传送操作称为输入输出操作。

24、在设备管理中,为了克服独占设备速度较慢、降低设备资源利用率的缺点,引入了虚拟分配技术,即用共享设备模拟独占设备。

25、常用的内存管理方法有分区管理、页式管理、段式管理和段页式管理。 26、动态存储分配时,要靠硬件地址变换机构实现重定位。

27、在存储管理中常用虚拟存储器方式来摆脱主存容量的限制。

28、在请求页式管理中,当硬件变换机构发现所需的页不在内存时,产生缺页中断信号,中断处理程序作相应的处理。

29、置换算法是在内存中没有空闲页面时被调用的,它的目的是选出一个被淘汰的页面。如果内存中有足够的空闲页面存放所调入的页,则不必使用置换算法。

30、在段页式存储管理系统中,面向用户的地址空间是段式划分,面向物理实现的地址空间是页式划分。

31、文件的存储器是分成大小相等的物理块,并以它为单位交换信息。

32、虚拟设备是通过SPOOLing技术把独占设备变成能为若干用户共享的设备。 33、缓冲区的设置可分为单缓冲、双缓冲、多缓冲和缓冲池。

34、在多道程序环境中,用户程序的相对地址与装入内存后的实际物理地址不同,把相对地址转换为物理地址,这是操作系统的地址重地位功能。

35. 在操作系统中,进程是一个资源分配的基本单位,也是一个独立运行和调度 的基本单位。

36. 在信号量机制中,信号量S > 0时的值表示可用资源数目;若S < 0,则表示等待该资源的进程数,此时进程应阻塞。

37. 操作系统提供给编程人员的唯一接口是系统调用。

38. 设备从资源分配角度可分为独占设备,共享设备和虚拟设备。 39. 设备管理的主要任务是控制设备和CPU之间进行I/O操作。

40. 常用的文件存取方法有顺序存取法,随机存取法和按键存取法。 41. 在页面置换算法中最有效的一种称为LRU算法。

42. 地址变换机构的基本任务是将虚地址空间中的逻辑地址变换为内存中的物理地址。 43.在 UNIX 系统中采用的页面置换算法是页面缓冲算法。 44.现代操作系统的两个重要特征是并发和共享。

45.为文件 file.c 的同组用户增加修改权限的 UNIX 命令为chmod g+w file.c。 46.显示目录 mydir 中文件的详细信息的 UNIX 命令为Ls –l mydir。

47. 操作系统的基本类型有批处理操作系统,分时操作系统和实时操作系统三种。 48.采用对换方式在将进程换出时,应首先选择处于阻塞且优先权低的进程换出内存。 49. 能方便实现信息共享的存储管理办法有段式和段页式。

50.选择距当前磁头最近,且方向一致的磁盘调度算法循环扫描算法。 51.在页面置换算法中可实现的最有效的一种称为LRU。

52.UNIX 系统向用户提供的用于创建新进程的系统调用是fork()。 53.UNIX 系统中用于建立无名管道的系统调用是pipe()。

54.在成组链结法中,将第一组的空闲块号和该组的空闲块数目 记入到 内存的工作栈中,作为当前可供分配的空闲盘块号。 54.现代操作系统的两个重要特征是并发和共享。

55.为文件 file 增加执行权限的 UNIX 命令为chmod +x file。

56.显示目录 mydir 中文件的详细信息的 UNIX 命令为ls –l mydir。

57.在动态分区式内存分配算法中,倾向于优先使用低地址部分空闲区的算法是首次适应算法 ;能使内存空间中空闲区分布较均匀的算法是循环首次适应算法。

58.在分时系统中,当用户数目为100时,为保证响应时间不超过2秒,此时时间片最大应为20ms。分时系统采用的调度方法是时间片轮转调度算法。

59. 常用的进程通信方式有管道、共享存储区、消息机制和邮箱机制。 60. 正在执行的进程等待I/O操作,其状态将由执行状态变为阻塞状态。

61.页是信息的物理单位,进行分页是出于系统管理 的需要;段是信息的逻辑单位,分段是出于用户 的需要。

62.存储管理中的快表是指联想存储器。

63.分段保护中的越界检查是通过段表寄存器 中存放的段表长度 和段表中的段长 等数据项。

64.在请求调页系统中的调页策略有预调入策略,它是以预测为基础的;另一种是请求调入,由于较易实现,故目前使用较多。

65.若干个事件在同一时刻发生称为并行,若干个事件在同一时间间隔内发生称为并发。 66.使用缓冲区能有效地缓和I/O设备和CPU之间速度不匹配的矛盾。

67.用户编写的程序与实际使用的物理设备无关,而由操作系统负责地址的重定位,我们称之为设备无关性(设备独立性)。

68.用户是通过命令方式或者程序接口向计算机发出请求的。

69.在操作系统中的异步性主要是指在系统中进程推进的顺序是走走停停。 70.进程间通信的方式有管道、共享存储区和消息传递方式。

71.计算机操作系统是方便用户、管理和控制计算机系统资源的系统软件。

72. 在多道程序环境中,用户程序的相对地址与装入内存后的实际物理地址不同,把相对地址转换为物理地址,这是操作系统的地址重地位功能。

73.操作系的动态分区管理内存分配算法有首次适应算法、循环首次适应算法、和最佳适应算法。

74.动态存储分配时,要靠硬件地址变换机构实现重定位。

75.在存储管理中常用虚拟存储器方式来摆脱主存容量的限制。

76.在请求页式管理中,当硬件变换机构发现所需的页不在内存时,产生缺页中断信号,中断处理程序作相应的处理。

77.置换算法是在内存中没有空闲页面时被调用的,它的目的是选出一个被

淘汰的页面。如果内存中有足够的空闲页面存放所调入的页,则不必使用置换算法。 78.在段页式存储管理系统中,面向用户的地址空间是段式划分,面向物理实现的地址空间是页式划分。

79.文件的存储器是分成大小相等的物理块,并以它为单位交换信息。

80.通道是一个独立于CPU的专管I/O的处理机,它控制 设备与内存之间的信息交换。 81.缓冲区的设置可分为单缓冲 、双缓冲、循环缓冲和缓冲池。 其中关于缓冲池的操作有提取输入、提取输出、收容输入和收容输出。

82.操作系统为用户编程所提供的接口是系统调用。

83.文件的逻辑结构分为流式文件、顺序文件、索引文件和索引顺序文件。 84.进程由程序、数据和PCB组成。

85.一张1.44M的软盘,其FAT表占的空间为2.16K。

86.缓冲池包括空白缓冲队列、装满输入数据的缓冲队列和装满输出数据的缓冲队列三种队列。

87.在生产者—消费者问题中,消费者进程的两个wait原语的正确顺序为 Wait(full);和wait(mutex);。

88.段式管理中,提供二维维的地址结构。以段为单位进行空间分配,每段分配一个连续内存区。

89.逻辑设备表(LUT)的主要功能是实现逻辑设备到物理设备的映射。

90.在一个请求分页系统中,假如系统分配给一个作业的物理块数为3,且此作业的页面走向为2,3,2,1,5,2,4,5,3,2,5,2。OTP算法的页面置换次数为3 ,LRU算法的页面置换次数为4,CLOCK算法的页面置换次数为5 。

91.设单CPU环境下,有三道作业,它们的提交时间及运行时间如下表:

作业 J1 J2 J3 提交时间(单位:基本时间单位) 0 2 3 运行时间(单位:基本时间单位) 7 4 2 若采用短作业优先调度策略,作业单道串行运行时的调度次序为J1,J3,J2,平均周转时间=8。 92.进程间通信的类型有:共享存储区、管道机制、消息队列和信箱机制。

93.在响应比最高者优先的作业调度算法中,当各个作业等待时间相同时,运行时间短的作业将得到优先调度;当各个作业要求运行的时间相同时,等待时间长的作业得到优先调度。

94.若干个等待访问磁盘者依次要访问的磁道为20,44,40,4,80,12,76,移动臂当前位于40号柱面,则先来先服务算法的平均寻道长度为292; 最短寻道时间优先算法的平均寻道长度为120;扫描算法(当前磁头移动的方向为磁道递增)的平均寻道长度为116。 95.系统为一个有6页的进程分配4个物理块,其页表如下所示(时间单位:滴答),页的大小为1K,请计算逻辑地址为0x17C8的物理地址。

页号 块号 装入时间 上次引用时间 R(读) M(修改) 0 7 126 279 0 0 1 4 230 260 1 0 2 2 120 272 1 1

3 9 160 280 1 1

按CLOCK算法为0x03C8;按FIFO算法为0x0BC8;按LRU算法为0x07C8。

96.有三个同时到达的作业J1,J2和J3,它们的执行时间分别是T1,T2和T3,且T1

97.位示图是利用二进制的一个位来表示磁盘中一个盘块的使用情况。

98.在SPOOLing系统中,进程执行输出的过程是:将进程产生的数据送到磁盘的输出井,输出程序再将数据提出,通过内存的输出缓冲区送往输出设备。

99、在请求分页系统中,假如一个作业的页面走向为1,2,3,4,1,2,5,1,2,3,4,5,当分配给该作业的物理块数M为3,采用先进先出页面置换算法时,访问过程中发生的缺页次数为:_________;采用最佳页面置换算法时,缺页次数为:_________;采用LRU页面置换算法时,缺页次数为:_________。(假定开始时,物理块中为空)

100.页是信息的 单位,进行分页是出于 的需要。段是信息的 单位,分段是出于用户的需要。

101.进程和线程都是系统进行 的基本单位,它们最大的区别在于 。

102.将数据从设备送入缓冲池称为: ;将数据从缓冲池送入设备称为: ;

103.用户程序必须通过 方能取得操作系统的服务。

104.如果信号量的当前值为3,表示可用的资源数目为3,如果信号量的当前值为-3,则表示 。

105.I/O控制的方式有程序直接控制方式、中断控制方式、DMA方式和通道方式。

106. 在首次适应算法中,要求空闲分区按地址递增顺序链接成空闲分区链;在最佳适应算

法中是按空闲分区从小到大顺序形成空闲分区链。

107. 文件的物理结构有顺序文件、链接文件文件和索引文件三种。 108. 现代操作系统的特征是并发、共享、虚拟和异步性。

109.产生死锁的四个必要条件是互斥条件和请求和保持,不剥夺条件和环路条件。 110.操作系统的五大功能是CPU管理、存储管理、设备管理、文件系统和用户接口。 111.在操作系统中进程和线程的区别是:拥有资源。 112.文件系统的基本任务是实现按名存取。

113.静态链接是在程序编译时进行,动态链接是在执行时进行。 114.文件的保护是通过存取控制表来实现的。

115.文件共享的方式有基于索引结点的方式和利用符号链。

116.UNIX系统对空闲空间的管理方式采用__成组链接法__。

117. 能方便实现信息共享的存储管理方法有 和 。 118.操作系统为用户提供两种类型的使用接口,它们是命令接口和 。 119.一次只允许一个进程访问的资源叫临界资源。

120.在操作系统中进程是一个拥有资源的单位,也是一个调度和执行的基本单位。

121.如果信号量的当前值为4,则表示 ,如果信号量的当前值为-4,则表示 。

122.在批处理兼分时的系统中,往往由分时系统控制的作业称为前台作业,而由批处理系统控制的作业称为后台作业。 123.操作系统为用户提供两种类型的使用接口,它们是操作员(或用户)接口和程序员(或程序)接口。

124.操作系统中,进程可以分为系统进程和用户进程两类。

125.用户调用建立和打开(可交换次序)文件操作来申请对文件的使用权。 126.主存储器与外围设备之间的信息传送操作称为输入输出操作。

127.当一个进程独占处理器顺序执行时,具有两个特性:封闭性和可再现性。

128.UNIX的shell有两层含义,一是指由shell命令组成的Shell命令语言;二是指该命令的解释程序。

129.操作系统是运行在计算机基本硬件(或:硬件)系统上的最基本的系统软件。 130.程序经编译或汇编以后形成目标程序,其指令的顺序都是以零作为参考地址,这些地址称为相对地址(或:逻辑地址、虚拟地址)。

131.文件的逻辑结构分字符流式文件和记录式文件二种。 132.一个作业从进入系统到运行结束,一般要经历“后备”、“执行”和“完成”三个 不同状态。

133.Windows NT操作系统结构由两个部分构成:一是保护子系统,另一是执行体。 134.目前硬盘中最常使用的两种接口是IDE接口和SCSI接口。 135.用户要求计算机系统所做的工作的集合称为作业。 136.进程由程度、数据集合、进程控制块及相关表格组成。

137.对信号量S的操作只能通过P、V操作进行,对应每一个信号量设置了一个等待队列。 138.在存贮器可变式分区管理中,对内存状态的记录和分配管理通常可采用表格法、位图法和链表法。

139.虚拟设备是指采用某种I/O技术,将某个独占设备改进为多个用户可共享 的设备。

140.文件系统中,用于文件的描述和控制并与文件一一对应的是文件控制块(或:FCB)。 141.所谓通道,是一块能控制一台或多台外围设备与CPU并行工作的硬件。

142.用户是通过命令接口或者程序接口向计算机发出请求的。

143.在所有主机操作系统都是UNIX系统的TCP/IP网络中,进行远程注册的命令是 rlogin。

144.在TCP/IP网络中,UNIX操作系统下发送电子邮件的命令是Mail。

145.操作系统的主要设计目标是方便用户使用或界面友好和系统能高效工作或资源利用率高。

146.当一个进程完成了特定的任务后,系统收回这个进程所占的工作区或主存空间或资源和取消该进程的进程控制块(PCB)就撤消了该进程。

147.单个分区存储管理仅适用于个人计算机(单用户)和专用计算机(单道,单作业)系统。 148.每个索引文件都必须有一张索引表,其中每个登记项用来指出一个逻辑记录的存放位置 或指针 或首地址。

149.实现SPOOL系统时必须在磁盘上辟出称为输入井和输出井 (可交换次序)的专门区域,以存放作业信息和作业执行结果。

150.一个理想的作业调度算法应该是既能提高系统效率或吞吐量高 及时得到计算结果又能使进入系统的作业周转时间短等_。

二、单选题

1.( D )不是基本的操作系统。

A、批处理操作系统 B、分时操作系统

C、实时操作系统 D、网络操作系统 2.( C )不是分时系统的基本特征: A、同时性 B、独立性

C、实时性 D、交互性

3.进程所请求的一次打印输出结束后,将使进程状态从( D ) A、运行态变为就绪态 B、运行态变为等待态

C、就绪态变为运行态 D、等待态变为就绪态

4.采用动态重定位方式装入的作业,在执行中允许( C )将其移动。 A、用户有条件地 B、用户无条件地

C、操作系统有条件地 D、操作系统无条件地

5.分页式存储管理中,地址转换工作是由( )完成的。 A、硬件 B、地址转换程序

C、用户程序 D、装入程序

6.如果允许不同用户的文件可以具有相同的文件名,通常采用( )来保证按名存取的安全。

A、重名翻译机构 B、建立索引表

C、建立指针 D、多级目录结构

7.对记录式文件,操作系统为用户存取文件信息的最小单位是( )。

A、字符 B、数据项

C、记录 D、文件

8.为了提高设备分配的灵活性,用户申请设备时应指定( )号。 A、设备类相对 B、设备类绝对

C、相对 D、绝对

9.一作业进入内存后,则所属该作业的进程初始时处于( C )状态。 A、运行 B、等待

C、就绪 D、收容

10.共享变量是指( D )访问的变量。

A、只能被系统进程 B、只能被多个进程互斥

C、只能被用户进程 D、可被多个进程

11.临界区是指并发进程中访问共享变量的( D )段。 A、管理信息 B、信息存储

C、数据 D、程序

12.若系统中有五台绘图仪,有多个进程均需要使用两台,规定每个进程一次仅允许申请一台,则至多允许( D )个进程参于竞争,而不会发生死锁。 A、5 B、2

C、3 D、4

13.产生系统死锁的原因可能是由于( C )。 A、进程释放资源 B、一个进程进入死循环

C、多个进程竞争,资源出现了循环等待 D、多个进程竞争共享型设备

14.地址重定位的结果是得到(D ) A. 源程序 B. 编译程序 C. 目标程序 D. 执行程序

15.为了对文件系统中的文件进行安全管理,任何一个用户在进入系统时都必须进行注册, 这一级管理是____安全管理。( ) A. 系统级 B. 用户级 C. 目录级 D. 文件级

16.运行时间最短的作业被优先调度,这种企业调度算法是( ) A. 优先级调度 B. 响应比高者优先

C. 短作业优先 D. 先来先服务

17.产生死锁的主要原因是进程运行推进的顺序不合适(D ) A. 系统资源不足和系统中的进程太多 B. 资源的独占性和系统中的进程太多 C. 进程调度不当和资源的独占性 D. 资源分配不当和系统资源不足

18. 实时操作系统追求的目标是( C )。

A.高吞吐率 B.充分利用内存 C. 快速响应 D. 减少系统开销

19. 操作系统是为了提高计算机的[1]和方便用户使用计算机而配置的基本软件。它负责管理计算机系统中的[2],其中包括[3],[4],外部设备和系统中的数据。操作系统中的[3]管理部分负责对进程进行管理。操作系统对系统中的数据进行管理的部分通常叫做[5]。 供选择的答案:

[1] A、速度 B、利用率 C、灵活性 D、兼容性 [2] A、程序 B、功能 C、资源 D、进程

[3] F[4]A A、主存储器 B、虚拟存储器 C、运算器 D、控制器 E、微处理器 F、处理机

[5] A、数据库系统 B、文件系统 C、检索系统 D、数据库 E、数据存储系统 F、数据结构 G、数据库管理系统

20. 批处理系统的主要缺点是( B )。 A.CPU的利用率不高 B.失去了交互性 C.不具备并行性 D.以上都不是

21. 如果文件系统中有两个文件重名,不应采用( )。 A.一级目录结构 B.树型目录结构 C.二级目录结构 D.A和C

22. 树型目录结构的第一级称为目录树的( )。 A.分支节点 B.根节点 C.叶节点 D.终节点

23、 虚拟内存的容量只受( D )的限制。 A.物理内存的大小 B.磁盘空间的大小 C.数据存放的实际地址 D.计算机地址位数

24、分段管理提供( )维的地址结构。 A.1 B.2 C.3 D.4 25、( )实现了段式、页式两种存储方式的优势互补。 A.请求分页管理 B.可变式分区管理

C.段式管理 D.段页式管理

26、以下存储管理技术中,支持虚拟存储器的技术是( )。

A.动态分区法 B.可重定位分区法 C.请求分页技术 D.对换技术

27、下列( )存储管理方式能使存储碎片尽可能少,而且使内存利用率较高。 A.固定分区 B.可变分区 C.分页管理 D.段页式管理

28、操作系统中采用缓冲技术的目的是为了增强系统( )的能力。 A.串行操作 B. 控制操作 C.重执操作 D.并行操作

29. B 是指从作业进入系统到作业完成所经过的时间间隔; 是从作业进入后备队列起,到被调度程序选中时的时间间隔。 A:响应时间; B:周转时间; C:运行时间; D:等待时间; F:触发时间。

30. 产生死锁的四个必要条件是互斥条件和 C ,不剥夺条件和 B 。 (1) A:请求和阻塞条件; B:请求和释放条件; C:请求和保持条件; D:释放和阻塞条件; E:释放和请求条件。

(2) A:线性增长条件; B:环路条件; C:有序请求条件; D:无序请求条件。

31. 在 A 中,要求空闲分区按空闲区地址递增顺序链接成空闲分区链;在 __C__中是按空闲区大小递增顺序形成空闲分区链;在 B 中,是按空闲区大小递减的顺序形成空闲分区链。 A:首次适应算法; B:最坏适应算法; C:最佳适应算法; D:循环首次适应算法。

32.在 UNIX 系统中获取帮助信息的命令为 。 A:help B:man C:cat

33.CPU的调度分为高级、中级和低级三种,其中低级调度是指 C 调度。 A:作业 B:交换 C:进程

34.在请求调页中可采用多种置换算法,其中LRU是 置换算法。 A:最佳 B:最近最久未用 C:最近未用 D:最少使用

35.对打印机进行I/O控制时,通常采用 方式;对硬盘的I/O控制采用 C 方式。

A:程序直接控制 B:中断驱动 C:DMA D:通道

36.在 UNIX 系统中采用的页面置换算法是 。 A:CLOCK B:OPT C:NRU D:LRU

37.在磁盘调度算法中,选择与当前磁头移动方向一致、磁头单向移动且距离最近的进程的算法为 。 A:FIFO B:SCAN C:CSCAN D:FSCAN

38.在 UNIX 系统中的 mv 命令表示 。 A:删除文件 B:移动文件或对文件换名 C:复制文件

39. 操作系统是计算机系统的核心软件。按功能特征的不同,可把操作系统分为[1]、[2]、[3]、网络操作系统和分布式操作系统基本类型。其中[1]的主要目标是提高系统的吞吐率和效率,而[2]是一旦有处理请求和要求处理的数据时,CPU就应该立即处理该数据并将结果及时送回,例如[4]等。 供选择的答案: [1]B[2]E[3]C

A、 单用户系统 B、批处理系统 C、分时系统 D、微机操作系统 E、实时系统 [4] D

A、计算机激光照排系统 B、办公自动化系统 C、计算机辅助设计系统 D、航空订票系统

40. 现代操作系统的两个基本特征是( C ) 和资源共享。 A.多道程序设计 B. 中断处理

C.程序的并发执行 D. 实现分时与实时处理

41. 以下( C )项功能不是操作系统具备的主要功能。

A.内存管理 B.中断处理 C.文档编辑 D.CPU调度

42. 批处理系统的主要缺点是( B )。 A.CPU的利用率不高 B.失去了交互性 C.不具备并行性 D.以上都不是

43. 引入多道程序的目的在于(A )。 A. 充分利用CPU,减少CPU等待时间 B. 提高实时响应速度

C. 有利于代码共享,减少主、辅存信息交换量 充分利用存储器

44. 在分时系统中,时间片一定,( B ),响应时间越长。 A.内存越多 B.用户数越多 C.后备队列 D.用户数越少

45. 系统调用是由操作系统提供的内部调用,它( B )。 A.直接通过键盘交互方式使用 B. 只能通过用户程序间接使用 C.是命令接口中的命令使用 D. 与系统的命令一样

46. 为了对紧急进程或重要进程进行调度,调度算法应采用( B )。 A.先进先出调度算法 B. 优先数法

C.最短作业优先调度 D. 定时轮转法

47、若一个系统内存有64MB,处理器是32位地址,则它的虚拟地址空间为(B A.2GB B.4GB C.100KB D.64MB

48.外存(如磁盘)上存放的程序和数据( )。 A.可由CPU B.必须在CPU访问之前移入内存 C.是必须由文件系统管理的 D.必须由进程调度程序管理

49、一个40G的硬盘,块的大小为1K,其FAT要占( )空间。 A.100M B.120M C.140M D.160M

50. 文件系统在创建一个文件时,为它建立一个( )。 A.文件目录 B.目录文件 C.逻辑结构 D.逻辑空间

51. 文件的存储方法依赖于( )。

A.文件的物理结构 B.存放文件的存储设备的特性 C.A和B D.文件的逻辑

52. 使用绝对路径名访问文件是从( )开始按目录结构访问某个文件。 A.当前目录 B.用户主目录 C.根目录 D.父目录

53. 目录文件所存放的信息是( )。 A.某一文件存放的数据信息 B. 某一文件的文件目录

C.该目录中所有数据文件目录

D. 该目录中所有子目录文件和数据文件的目录

54. 由字符序列组成,文件内的信息不再划分结构,这是指( )。 A.流式文件 B. 记录式文件

)字节。

C.顺序文件 D.有序文件

55. 数据库文件的逻辑结构形式是( )。 A.字符流式文件 B. 档案文件 C.记录式文件 D.只读文件

56. 逻辑文件是( )的文件组织形式。 A.在外部设备上 B.从用户观点看 C.虚拟存储 D.目录

57、 存储管理的目的是( B )。

A.方便用户 B.提高内存利用率

C.方便用户和提高内存利用率 D.增加内存实际容量

58、存储分配解决多道作业地址空间的划分问题。为了实现静态和动态存储分配,需采用地址重定位,即把[1][2],静态重定位由[3]实现,动态重定位由[4]实现。 供选择的答案:

[1]C、[2] D A 页面地址 B 段地址 C 逻辑地址 D 物理地址 E 外存地址 F 设备地址

[3]D、[4] A A 硬件地址变换机构 B 执行程序 C 汇编程序 D 连接装入程序 E 调试程序 F 编译程序 G 解释程序

(说明:汇编程序、解释程序、编译程序的作用是将源程序变为机器语言指令;调试程序是进行程序调试的一种工具。执行程序是可被计算机直接执行的机器代码程序。)

59、在请求页式存储管理中,若所需页面不在内存中,则会引起( )。 A.输入输出中断 B. 时钟中断 C.越界中断 D. 缺页中断;

60、若处理器有32位地址,则它的虚拟地址空间为( )字节。 A.2GB B.4GB C.100KB D.640KB 61、虚拟存储技术是( A )。

A.补充内存物理空间的技术 B.补充相对地址空间的技术 C.扩充外存空间的技术 D.扩充输入输出缓冲区的技术

62、 外存(如磁盘)上存放的程序和数据( )。 A.可由CPU B.必须在CPU访问之前移入内存

C.是必须由文件系统管理的 D.必须由进程调度程序管理

63、段页式存储管理汲取了页式管理和段式管理的长处,其实现原理结合了页式和段式管理的基本思想,即( )。

A、用分段方法来分配和管理物理存储空间,用分页方法来管理用户地址空间。 B、用分段方法来分配和管理用户地址空间,用分页方法来管理物理存储空间。 C、用分段方法来分配和管理主存空间,用分页方法来管理辅存空间。 D、用分段方法来分配和管理辅存空间,用分页方法来管理主存空间。

64、( C )存储管理支持多道程序设计,算法简单,但存储碎片多。 A.段式 B.页式 C.固定分区 D.段页式 65、( A )存储管理方式提供一维地址结构。 A.固定分区 B.分段

C.分页 D.分段和段页式

66、在请求分页系统中,LRU算法是指( )。 A、最早进入内存的页先淘汰

B、近期最长时间以来没被访问的页先淘汰 C、近期被访问次数最少的页先淘汰 D、以后再也不用的也先淘汰

67、请求分页存储管理中,若把页面尺寸增加一倍,在程序顺序执行时,则一般缺页中断次数会( )。

A.增加 B.减少 C.不变 D.可能增加也可能减少

68、碎片现象的存在使得( A )。

A.内存空间利用率降低 B. 内存空间利用率提高 C.内存空间利用率得以改善 D. 内存空间利用率不影响

69、当内存碎片容量大于某一作业所申请的内存容量时,( C )。 A、可以为这一作业分配内存 B、不可以为这一作业分配内存

C、拼接后,可以为这一作业分配内存 D、一定能够为这一作业分配内存

70、设备管理的目的是为了合理地利用外部设备和[1],设备按照信息的传递特性可分为[2]和[3]。设备管理的主要程序之一是设备分配程序,当进程请求在内存和外设之间传送信息时,设备分配程序分配设备的过程通常是[4]。 供选择的答案:

[1]: A、提高CPU利用率 B、提供接口 C、方便用户 D、实现虚拟设备 [2]: A、块设备 B、存储设备 C、独立设备 D、虚拟设备 [3]: A、共享设备 B、输入输出设备 C、系统设备 D、字符设备 [4]: A、先分配设备,再分配控制器,最后分配通道 B、先分配控制器,再分配设备,最后分配通道 C、先分配通道,再分配设备,最后分配控制器 D、先分配通道,再分配控制器,最后分配设备

71、通道是一种( )。

A.I/O端口 B.数据通道 C.I/O专用处理机 D.软件工具

72、缓冲技术用于( )。

A、提高主机和设备交换信息的速度 B、提供主、辅存接口 C、提高设备利用率 D、扩充相对地址空间

73、采用SPOOLing技术的目的是( )。 A.提高独占设备的利用率 B.提高主机效率

C.减轻用户编程负担 D.提高程序的运行速度

74、采用假脱机技术的目的是[1]。假脱机技术是将输入输出控制工作大部分交由相应的通道来承担,利用磁盘作为后援存储器,实现了外设同时联机操作,使得[2]成为[3],减少了对频繁使用外设的压力,但假脱机技术一般不适用于[4]。 供选择的答案:

[1]: A、提高外设和主机的利用率 B、提高内存和主机效率 C、减轻用户编程负担 D、提高程序的运行速度

[2]C[3]D: A、块设备 B、字符设备 C、独占设备 D、虚拟设备 [4]: A、分时系统 B、多道批处理系统 C、网络操作系统 D、多处理机系统

75、在操作系统中,用户在使用I/O设备时,通常采用( )。 A.物理设备名 B.逻辑设备名 C.虚拟设备名 D.设备牌号

76. 操作系统有多种类型:允许多个用户以交互方式使用计算机的操作系统,称为 B ;

允许多用户将若干个作业提交给计算机系统集中处理的操作系统,称为 A ;在 的控制下,计算机系统能及时处理由过程控制反馈的数据,并作出响应;在IBM-PC机上的操作系统称为 C 。

A:批处理操作系统; B:分时操作系统; C:实时操作系统;D:微机操作系统;E:多处理机操作系统; F:分布式操作系统

77. 我们如果为每一个作业只建立一个进程,则为了照顾短作业用户,应采用 B ;为照顾紧急作业用户,应采用 E ,为能实现人机交互作用应采用 C ,而能使短作业,长作业及交互作业用户都比较满意时,应采用 D 。

A: FCFS调度算法;B:短作业优先调度算法;C:时间片轮转法;D:多级反馈队列调度算法;E:基于优先权的剥夺调度算法;F:响应比优先算法。

78. 产生死锁的基本原因是 B 和 A 。

(1) A:资源分配不当;B:系统资源不足;C:作业调度不当;D:资源的独占性。

(2) A:进程推进顺序非法;B:进程调度不当;C:系统中进程太多;D:CPU运行太快。

79. 通道是一种特殊的 (1) ,具有 (2) 能力。

(1) A:I /O 设备;B:设备控制器;C:处理机;D:I / O控制器。

(2) A:执行 I / O指令集;B:执行CPU 指令集;C:传输I / O 命令;D:运行I / O进程。

80. 静态重定位是在作业的 B 中进行的,动态重定位是在作业的 D 中进行的。 A:编译过程;B:装入过程;C:修改过程;D:执行过程。

81. 在存取文件时,如果是利用给定的记录键值对链表或线性表进行检索,以找到指定记录的物理地址,则上述文件分别称为 B 或 C ;如果可根据给定的记录健值直接获得指定记录物理地址,则把这种文件称为 D 。

A:顺序文件;B:串联文件;C:索引文件;D:直接文件。

82. 文件系统最基本的目标是 A ,它主要是通过目录管理功能实现的,文件系统所追求的最重要目标是 D 。

A:按名存取;B:文件共享;C:文件保护;D:提高对文件的存取速度;E:提高I / O速度;F:提高存储空间的利用率。

83. 在设备管理中为了提高I/O速度和设备利用率,是通过 功能实现的。 A:设备分配 B:缓冲管理 C:设备独立性 D:虚拟设备

84.在UNIX 系统中对空闲磁盘空间管理的方法是 。 A:位示图 B:空闲空间链 C:成组链接法 D:空闲表

85.实现虚拟存储器最关键的技术是 B 。

A:内存分配 B:置换算法 C:请求调页(段) D:对换空间管理

86 .我们把在一段时间内,只允许一个进程访问的资源,称为临界资源,因此,我们可以得出下列论述,正确的论述为 D 。 A:对临界资源是不能实现资源共享的。

B:只要能使程序并发执行,这些并发执行的程序便可对临界资源实现共享。 C:为临界资源配上相应的设备控制块后,便能被共享。 D:对临界资源,应采取互斥访问方式,来实现共享。

87. 对于记录型信号量,在执行一次P操作时,信号量的值应当 C ;在执行V操作时,信号量的值应当 B 。

A:不变; B:加1; C:减1; D:加指定数值; E:减指定数值。

88.在动态分区式内存管理中,倾向于优先使用低地址部分空闲区的算法是 C ;能使内存空间中空闲区分布较均匀的算法是 D ;每次分配时把既能满足要求,又是最小的空闲区分配给进程的算法是 A 。 A:最佳适应算法; B:最坏适应算法; C:首次适应算法; D:循环适应算法;

89. 在回收内存时可能出现下述四种情况:

(1) 释放区与插入点前一分区F1相邻接,此时应 C ;

(2) 释放区与插入点的后一分区F2相邻接,此时应 D ; (3) 释放区不与F1和F2相邻接,此时应 A 。 A:为回收区建立一分区表项,填上分区的大小和始址;

B:以F1分区的表项作为新表项且不做任何改变;

C:以F1分区的表项作为新表项,修改新表项的大小;

D:以F2分区的表项作为新表项,同时修改新表项的大小和始址。 E:以F2分区的表项作为新表项,同时修改新表项的始址。

90. 产生死锁的四个必要条件是互斥条件和 (1) ,不剥夺条件和 (2) 。

(1) A:请求和阻塞条件; B:请求和释放条件;C:请求和保持条件;D:释放和阻塞条件;E:释放和请求条件。

(2) A:线性增长条件;B:环路条件;C:有序请求条件;D:无序请求条件。

91. 按逻辑结构可把文件分为 E 和 F 两类。

A:读,写文件;B:只读文件;C:索引文件;D:链式文件;E:记录式文件;F:流式文件。

92.利用基本文件目录法实现文件共享,文件系统必须设置一个(1) ,每个用户都应具有一个 (2) 。

(1) A:系统文件目录 B:主目录 C:基本文件目录 D:根目录

(2) A:用户文件目录 B:符号目录 C:基本文件目录 D:当前目录

93.在树型目录结构中,对某文件的首次访问通常都采用 C ,文件被打开后,对文件的访问采用 D 。 A:文件符号名; B:从根目录开始的路径名; C:从当前目录开始的路径名; D:用户文件描述符

94. 在UNIX系统中,复制文件采用的命令为 。 A:cp B:mv C:rm D:copy

95.假定磁盘的大小为1K,对于1.2MB的软盘,FAT需占用 (1) 的存储空间;对于100MB的硬盘,FAT需占用 (2) 的存储空间。 (1)A:1KB B:1.5KB C:1.8KB D:2.4KB (2)A:100KB B:150KB C:200KB D:250KB

96. 关于操作系统的叙述 是不正确的。 A.“管理资源的程序”

B.“管理用户程序执行的程序” C.“能使系统资源提高效率的程序” D.“能方便用户编程的程序”

97.对于一个文件的访问,常由 共同限制。

A. 用户访问权限和文件属性 B.用户访问权限和文件优先级 C. 优先级和文件属性 D. 文件属性和口令

98.一作业8:00到达系统,估计运行时间为1小时,若10:00开始执行该作业,其响应比是 C 。

A.2 B.1 C.3 D.0.5

99.在动态分区分配方案中,某一作业完成后,系统收回其主存空间,并与相邻空闲区合并,为此需修改空闲区表,造成空闲区数减1的情况是 D 。 A.无上邻空闲区,也无下邻空闲区 B.有上邻空闲区,但无下邻空闲区 C.有下邻空闲区,但无上邻空闲区 D.有上邻空闲区,也有下邻空闲区

100.如果进程需要读取磁盘上的多个连续的数据块, 数据传送方式的效率最高。 A.程序直接控制方式 B.中断控制方式 C.DMA方式 D.通道方式

101.使用文件之前必须先 文件。 A. 命名 B. 打开 C. 建立 D. 备份

102.若干个等待访问磁盘者依次要访问的磁道为20,44,40,4,80,12,76,当前磁头

位于40号柱面,若用最短寻道时间优先磁盘调度算法,则访问序列为: B ;若用扫描算法(当前磁头移动的方向为磁道递增),则访问序列为: C 。

A. 20,44,40,4,80,12,76 B. 40,44,20,12,4,76,80 C. 40,44,76,80,20,12,4 D. 40,44,76,80,4,12,20

103.如果一个磁盘的容量为40G,盘块的大小为4K,那么该磁盘的FAT大小为: 。 A. 20M B. 25M C. 30M D. 35M

104. 在循环首次适应算法中,要求空闲分区按 A 顺序链接成空闲分区链;在最佳适应算法中是按 C 顺序形成空闲分区链。 A.空闲区首址递增; B.空闲区首址递减;

C.空闲区大小递增; D.空闲区大小递减。

三、判断题

(×)1.并发性是指若干事件在同一时刻发生。

(√)2.虚存容量的扩大是以牺牲CPU工作时间以及内、外存交换时间为代价的。 (×)3.用户为每个自己的进程创建PCB,并控制进程的执行过程。 (√)4.树型目录结构能够解决文件重名问题。

(√)5.原语是一种不可分割的操作。

(√)6.通道一旦被启动就能独立于CPU运行,这样可使CPU和通道并行操作。 (√)7.页式的地址是一维的,段式的地址是二维的 (×)8.位示图方法可用于磁盘的调度管理。

(×)9.虚拟设备是指把一个物理设备变换成多个对应的逻辑设备,它通过逻辑设备表来实现的。

(×)10.页式管理易于实现不同进程间的信息共享。

(√)11.在虚拟存储方式下,程序员编制程序时不必考虑主存的容量,但系统的吞吐量在很大程度上依赖于主存储器的容量;

(×)12.可重定位分区管理可以对作业分配不连续的内存单元;

(√)13.采用动态重定位技术的系统,目标程序可以不经任何改动,而装入物理内存; (×)14.页式存储管理中,一个作业可以占用不连续的内存空间,而段式存储管理,一个作业则是占用连续的内存空间。

(×)15.线程是最小的拥有资源的单位。

(√)16.文件系统最基本的功能是实现按名存取。

(×)17.存取控制表是每个用户一张,表明该用户对不同文件的存取权限。 (×)18.SPOOLing技术可以解决进程使用设备死锁问题。

(×)19.对于一个具有三级索引表的文件,存取一个记录需要访问三次磁盘。 (√)20.在I/O控制的多种方式中,传输速率高,对主机影响少的方式最好。 (×)21.进程可以删除自己的PCB表。

(×)22.可重定位分区法能够支持虚拟存储器的技术。

(×)23.单级目录结构能够解决文件重名问题。

(×)24.分页式存储管理中,页的大小是可以不相等的。 (√)25.执行原语时不会响应任何中断。

(√)26.段页式管理实现了段式、页式两种存储方式的优势互补。 (√)27.对临界资源应采取互斥访问方式来实现共享。 (×)28.文件系统中分配存储空间的基本单位是记录。

(×)29.外存对换空间保存的是虚拟内存管理系统调出的程序。

(√)30.虚存容量的扩大是以牺牲CPU工作时间以及内、外存交换时间为代价的。

四 名词解释:

1.原语:它是由若干条机器指令所构成,用以完成特定功能的一段程序,为保证其操作的 正确性,它应当是原子操作,即原语是一个不可分割的操作。

2.设备独立性:指用户设备独立于所使用的具体物理设备。即在用户程序中要执行I/O操作时,只需用逻辑设备名提出I/O请求,而不必局限于某特定的物理设备。

3.文件的逻辑结构:又称为文件逻辑组织,是指从用户观点看到的文件组织形式。它可分为两类:记录式文件结构,由若干相关的记录构成;流式文件结构,由字符流构成。

4.树形结构目录:利用树形结构的形式,描述各目录之间的关系。上级目录与相邻下级目录的关系是1对n。树形结构目录能够较好地满足用户和系统的要求。

5.操作系统:操作系统是控制和管理计算机硬件和软件资源,合理地组织计算机的工作流程,以及方便用户的程序的集合。其主要功能是实现处理机管理、内存管理、I/O设备管理、文件管理和用户接口。

6.位示图:它是利用一个向量来描述自由块使用情况的一张表。表中的每个元素表示一个盘块的使用情况,0表示该块为空闲块,1表示已分配。

7.置换策略:虚拟式存储管理中的一种策略。用于确定应选择内存中的哪一页(段) 换出到磁盘对换区,以便腾出内存。通常采用的置换算法都是基于把那些在最近的将来,最少可能被访问的页(段)从内存换出到盘上。

8.用户接口:操作系统提供给用户和编程人员的界面和接口。包括程序接口、命令行方式和图形用户界面。

9. 死锁:指多个进程因竞争资源二造成的一种僵局,若无外力的作用,这些进程将永远不能再向前推进。

10.文件系统:OS中负责管理和存取文件信息的软件机构。负责文件的建立,撤消,存入,续写,修改和复制,还负责完成对文件的按名存取和进行存取控制。

11.进程:进程是程序在一个数据集合上的运行过程,是系统进行资源分配和调度的一个独立的基本单位。

12.wait(s)原语 wait(s) :Begin Lock out interrupts; s = s – 1; If s < 0 then Begin Status(q) = blocked; Insert(WL, q); Unlock interrupts; Scheduler; End Else unlock interrupts; End

13.链接文件

逻辑文件中的不同记录可以存储在离散的磁盘块中。每个盘块中都设置了一个指向下一个

盘块的链接指针,用这些指针可将一个文件中的所有盘块拉成一条链,而在文件控制块中的“文件地址指针”便指向存放该文件的第一个盘块的编号。

14.快表

采用联想存储器加快查表速度 ,在地址变换机构中,加入一个高速,小容量、具有并行查询能力的联想存储器,构成快表,存放正运行的作业的当前页号和块号。 在快表中找到,直接进行地址转换;未找到,则在主存页表继续查找,并把查到的页号和块号放入联想存储器的空闲单元中,如没有,淘汰最先装入的页号。

15.虚拟存储器

指具有请求调入功能和置换功能,能从逻辑上对内存容量进行扩充的一种存储器系统。从用户观点看,虚拟存储器具有比实际内存大得多的容量。这既方便了用户,又提高了内存的利用率和系统的吞吐量。

16.文件目录

为了项用户提供对文件的存取控制及保护功能,而按一定规则对系统中的文件名,(亦可包含文件属性)进行组织所形成的表,称为目录表或文件目录。

17.I/O控制:

我们把从用户进程的输入/输出请求开始,给用户进程分配设备和启动有关设备 进行I /O操作,以及在I /O 操作完成之后响应中断,进行善后处理为止的整个系统控制过程称为I /O 控制。

18. 缓冲池:

这是具有多个缓冲区的公用缓冲器,其中的各个缓冲区可供多个进程或设备共享。为便于管理,通常把缓冲池中的缓冲区,按其性质的不同而构成若干个链表或队列,如空缓冲队列,输入缓冲队列等。

19. SPOOLING:

即同时联机外围操作,又称脱机操作。在多道程序环境下,可利用多道程序中的一道程序,来模拟脱机的输入输出功能。即在联机条件下,将数据从输入设备传送到磁盘,或从磁盘传送到输出设备。

20.逻辑地址与物理地址:

在具有地址变换机构的计算机中,允许程序中编排的地址和信息实际存放在内存中的地址有所不同。逻辑地址是指用户程序经编译后,每个目标模块以0为基地址进行的顺序编址。逻辑地址又称相对地址。物理地址是指内存中各物理存储单元的地址从统一的基地址进行的顺序编址。物理地址又称绝对地址,它是数据在内存中的实际存储地址。

21虚拟存储器:

答:虚拟存储器是一种存储管理技术,用以完成用小的内存实现在大的虚空间中程序的运行工作。它是由操作系统提供的一个假想的特大存储器。但是虚拟存储器的容量并不是无限的,它由计算机的地址结构长度所确定,另外虚存容量的扩大是以牺牲CPU工作时间以及内、外存交换时间为代价的。

22.PCB:

23.联想存储器: 24.设备独立性: 25.系统调用: 26.设备驱动程序:

五 问答题

1.在单处理机环境下,进程间有哪几种通信方式,是如何实现的?

1. 作业调度:从一批后备作业中选择一个或几个作业,给它们分配资源,建立进程,挂入就绪队列。执行完后,回收资源。

进程调度:从就绪进程队列中根据某个策略选取一个进程,使之占用CPU。

交换调度:按照给定的原则和策略,将外存交换区中的进程调入内存,把内存中的非执行进程交换到外存交换区中。

2.设备管理中的数据传送控制方式有哪几种?分别简述如何实现的。

2. 程序直接控制:由用户进程来直接控制内存或CPU和外设间的信息传送。

中断方式:进程通过CPU发出指令启动外设,该进程阻塞。当输入完成时,I/O控制器通过中断请求线向CPU发出中断信号,CPU进行中断处理。

DMA方式:在外设和内存之间开辟直接的数据交换通路。

通道控制方式:CPU发出启动指令,指出通道相应的操作和I/O 设备,该指令就可启动通道并使该通道从内存中调出相应的通道指令执行。

3.简述进程的几种状态和引起状态转换的典型原因,以及相关的操作原语。 3. 进程的基本状态有:新、就绪,阻塞,执行、挂起和终止六种。

新到就绪:交换,创建原语

就绪到执行:进程调度

执行到阻塞:I/O请求,阻塞原语

阻塞到就绪:I/O完成,唤醒原语 执行到就绪:时间片完 阻塞到挂起:挂起原语 挂起到就绪:唤醒原语 执行到终止:进程执行完毕

4.什么是段式存储管理?它从逻辑地址到物理地址是怎么变换的?

4.把程序按内容或构成关系分成段,每段有自己的名字。一个用户作业或进程包含的段对应于一个二维虚拟储存器。以段为单位分配内存,然后通过地址映射机构把逻辑地址转换成物理地址。只将那些经常访问的段驻留内存,其他的段放在外存,待需要时自动调入。

地址变换过程:由虚地址中的段号为索引,查段表。找出该段在内存的起始地址,并将其和段内地址相加,从而得到物理地址。

5.什么是请求页式管理?能满足用户哪些需要?

答:请求页式管理的基本原理是将逻辑地址空间分成大小相同的页,将存储地址空间分块,页和块的大小相等,通过页表进行管理。页式系统的逻辑地址分为页号和页内位移量。页表包括页号和块号数据项,它们一一对应。根据逻辑空间的页号,查找页表对应项找到对应的块号,块号乘以块长,加上位移量就形成存储空间的物理地址。每个作业的逻辑地址空间是连续的,重定位到内存空间后就不一定连续了。

此外,页表中还包括特征位(指示该页面是否在内存中)、外存地址、修改位(该页的内容在内存中是否修改过)等。

页式存储管理在动态地址转换过程中需要确定某一页是否已经调入主存。若调入主存,则可直接将虚地址转换为实地址,如果该页未调入主存,则产生缺页中断,以装入所需的页。

页式存储管理将不常用的页面调出内存,使内存的利用率高;虚拟的容量大,用户不必担心内存不够;不要求作业连续存放,有效地解决了“碎片”问题。

6.在段页式虚拟存储系统中,不同进程之间是如何实现程序共享的?

6.在系统内设置有系统段表,用户段表指向系统段表,系统段表内有当前共享的用户数。当用户进程调入一个程序段之前,先查找系统段表,如果所需段存在,则将共享用户数加一,在将此段登记在用户进程段表中。当进程退出时,共享计数减一,最后一个用户删除共享代码段。

7.试比较内存管理和外存管理的异同点.

答:主要任务:内存管理的主要任务是为多道程序的运行,提供良好的环境;而外存管理的主要任务则是为文件提供存储空间。

基本功能:内存管理的基本功能包含了内存空间的分配、回收、内存保护、对换、内存扩充等方面;而对外存管理的基本功能则只是对外存空间的分配和回收。

分配方式:它们都可采用连续分配或离散分配方式,且都以离散分配方式为主。

分配算法或机制:对于连续分配方式,内存与外存管理中的分配和回收算法类似,主要有首次适应算法、循环首次适应算法等;在离散分配方式中,两者采用的机制不同,内存管理主要是利用页(段)表;而在外存管理中,则主要利用文件分配表FAT。

8.SPOOLing的含义是什么?试述SPOOLing系统的特点、功能以及控制过程。 答:SPOOLing是Simultaneous Peripheral Operation On-Line (即外部设备联机并行操作)的缩写,它是关于慢速字符设备如何与计算机主机交换信息的一种技术,通常称为“假脱机技术”。

SPOOLing技术是在通道技术和多道程序设计基础上产生的,它由主机和相应的通道共同承担作业的输入输出工作,利用磁盘作为后援存储器,实现外围设备同时联机操作。 SPOOLing系统由专门负责I/O的常驻内存的进程以及输入井、输出井组成;它将独占设备改造为共享设备,实现了虚拟设备功能。

9.在生产者—消费者问题中,能否将生产者进程的wait(empty)和wait(mutex)语句互换,为什么?

不能。(2分)

因为这样可能导致系统死锁。当系统中没有空缓冲时,生产者进程的wait(mutex)操作获取了缓冲队列的控制权,而wait(empty) 导致生产者进程阻塞,这时消费者进程也无法执行。(3分)

10.进程的基本状态有哪些?这些状态之间是如何转换的?

进程的基本状态有:就绪,阻塞,执行三种。(2分) 就绪到执行:进程调度 执行到就绪:时间片完

执行到阻塞:I/O请求或等待事件发生

阻塞到就绪:I/O完成或事件已发生 (3分)

11.什么是快表?它在地址转换中起什么作用?

快表是一个高速、具有并行查询能力的联想存储器,用于存放正运行的进程的当前页号和块号,或者段号和段起始地址。(2分)

加入快表后,在地址转换时,首先在快表中查找,若找到就直接进行地址转换;未找到,则在主存页表继续查找,并把查到的页号和块号放入联想存储器中。快表的命中率很高,有效地提高了地址转换的速度。 (3分)

12.什么是设备独立性,它是如何实现的?

设备独立性即应用程序独立于使用的物理设备,在应用程序中使用逻辑设备名称来请求使用某类设备。系统在执行时,是使用物理设备名称。(3分)

要实现设备独立性必须由设备独立性软件完成,包括执行所有设备的公有操作软件提供统一的接口,其中逻辑设备到物理设备的映射是由逻辑设备表LUT完成的。 (2分)

13.文件的物理结构有哪几类,那种结构能支持大型文件?

文件的物理结构有:顺序文件、链接文件和索引文件。(4分) 其中索引文件能支持大型文件。(1分)

14.试说明和比较几种文件共享的方法 绕弯路法: 连访法:

利用基本文件目录实现文件共享: 基于索引节点的共享方法: 利用符号链实现文件共享:

15.处理机调度分为哪三级?各自的主要任务是什么?

答:作业调度:从一批后备作业中选择一个或几个作业,给它们分配资源,建立进程,挂入就绪队列。执行完后,回收资源。

进程调度:从就绪进程队列中根据某个策略选取一个进程,使之占用CPU。

交换调度:按照给定的原则和策略,将外存交换区中的进程调入内存,把内存中的非执行进程交换到外存交换区中。

16.什么是高级调度、中级调度和低级调度?

答:作业调度:从一批后备作业中选择一个或几个作业,给它们分配资源,建立进程,挂入就绪队列。执行完后,回收资源。

进程调度:从就绪进程队列中根据某个策略选取一个进程,使之占用CPU。

交换调度:按照给定的原则和策略,将外存交换区中的进程调入内存,把内存中的非执行进程交换到外存交换区中。

17.请描述请求页式管理机制中的地址变换过程。

18.目前操作系统采用的目录结构是什么?它具有什么优点?

为了给用户提供对文件的存取控制及保护功能,而按一定规则对系统中的文件名,(亦可包含文件属性)进行组织所形成的表,称为目录表或文件目录。目前操作系统采用的目录结构是树型目录结构,它的优点有:

(1) 有效地提高对目录的检索速度; (2) 允许文件重名;

(3) 便于实现文件共享。

19.什么是死锁?产生死锁的四个必要条件是什么?

死锁:当某进程提出资源申请后,使得系统中一些进程处于无休止的阻塞状态,在无外力作用下,永远不能再继续前进。

产生死锁的必要条件:互斥条件:某段时间内某资源只能由一个进程使用。不剥夺条件:资源在未使用完前,不能被剥夺,由使用进程释放。部分分配(请求和保持):进程因请求资源而阻塞时,对已分配给它的资源保持不放。环路条件:发生死锁时,有向图必构成一环路。

20.什么是内存分页存储管理?它有什么特点?

分页存储管理是将各进程的地址空间分成大小相等的页,把内存的存储空间也分成与页大小相同的片,称为物理块。在分配存储空间时,以块为单位来分配。

优点:有效解决存储器的零头问题,能在更高的程度上进行多道程序设计,从而相应提高了存储器和CPU 的利用率。

缺点:采用动态地址变换为增加计算机成本和降低CPU 的速度。表格占内存空间,费时来管理表格。存在页内碎片。作业动态的地址空间受内存容量限制。 21.说明进程的结构、特征和基本状态。

答:结构:PCB (进程控制块)+程序+数据集合。 特征:动态性、并发性、独立性、制约性、结构性。 基本状态:就绪态、执行态、等待态。

22.在生产者—消费者问题中,如果缺少了signal(full)或signal(empty),对执行结果会有什么影响?

23.页式和段式内存管理有什么区别?怎样才能实现共享和保护? 答:段式与页式存储管理的比较如下表所示。

段式 页式 分段由用户设计划分,每段对应一个相应的的分页用户看不见,由操作系统为内存管理程序模块,有完整的逻辑意义。 划分。 段面是信息的逻辑单位 页面是信息的物理单位 便于段的共享,执行时按需动态链接装入。 页一般不能共享 段长不等,可动态增长,有利于新数据增长。 页面大小相同,位置不能动态增长。 二维地址空间:段名、段中地址;段号、段内一维地址空间 单元号 管理形式上象页式,但概念不同 往往需要多次缺页中断才能把所需信息完整地调入内存 实现页(段)的共享是指某些作业的逻辑页号(段号)对应同一物理页号(内存中该段的起始地址)。页(段)的保护往往需要对共享的页面(段)加上某种访问权限的限制,如不能修改等;或设置地址越界检查,对于页内地址(段内地址)大于页长(段长)的存取,产生保护中断。

24.在哲学家算法中,是否能防止或解除死锁?为什么?

答:银行家算法部分防止和解除死锁,因为它只能根据安全状态防止部分死锁,没有防止和解除所有死锁的能力。

25.在原语执行期间,是否可以响应中断?为什么?

答:原语执行期间可以响应中断,只是不能进行进程切换。

26.不同用户的不同任务之间的进程是有临界区?为什么?请举例说明。

答:完全可能有临界区,如打印程序是可以由不同用户的不同进程使用,但是只能有一个进程在某一时刻进入。

27.文件目录有何作用?

答:实现文件目录到物理地址的转换。

28.什么是文件的逻辑结构和物理结构?

文件的逻辑结构(文件的组织):从用户角度看到的文件的全貌,也就是它的记录结构,包括流式文件、顺序文件、索引文件和索引顺序文件。 文件的物理结构(文件的存储结构):文件在外存上的存储组织形式,包括连续文件、串联文件和索引文件。

29.请说明系统利用缓冲池进行输入操作的过程。(7分)

收容输入:数据从设备输入到缓冲池

hin = get-buf (emq); 数据装入hin中; put-buf (inq, hin):;

提取输入:数据从缓冲池输入到内存

sin = get-buf (inq); 数据从sin中提走; put-buf (emq, sin);

30.什么是虚拟存储器,它有什么特点?

答:虚拟存储器是一种存储管理技术,用以完成用小的内存实现在大的虚空间中程序的运行工作。它是由操作系统提供的一个假想的特大存储器。但是虚拟存储器的容量并不是无限的,它由计算机的地址结构长度所确定,另外虚存容量的扩大是以牺牲CPU工作时间以及内、外存交换时间为代价的。

31.比较基于索引节点和基于符号链的文件共享方法。(8分) 答:基于索引节点的文件共享是在文件的目录中填上需要共享文件的索引节点的序号,在索引节点中加上用户计数。基于符号链的文件共享是建立一种特殊的链接文件,内容为需要共享的文件的路径和名字,访问该文件时,根据路径找到共享的文件。基于索引节点的文件共享访问速度快,但可能使索引节点指针悬空;基于符号链的文件共享安全,但访问速度慢,要占用索引节点。

六 算法题

1. 这是一个从键盘输入到打印机输出的数据处理流图,其中键盘输入进程通过缓冲区 buf1 把输入数据传送给计算进程,计算进程把处理结果通过缓冲 buf2 传送给打印进程。buf1 和 buf2 为临界资源,试写出键盘输入进程,计算进程及打印进程间的同步算法。(10分)

输入进程 → buf1 → 计算进程 → buf2 → 打印进程

解答:从键盘输入到打印机输出的数据传送过程,可以看作是由键盘输入进程到计算进程,以及由计算进程到打印输出进程这两个数据传送进程所组成。其中,对键盘输入进程而言,计算进程是消费者进程;而对打印输出进程而言,计算进程又是生产者进程。据此可将它们之间的同步问题描述如下:

var:mutex1,mutex2,empty1,empty2,full1,full2:=1,1,1,1,0,0; IP:begin repeat

P(empty); P(mutex1);

input a charcter from keyboard; Add to buffer; V(mutex1); V(full); until false end CP:begin

repeat P(full); P(mutex1);

Take a charactor form buffer1; Add to ch1; V(mutex1); V(empty1); P(empty2); P(mutex2);

Take a charactor form ch1; Add to buffer2; V(mutex2); V(full2); until false end

OP:begin

repeat p(full2); P(mutex2);

Take a charactor from buffer2; Add to printer controler; start printer; V(mutex2); V(empty2); until false end

2.设在一个页面大小为 1K的系统中,正在处理器上执行的一个进程的页表如图所示: 页号 状态位 访问位 修改位 物理块号 0 1 1 0 4 1 1 1 1 7 2 0 0 0 - 3 1 0 0 2 4 0 0 0 - 5 1 0 1 0

起始页号和块号均为0。

1.详述在设有快表的请求分页存储管理系统中,一个虚地址转换成物理内存地址的过程。 2.下列虚地址(十进制)对应与什么物理地址:5449,2221。 解: (10分)

5449的物理地址为:329 2221的物理地址为:2221

3.设系统有三种类型的资源,数量为(4,2,2),系统中有进程A,B,C按如下顺序请求资源:

进程A申请(3,2,1) 进程B申请(1,0,1) 进程A申请(0,1,0) 进程C申请(2,0,0)

请你给出一和防止死锁的资源剥夺分配策略,完成上述请求序列,并列出资源分配过程,指明哪些进程需要等待,哪些资源被剥夺。(10分)

解:(10分)

① 分配策略为:当进程Pi申请ri类资源时,检查ri中有无可分配的资源:有则分配给Pi;否则将Pi占有的资源全部释放而进入等待状态。(Pi等待原占有的所有资源和新申请的资源)

② 资源分配过程: 剩余资源 进程A:(3,2,1) (1,0,1) 进程B:(1,0,1) (0,0,0) 进程A:(0,1,0)(不满足) (3,2,1) A的所有资源被剥夺,A处于等待

进程C:(2,0,0) (1,2,1) C,B完成之后,A可完成。

4.设公共汽车上,司机和售票员的活动分别是: 司机: 启动车辆 售票员: 上乘客 正常行车 关车门 到站停车 售票 开车门 `下乘客 在汽车不断地到站,停车,行使过程中,这两个活动有什么同步关系?并用 wait和signal 原语操作实现它们的同步。 解:BEGIN integer stop,run;

Stop:=0; Run:=0; COBEGIN

Driver: BEGIN

L1: wait(run);

启动车辆;

正常行车; 到站停车;

signal(stop); Goto L1;

END

Conductor: BEGIN

L2: 上乘客; 关车门; signal(run); 售票;

wait(stop); 开车门; 下乘客; Goto L2;

END

COEND

END

5、某虚拟存储器的用户编程空间共321KB,内存为16KB。假定某时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如下:

页号 1 2 3 4 物理块号 5 10 4 7 则逻辑地址0A5C(H)所对应的物理地址是什么?

答:逻辑地址0A5CH)所对应的二进制表示形式是:0000 1010 0101 1100 ,由于1K=210,下划线部分前的编码为000010,表示该逻辑地址对应的页号为3查页表,得到物理块号是4(十进制),即物理块地址为:0001 0010 0000 0000 ,拼接块内地址0000 0000 0101 1100,得0001 0010 0101 1100,即125C(H)。

6、某段表内容如下:

段号 0 1 2 3 段首地址 120K 760K 480K 370K 段长度 40K 30K 20K 20K 一逻辑地址为(2,154)的实际物理地址为多少?

答:逻辑地址(2154)表示段号为2,即段首地址为480K,154为单元号,则实际物理地址为480K+154。

7、设系统中有三种类型的资源(A,B,C)和五个进程(P1,P2,P3,P4,P5),A资源的数量为17,B资源的数量为5,C资源的数量为20。在T0时刻系统状态如表1和表2所示。(共10分)

系统采用银行家算法实施死锁避免策略。

① T0时刻是否为安全状态?若是,请给出安全序列。

② 在T0时刻若进程P2请求资源(0,3,4),是否能实施资源分配?为什么? ③ 在②的基础上,若进程P4请求资源(2,0,1),是否能实施资源分配?为什么? ④ 在③的基础上,若进程P1请求资源(0,2,0),是否能实施资源分配?为什么? 表1 T0时刻系统状态

最大资源需求量 A P1 P2 P3 P4 P5 5 5 4 4 4 B 5 3 0 2 2 C 9 6 11 5 4 A 2 4 4 2 3 已分配资源数量 B 1 0 0 0 1 C 2 2 5 4 4 表2 T0时刻系统状态 剩余资源数 A 2 B 3 C 3 8.系统中有五个进程P1、P2、P3、P4、P5,有三种类型的资源:R1、R2、和R3。在T0时刻系统状态如表所示。若采用银行家算法实施死锁避免策略,回答下列问题: (共9分,每小题3分)

1. T0时刻是否为安全状态?为什么? 2. 若这时P4请求资源(1,2,0),是否能实施资源分配?为什么? 3. 在上面的基础上,若进程P3请求资源(0,1,0),是否能实施资源分配?为什么?

T0时刻系统状态

P1 P2 P3 P4 P5

已分配资源数量 R1 R2 R3 0 0 1 2 0 0 0 0 3 1 1 5 0 3 3 最大资源需求量 R1 R2 R3 0 0 1 2 7 5 6 6 5 4 3 5 0 6 5 R1 R2 R3

剩余资源数

解:(共9分,每小题3分)

3 3 0 1. T0时刻是安全的,安全序列为:P1,P4,P5,P2,P3 2. P4请求资源(1,2,0),根据银行家算法,预分配后系统是安全的,安全

序列为:P1,P4,P5,P2,P3 3. P3请求资源(1,1,0),根据银行家算法,预分配后系统不安全,所以不

能实施资源分配。

9.一个进程的大小占5个页面,每页的大小为1K,系统为它分配了3个物理块。当前进程的页表如图所示:(共8分) 块号 存在位P 访问位R 修改位M 0x1C 1 1 0 0x3F 1 1 1 - 0 0 0 0x5D 1 0 0 - 0 0 0

1. 有那些页面不在内存?(2分)

2. 请分别计算进程中虚地址为0x3B7、0x12A5、0x1432单元的物理地址

(用十六进制表示),并说明理由。 (6分)

解:(共8分)

不在内存的是第2和4页(按页号),或第3和5页(按序号)。 (2分) 0x3B7的物理地址=0x 73 B7 (2分)

0x12 A5的物理地址=0x 176 A5,缺页,换出第三页。 (2分) 0x1432地址越界,出错。 (2分)

10.系统运行有三个进程:输入进程、计算进程和打印进程,它们协同完成工作。输入进程和计算进程之间共用缓冲区buffer1,计算进程和打印进程之间共用缓冲区buffer2。输入进程接收外部数据放入buffer1中;计算进程从buffer1中取出数据进行计算,然后将结果放入buffer2;打印进程从buffer2取出数据打印输出。

用算法描述这三个进程的工作情况,并用wait和signal原语实现其同步操作。(共8分) 解:(共8分)

解答:输入进程、计算进程和打印进程之间的同步问题描述如下:

var:mutex1,mutex2,empty1,empty2,full1,full2:=1,1,1,1,0,0; InP:begin repeat

wait(empty1); wait(mutex1);

input a data from keyboard;

Add to buffer1;

signal(mutex1); signal(full1); until false end

CalP:begin repeat

wait(full1); wait(mutex1);

Take a data form buffer1; Add to ch1; signal(mutex1); signal(empty1); calculate ch1; wait (empty2); wait(mutex2);

Take a data form ch1; Add to buffer2; signal (mutex2); signal (full2);

until false end

OutP:begin repeat

wait(full2); wait(mutex2);

Take a data from buffer2; Add to printer controler; signal(mutex2); signal(empty2); start printer;

until false end

(评分标准:信号量设置2分,输入进程、计算进程、打印进程各2分)

11.在一个请求分页系统中,有一个长度为 5 页的进程,假如系统为它分配 3 个物理块 ,并且此进程的页面走向为 2,3,2,1,5,2,4,5,3,2,5,2。试用 FIFO 和 LRU 两种算法分别计算出程序访问过程中所发生的缺页次数。(10分) 解:FIFO:

2 3 2 1 5 2 4 5 3 2 5 2 第1页 2 2 2 5 5 5 3 3 3 第2页 3 3 3 2 2 2 5 5 第3页 1 1 1 4 4 4 2

缺页中断次数 = 6

LUR:

2 3 2 1 5 2 4 5 3 2 5 2 第1页 2 2 2 2 5 5 5 3 第2页 3 3 5 2 3 3 5 第3页 1 1 4 4 2 2

缺页中断次数 = 5

12. 进程 A1,A2,?,An 通过 K 个缓冲区向进程 B1,B2,?,Bm 不断地发送消息。发送和接收工作遵循如下规则:

1. 每个发送进程一次发送一个消息,写入缓冲区,缓冲区大小与消息长度一致; 2. 对每个消息,B1,B2,?,Bm 都需接收一次,读入各自的数据区内; 3. K 个缓冲区都满时,发送进程等待,没有可读的消息时,接收进程等待。 试用 wait 和 signal 原语操作组织正确的发送和接收操作。(10分) 解: BEGIN

Integer Mutex, Avail[n], Full[m]; Integer I;

Mutex:=1;

FOR i:=1 TO m DO BEGIN

Avail[I] := k; Full[I] := 0; END

PROCEDURE Send(K) Integer I; BEGIN

13.一个进程的大小为5个页面,为它分配了四个物理块。当前每个块的情况如下表所示(都为十进制数,且从0开始计数。)。当虚页4发生缺页时,使用下列的页面置换算法,哪一个物理块将被换出?并解释原因.(10分) 页号 块号 加载时间 访问时间 访问位R 修改位M 2 0 60 161 0 1 1 1 130 160 0 0 0 2 26 162 1 0 3 3 20 163 1 1

1. IFO算法 2. LRU算法

3. CLOCK算法

4. 当页面的访问串为:“4,0,0,0,2,4,2,1,0,3,2”的OPT算法 解:1.换出第3号虚页,因为它加载的时间最早; 2.换出第1号虚页,因为它最近最久没被访问;

3.换出第1号虚页,因为它最近既没被访问,又没被修改; 4.换出第3号虚页,因为它离访问点最远。

14. 用整型信号量描述在哲学家进餐问题中,至多允许4个哲学家同时进餐的算法。(10分) 解:public class diningphilosophers {

semaphore [] fork = new semaphore [5] (1); semaphore room = new semaphore (4); int i;

void philosopher (int i) { while (true) think(); wait (room); wait (fork[i]); wait (fork [(i+1) % 5]); eat();

signal (fork [(i+1) % 5]); signal (fork[i]); signal (room); void main() {

parbegin (philosopher (0), philosopher (1), philosopher (2), philosopher (3), philosopher (4));

15.考虑一个有150个存储器单元的系统,如下分配给三个进程:

}

} }

进程 最大 占有

———————————————————— 1 2 3

使用银行家算法,以确定下面的任何一个请求是否安全:

a.第4个进程到达,最多需要60个存储单元,最初需要25个单元; b.第4个进程到达,最多需要60个存储单元,最初需要35个单元; 如果安全给出安全序列;若不安全给出结果分配简表。(10分) 解:进程 最大 占有 尚需 可用 ———————————————————————— 1 70 45 25 25 2 60 40 20 3 60 15 45 4 60 25 35 安全序列为:1、2、3、4

所以系统是安全的,可以进行分配。 b. 进程 最大 占有 尚需 可用 ———————————————————————— 1 70 45 25 15 2 60 40 20 3 60 15 45 4 60 35 25

当前可用的资源不够任何一个进程运行完毕,所以不安全。

16. Jruassic 公园有一个恐龙博物馆和一个公园.有m个旅客和n辆车,每辆车只能容纳一个旅客。旅客在博物馆逛了一会儿,然后排队乘坐旅行车。当一辆车可用时,它载入一个旅客,然后绕公园行驶任意长的时间。如果n辆车都已被旅客乘坐游玩,则想坐车的旅客需要等待;如果一辆车已经就绪,但没有旅客等待,那么这辆车等待。使用信号量同步m个旅客和n辆车的进程。(10分) 解:

visitors=m; Pvi() { repeat wait(cars);

70 60 60

45 40 15

cars=n;

mutex=1; Pci() { repeat wait(visitors);

wait(mutex); wait(mutex); get on; start; travell; run; get off; stop; signal(cars); signal(visitors); wait(mutex); wait(mutex); until false; until false; } }

17.读者与写者问题 (reader -- writer problems ) (10分)

在计算机体系中,对一个共享文件进行操作的进程可分为两类:读操作和写操作,它们分别被称为读者和写者。访问该文件时读者和写者,写者和写者间必须实现互斥。只有在没有读者访问文件时,写者才允许修改文件。或者写者在修改文件时不允许读者去读,否则会造成读出的文件内容不正确。试写出算法描述读者和写者的问题。

解: 为了实现读者与写者的同步和互斥,我们设置一个信号量S,用于读者与写者之间或写者与读者之间的互斥,初值为“1”。用一个变量rc 表示当前正在读的读者个数,当进程可以去读或读结束后都要改变rc 的值,因此rc 又成为若干读进程的共享变量,它们必须互斥地修改rc。故必须定义另一个用于互斥的信号量Sr,初值也是“1”。读者--写者问题可描述如下:

S, Sr:semaphore; int rc = 0; S=Sr=1;

process Reader I (i=1,2,...,m) process Writer j (j=1,2,...,k) begin begin P(Sr); rc = rc+1; P(S);

if (rc==1) P(S); Write file F; V(Sr); V(S); read file F; end P(Sr); rc = tc-1; if (rc==0) V(S); V(Sr); end

18、若干个等待访问磁盘者依次要访问的磁道为20,44,40,4,80,12,76,假设每移动一个磁道需要3毫秒时间,移动臂当前位于40号柱面,请按下列算法分别写出访问序列并计算为完成上述各次访问总共花费的寻道时间。 (1)先来先服务算法;

(2)最短寻道时间优先算法。

(3)扫描算法(当前磁头移动的方向为磁道递增)(10分)

解:

(1)磁道访问顺序为:20,44,40,4,80,12,76 寻道时间=(20+24+4+36+76+68+64)*3=292*3=876 (2)磁道访问顺序为:40,44,20,12,4,76,80 寻道时间=(0+4+24+8+8+72+4)*3=120*3=360

(3)磁道访问顺序为:40,44,76,80,20,12,4 寻道时间=(0+4+32+4+60+8+8)*3=116*3=348

19、生产者和消费者问题 (10分)

有一组生产者P1,P2,??,PM和一组消费者C1,C2,??,CK,他们通过由n个环形缓冲区构成的缓冲池进行通信,生产者把产品放入缓冲区,消费者从缓冲区取产品来消费。请用wait和signal原语实现他们的同步操作。 解:生产者和消费者问题 begin

Var mutex,empty,full:semaphore:=1,n,0; buffer:array[0,…,n-1] of item; in,out:integer := 0,0; parbegin

producer: begin repeat produce next product ; wait (empty); wait (mutex); buffer(in):=nextp ; in := (in+1) mod n ; signal (full); signal (mutex); until false ; end consumer: begin repeat wait (full); wait (mutex); nextc := buffer(out); out := (out+1) mod n; signal (empty); signal (mutex); consume the item in nextc; until false ; end parend end

20、请用信号量描述哲学家进餐问题。(15分) 解:哲学家进餐问题(15分)

public void philosopher (int i) { while (true) { think();

wait (fork[i]);

wait (fork [(i+1) % 5]); eat();

signal(fork [(i+1) % 5]);

signal(fork[i]); } }

21.今有三个并发进程R,M,P,它们共享了一个可循环使用的缓冲区B,缓冲区B共有N个单元。进程R负责从输入设备读信息,每读一个字符后,把它存放在缓冲区B的一个单元中;进程M负责处理读入的字符,若发现读入的字符中有空格符,则把它改成“,”;进程P负责把处理后的字符取出并打印输出。当缓冲区单元中的字符被进程P取出后,则又可用来存放下一次读入的字符。请用PV操作为同步机制写出它们能正确并发执行的程序。 (10分) 解:(10分)

begin

Var mutex,input,calculate,output:semaphore:=1,n,0,0; buffer:array[0,…,n-1] of item; in,mid,out:integer := 0,0,0; proR() { do { wait (input); wait (mutex); buffer(in):=input data; in := (in+1) mod n ; signal (calculate); signal (mutex); while true ; } proM() { do { wait (calculate); wait (mutex); buffer(middle):=calculate data ; mid := (mid+1) mod n ; signal (output); signal (mutex); } while true ; } proP() { do { wait (output); wait (mutex); buffer(out):=calculate data ; out := (out+1) mod n ; signal (input); signal (mutex); } while true ; }

22.理发店里有一位理发师、一把理发椅子和五把供等候理发的顾客坐的椅子。如果没有顾客,理发师便在理发椅上睡觉。当一个顾客到来时,他必须先叫醒理发师,如果理发师正在理发时又有顾客来到,而如果有空椅子可坐,他们就坐下来等,如果没有空椅子,他就离开。这里的问题是为理发师和顾客各编写一段程序来描述他们行为,并用wait和signal原语操作实现其同步。(10分)

解:理发师问题

#define CHAIRS 5 /*为等候的顾客准备椅子数*/ typedef int semaphore; /* 运用你的想像力*/ semphore customers=0; /*等候服务的顾客数*/ semaphore barbers=0 /*等候服务的理发师数*/ semaphore mutex=1; /*用于互斥*/

int waiting=0; /*还没理发的等候顾客*/ void barber (void) { while(TRUE) {

wait(customers); /*如果顾客数是0,则睡觉*/ wait(mutex); /*要求进程等候*/ waiting=waiting-1; /*等候顾客数减1*/

signal(barbers); /*一个理发师现在开始理发*/ signal(mutex); /*释放等候*/ cut_hair(); /*理发(非临界区操作)*/ }

void customers (void) { wait(mutex);

if (waiting

signal(mutex); } }

23、根据如下的前趋图写出可并发执行的程序:(10分) 2 1 5 3 4 6 7 解:(10)

评分:变量、进程、程序主体每项一分。

var a,b,c,d,e,f,g,h,i:semaphore := 0,0,0,0,0,0,0,0; begin parbegin begin S1;signal(a); signal(b); end begin wait(a); S2; signal(c);signal(d); end begin wait(c); S3; signal(e);signal(f); end begin wait(b); S4; signal(g); end begin wait(d);wait(e) S5; signal(h); end begin wait(f); wait(g); S6 ; signal(i); end begin wait(h); wait(i); S7; end parend end

24、在公共汽车上,乘客上完后,售票员关门,驾驶员开车,售票员售票,到站汽车停稳后,售票员开门,乘客上下车,售票员和驾驶员之间密切配合,直到下班。请用信号量描述公共汽车上售票员与驾驶员的工作过程。(10分) 解:建立驾驶员和售票员两进程,驾驶员进程执行过程如下:

(1) 判售票员关门没有 (2) 开车 (3) 到站后停车

(4) 重复(1)-(3)

售票员执行过程如下:

(1) 判断乘客上完没有 (2) 关门 (3) 售票

(4) 判车停稳没有 (5) 开门

(6) 重复(1)-(5)

评分标准:执行过程完善3分, 驾驶员与售票员合作消息正确3分 售票员与驾驶员合作消息正确3分 书写格式1分

25、设某作业占有7个页面,如果在主存中只允许装入4个工作页面(即工作集为4),作业运行时,实际访问页面的顺序是:1, 2, 3, 6, 4, 7, 3, 2, 1, 4, 7, 5, 6, 5, 2, 1。试用FIFO、LRU和CLOCK页面置换算法,列出各自的页面淘汰顺序和页面置换次数。 (10分) 解:FIFO:

1, 2, 3, 6, 4, 7, 3, 2, 1, 4, 7, 5, 6, 5, 2, 1 1 1 1 1 4 4 4 4 5 5 2 2 2 2 7 7 7 7 6

3 3 3 3 2 2 2 2

6 6 6 6 1 1 1

页面置换次数为:6次 LRU:

本文来源:https://www.bwwdw.com/article/0sh3.html

Top