计算机操作系统试题库

更新时间:2023-03-10 10:18:01 阅读量: 教育文库 文档下载

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

三、判断题

( )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. 一般地,进程由PCB和其执行的程序,数据所组成.( 对)

2. 一个进程在执行过程中可以被中断事件打断,当相应的中断处理完成后,就一定恢复该进程被中断时的现场,使

它继续执行.( 错,一个进程在执行过程中可以被中断事件打断,当相应的中断处理完成后,如果当时该进程的优先级最高,就恢复该进程被中断时的现场,使它继续执行.)

3. 虚拟存储器是利用操作系统产生的一个假想的特大存储器,是逻辑上扩充了内存容量,而物理内存的容量并未

4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.

17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30.

增加.( 对)

虚拟存储器不是物理上扩大内存空间,而是逻辑上扩充了内存容量.( 对)

用信号量和P,V原语操作可解决互斥问题,互斥信号量的初值一定为1.( 错,用信号量和P,V原语操作可解决互斥问题,互斥信号量的初值通常(或:不一定)为1.)

系统发生死锁时,其资源分配图中必然存在环路.因此,如果资源分配图中存在环路,则系统一定出现死锁.( 系统发生死锁时,其资源分配图中必然存在环路.然而,资源分配图中存在环路, 系统中不一定出现死锁.) )

进程控制块(PCB)是专为用户进程设置的私有数据结构,每个进程仅有一个PCB.(错,进程控制块/PCB是为系统中所有进程设置的私有数据结构,每个进程仅有一个PCB.)

进程控制块(PCB)是为所有进程设置的私有数据结构,每个进程仅有一个PCB.(对 ) 产生死锁的根本原因是供使用的资源数少于需求资源的进程数.( 对) 在采用树型目录结构的文件系统中,各用户的文件名可以互不相同.( 对.)

在采用树型目录结构的文件系统中,各用户的文件名必须互不相同.( 错,在采用树型目录结构的文件系统中,各用户在不同目录中的文件名可以互不相同)

平均周转时间和周转时间与选用的调度算法有关.( 正确)

利用交换技术扩充内存时,设计时必须考虑的问题是:如何减少信息交换量,降低交换所用的时间.( 正确)

在Linux系统中,常采用单空闲块链接法来实施存储空间的分配与回收.( (×)在Linux系统中,采用位示图法来实施存储空间的分配与回收.)

P,V操作不仅可以实现并发进程之间的同步和互斥,而且能够防止系统进入死锁状态.( (×)P,V操作使用不当,将使系统进入死锁状态. )

程序在运行时需要很多系统资源,如内存、文件、设备等,因此操作系统以程序为单位分配系统资源。(错,程序(或者进程)在运行时需要很多系统资源,如内存、文件、设备等,因此操作系统以进程为单位分配系统资源。)

由于资源数少于进程对资源的需求数,因而产生资源的竞争,所以这种资源的竞争必然会引起死锁。(错,资源竞争是引起死锁的根本原因,但是并非必然引起死锁,而是在操作不当的情况可能引起死锁。 ) 分页存储管理中,由于地址是由页号p和页内地址d两部分组成,所以作业的逻辑地址空间是二维的。(错,在分页存储管理中,逻辑地址是一维的)

多级目录的作用之一是解决了用户的文件名重名问题。(对)

操作系统是系统软件中的一种,在进行系统安装时可以先安装其它软件,然后再装操作系统。(错,操作系统是系统软件中的一种,在进行系统安装时必须先安装操作系统,然后再装其它软件。 )

一个正在运行的进程可以阻塞其他进程。但一个被阻塞的进程不能唤醒自己,它只能等待别的进程唤醒它。(错,一个正在运行的进程只可以阻塞自己,不能阻塞别的进程。 ) 产生死锁的根本原因是供使用的资源数少于需求资源的进程数。(对) 引入缓冲技术的主要目的是平滑数据的I/O速率。(对)

在分段存储管理中,分配给用户的地址空间大小由系统(或硬件)决定。(错,在分段存储管理中,分配给用户的地址空间大小由用户程序决定的。)

与分时系统相比,实时操作系统对响应时间的紧迫性要求高的多。(对) 一个正在运行的进程可以主动地阻塞自己。但一个被阻塞的进程不能唤醒自己,它只能等待别的进程唤醒它。(对)

可重定位分区管理可以对作业分配不连续的内存单元。(错。可重定位分区管理不可以对作业分配不连续的内存单元。)

利用置换技术扩充内存时,设计时必须考虑的问题是:如何减少信息交换量、降低交换所用的时间。(对) 死锁是指因相互竞争资源使得系统中有多个阻塞进程的情况。(错。死锁是指因相互竞争资源并且各进程推进不当使得系统中有多个阻塞进程相互等待的情况。) 操作系统是计算机系统中必不可少的系统软件。(对)

31. 由于资源数少于进程对资源的需求数,因而产生资源的竞争,所以这种资源的竞争必然会引起死锁。(错,资

源竞争是引起死锁的根本原因,但是并非必然引起死锁,而是在操作不当的情况可能引起死锁。 ) 32. 采用动态重定位技术的系统,目标程序可以不经任何改动,而装入物理内存。(对) 33. 产生死锁的原因可归结为竞争资源和进程推进顺序不当. (对) 34. 死锁是指两个或多个进程都处于互等状态而无法继续工作. (对)

35. 若系统中并发运行的进程和资源之间满足互斥使用、保持和等待、非剥夺性和循环等待,则可判定系统中发

生了死锁。(错,若系统中并发运行的进程和资源之间满足互斥使用、保持和等待、非剥夺性和循环等待,则只可判定系统可能会发生了死锁而不是必然会发生死锁。) 36. 多用户操作系统一定是具有多道功能的操作系统.(对) 37. 进程的相对速度不能由自己来控制.(对)

38. 实时系统中的作业周转时间有严格的限制.(错,实时系统中的作业周转时间有严格的限制) 39. 多用户操作系统在单一硬件终端硬件支持下仍然可以工作.(对)

40. 进程在运行中,可以自行修改自己的进程控制块. (错,进程在运行中不可以自行修改自己的进程控制块,

由操作系统修改)

41. 系统调用是操作系统与外界程序之间的接口,它属于核心程序。在层次结构设计中,它最靠近硬件。(错,系

统调用是操作系统与外界程序之间的接口,它属于核心程序。在层次结构设计中,它最靠近用户。)

42. 设备独立性(或无关性)是指能独立实现设备共享的一种特性. (错,设备独立性(或无关性)是指能独立

实现设备共享的一种特性)

43. 虚拟存储器是利用操作系统产生的一个假想的特大存储器,是逻辑上扩充了内存容量,而物理内存的容量并

未增加。(对)

44. 作业同步面向用户而进程同步面向计算机内部资源管理控制. (对)

45. 特殊文件是指其用途由用户特殊规定的文件(错,特殊文件是指其用途由系统特殊规定的文件) 46. P操作和V操作都是原语操作. (对)

47. SPOOLing系统实现设备管理的虚拟技术,即:将独占设备改造为共享设备,它由专门负责I/O的常驻内存的

进程以及输入、输出井组成。(对)

48. 信号量机制是一种有效的实现进程同步与互斥的工具.信号量只能由PV操作来改变. (对)

49. rmdir命令用于删除指定的子目录文件,但不能删除普通文件。可用于删除当前目录,但不能删除根目录。它

可同时删除多个目录。( 错,该命令用于删除指定的子目录文件,但不能删除普通文件,而且,一次只能删除一个空目录(其中仅含“.”和“..”两个文件),不能删除根及当前目录。) 50. 同步反映了进程间的合作关系,互斥反映了进程间的竞争关系。(对) 51. CPU的二级调度是指作业调度和进程调度。(对)

52. 环路既是死锁的必要条件,又是死锁的充分条件。(错,环路条件等四个条件只是死锁的必要条件,不是死锁

的充分条件。)

53. 分布式系统具有高可靠性和健壮性,就是因为采用了冗余技术。(对) 54. 在采用树型目录结构的文件系统中,各用户的文件名必须互不相同。(错,在采用树型目录结构的文件系统中,

不同在一个目录中的各用户的文件名 可以 相同。)

55. 进程的互斥和同步总是因相互制约而同时引起(错,不总是同时引起,有时只有同步或只有互斥) 56. 操作系统“生成”是可以按用户要求任意装配成各种应用核心(错,统一核心,装配不同应用程序) 57. 多用户操作系统离开了多终端硬件支持无法使用。(对) 58. 一般的分时操作系统无法作实时控制用。(对)

59. 死锁是指两个或多个进程都处于互等状态而无法继续工作。(对)

60. 具有多道功能的操作系统一定是多用户操作系统。 (错,也可能是单用户多任务操作系统,如win98) 61. PC机一个逻辑驱动器号能管理两个以上物理硬盘。(对)

62. 操作系统是系统软件中的一种,在进行系统安装时可以先安装其它软件,然后再装操作系统。(错,裸机上第

一个要安装的就是操作系统)

63. 程序在运行时需要很多系统资源,如内存、文件、设备等,因此操作系统以程序为单位分配系统资源。(错,

执行处理机调度的基本单位是进程)

64. SPOOLing系统实现设备管理的虚拟技术,即:将独占设备改造为共享设备,它由专门负责I/O的常驻内存的

进程以及输入、输出井组成。(对)

四. 简答题

1. 什么是线程?进程和线程的关系是什么?

此题答案为:答:线程可定义为进程内的一个执行单位,或者定义为进程内的一个可调度实体。 在具有多线程机制的操作系统中,处理机调度的基本单位不是进程而是线程。一个进程可以有多个线程,而且至少有一个可执行线程。

进程和线程的关系是:

(1)线程是进程的一个组成部分。

(2)进程的多个线程都在进程的地址空间活动。

(3)资源是分给进程的,而不是分给线程的,线程在执行中需要资源时,系统从进程的资源分配额中扣除并分配给它。

(4)处理机调度的基本单位是线程,线程之间竞争处理机,真正在处理机上运行的是线程。 (5)线程在执行过程中,需要同步。 2. 同步机制应遵循的准则是什么?

此题答案为:答:有以下四条准则:空闲让进、忙则等待、有限等待、让权等待。 3. 进程通信有那三种基本类型?

此题答案为:答:基于共享存储器的通信、基于消息传递系统的通信和基于管理文件的通信。 4. 对临界区管理的要求是什么?

此题答案为:答:对临界区管理的要求是:

(1)当有若干个进程要求进入它们的临界区时,应在有限的时间内使一个进程进入临界区,进程之间不应相互等待而使谁都不能进入临界区。

(2)每次只允许一个进程进入临界区内。

(3)进程在临界区内逗留应在有限的时间范围内。

5. 设有n个进程共享一个互斥段,对于如下两种情况使用信号量,信号量的值的变化怎样? (1)如果每次只允许一个进程进入互斥段。

(2)如果每次最多允许m个进程(m

(2)产生死锁的原因有:资源不足、进程推进次序不当。

(3)产生死锁的必要条件有:互斥条件、请求和保持条件、环路等待条件。 7. 比较三种解决死锁的方法?

此题答案为:答:比较三种解决死锁的方法:

(1)预防死锁方法,主要是破坏产生死锁的必要条件。该方法是最容易实现的,但系统资源利用率较低。 (2)避免死锁方法,比较实用的有银行家算法(Banker Algorithm)。该算法需要较多的数据结构,实现起来比较困难,但资源利用率最高。

(3)检测死锁方法是基于死锁定理设计的。定期运行该算法对系统的状态进行检测,发现死锁便予以解除。其中,需要比较一下各咱死锁解除方案的代价,找到代价最小的方案。该方法最难实现,资源利用率较高。

8. 预防死锁方法是破坏产生死锁的必要条件? 此题答案为:答:(1)摈弃请求和保持条件。采用静态分配方案,一次性地分配给进程所请求的全部资源。进程运行过程中不可再请求新资源。

(2)摈弃不剥夺条件。采用动态分配方案,进程运行中可以请求新资源。若进程请求资源不能满足时,就应使其释放已占有的资源。

(3)摈弃环路等待条件。采用动态分配方案,要求进程请求资源时,按资源序号递增(或递减)顺序提出。 (4)摈弃不可剥夺条件。利用Spooling系统将独享设备改造成共享设备。 9. I/O控制方式有几种?分别适用何种场合? 此题答案为:答:I/O控制方式共有四种:

(1)程序I/O方式,又称作\忙-等\方式。该方式执行一个循环程序,反复查询外设状态,如果外设\忙碌\则循环查询直到查得外设状态为\闲置\时止。该方式适用于机内没有中断机构得场合。

(2)中断控制I/O方式。该方式在进行I/O时,CPU向设备控制器发出I/O命令后便转其他任务得处理,外设操作由设备控制器控制,CPU于外设并行工作。当外设完成I/O后向CPU发中断信号,CPU只需花费很少的时间进行I/O的善后处理,此前无须进行干预。该方式适用于低速设备I/O,并可配合DMA和通道方式实现I/O。 (3)DMA(直接内存访问)方式。该方式适用于高速外设I/O,一次可以在外设与内存之间传输一个或多个数据快,传输完毕后才需CPU干预。

(4)通道方式。该方式中系统预先要将I/O的过程实现为一段通道程序,置于内存的特定位置,而后启动通道。由通道负责执行通道程序对外设进行I/O控制,CPU转其他程序运行。I/O完成后通道向CPU发中断信号,CPU花很少时间作善后处理。

10. 试说明DMA的工作流程。 答:DMA的工作流程如下:

(1)CPU需要访问外存时便发送。一条访问命令给DMA的命令寄存器CR、一个内存地址码给DMA的内存地址寄存器MAR、本次要传送的字节数给DMA的数据计数器DC、外存地址给DMA的I/O控制逻辑。 (2)CPU启动DMA控制器后转向其他处理。

(3)DMA控制器负责控制数据在内存与外设之间传送。每传送一个字节就需挪用一个内存周期,按MAR从内存读出或写入内存一个字节,修改MAR和计算器DC。

(4)当DC修改为0时,表示传送结束,由DMA向CPU发出中断请求。 11. 进程的三个基本状态是什么?

此题答案为:答:进程的三个基本状态是就绪态、执行态、阻塞态。 12. 操作系统的基本功能有哪些?它们各自包括哪方面的内容? 此题答案为:答: 1、处理机管理功能

进程控制,进程同步,进程通信,调度 2、存储器管理功能

内存分配、内存保护、地址映射、内存扩充 3、设备管理功能

缓冲管理、设备分配、设备处理 4、文件管理功能

文件储存空间的管理、目录管理、文件的读写管理和保护 5、用户接口

命令接口、程序接口、图形接口 13. 选择进程调度算法的准则是什么?

此题答案为:答:由于各种调度算法都有自己的特性,因此,很难评价哪种算法是最好的。一般说来,选择算法时可以考虑如下一些原则:

① 处理器利用率; ② 吞吐量; ③ 等待时间; ④ 响应时间。

在选择调度算法前,应考虑好采用的准则,当确定准则后,通过对各种算法的评估,从中选择出最合适的算法。 14. 产生死锁的原因是什么?

此题答案为:答:① 系统资源不足; ② 进程推进顺序不合适。

15. 磁盘移臂调度的目的是什么?常用移臂调度算法有哪些?

此题答案为:答:磁盘移臂调度的目的是尽可能地减少输入输出操作中的寻找时间。 常用的移臂调度算法有: ① 先来先服务算法

② 最短寻找时间优先算法 ③ 电梯调度算法 ④ 单向扫描算法。

16. 常用的作业调度算法有哪些? 此题答案为:答:① 先来先服务算法 ② 计算时间短的作业优先算法 ③ 响应比最高者优先算法 ④ 优先数调度算法 ⑤ 均衡调度算法

17. 简述信号量S的物理含义。

此题答案为:答:S>0时,S表示可使用的资源数;或表示可使用资源的进程数; S=0时,表示无资源可供使用;或表示不允许进程再进入临界区;

S<0时,-S表示等待使用资源的进程个数;或表示等待进入临界区的进程个数;

当S>0时,调用P(S)的进程不会等待;调用V(S)后使可用资源数加1或使可用资源的进程数加1; 当S<0时,调用P(S)的进程必须等待;调用V(S)后将释放一个等待使用资源者或释放一个等待进入临界区者。

18. 试说明资源的静态分配策略能防止死锁的原因。

此题答案为:答:资源静态分配策略要求每个过程在开始执行前申请所需的全部资源,仅在系统为之分配了所需的全部资源后,该进程才开始执行。

这样,进程在执行过程中不再申请资源,从而破坏了死锁的四个必要条件之一\占有并等待条件\,从而防止死锁的发生。

19. 为实现设备的有效管理,应采用怎样的数据结构?

此题答案为:答:为实现设备、控制器、通道资源的分配与回收,系统需要记录有关的信息。通常设备管理要建立以下数据结构,以实施有效的管理。 1、设备控制块 2、控制器控制块 3、通道控制块 4、系统设备表

20. 什么是设备的独立性?根据设备的类型,设备的分配策略有哪些?(独占设备、共享设备、虚拟设备与SPOOLing系统)。以磁盘为例,有哪些优化调度算法?应考虑哪些因素?

此题答案为:答:进程申请设备时,应当指定所需设备的类别,而不是指定某一台具体的设备,系统根据当前请求以及设备分配情况在相应类别的设备中选择一个空闲设备并将其分配给申请进程,这称作设备的独立性。

磁盘调度一般可采用以下几种算法: 1、先来先服务磁盘调度算法(FCFS)

2、最短寻道时间优先磁盘调度算法(SSTF) 3、扫描算法(SCAN)

设计磁盘调试算法应考虑两个基本因素: 1、公平性2、高效性

21. 什么叫碎片?(零散的小空闲区) 怎样解决碎片问题?(紧凑技术)。 此题答案为:答:所谓碎片是指内存中出现的一些零散的小空闲区域。

解决碎片的方法是移动所有占用区域,使所有的空闲区合并成一片连续区域。这一过程称为紧凑,这一技术就是紧凑技术。

22. 什么叫物理地址?什么叫逻辑地址?什么叫地址映射?地址映射分哪几类?(静态、动态)

此题答案为:答:物理地址是内存中各存储单元的编号,即存储单元的真实地址,它是可识别、可寻址并实际存在的。

用户程序经过编译或汇编形成的目标代码,通常采用相对地址形式,其首地址为零,其余指令中的地址都是相对首地址而定。这个相对地址就称为逻辑地址或虚拟地址。逻辑地址不是内存中的物理地址,不能根据逻辑地址到内存中存取信息。

为了保证CPU执行程序指令时能正确访问存储单元,需要将用户程序中的逻辑地址转运行时可由机器直接寻址的物理地址,这一过程称为地址映射或地址重定位。 地址映射可分为两类:

1、静态地址映射2、动态地址映射

23. 虚存储器的含义是什么?(两层含义)

此题答案为:答:虚存储器有两层含义,一是指用户程序的逻辑地址构成的地址空间;二是指当内存容量不满足用户要求时,采用一种将内存空间与外存空间有机地结合在一起,利用内外存自动调度的方法构成一个大的存储器,从而给用户程序提供更大的访问空间。

此题答案为:答:在多道程序系统中,内存中既有操作系统,又有许多用户程序。为使系统正常运行,避免内存中各程序相互干扰,必须对内存中的程序和数据进行保护。 1、防止地址越界

对进程所产生的地址必须加以检查,发生越界时产生中断,由操作系统进行相应处理。 2、防止操作越权

对属于自己区域的信息,可读可写;

对公共区域中允许共享的信息或获得授权可使用的信息,可读而不可修改; 对未获授权使用的信息,不可读、不可写。

存储保护一般以硬件保护机制为主,软件为辅,因为完全用软件实现系统开销太大,速度成倍降低。当发生越界或非法操作时,硬件产生中断,进入操作系统处理

24. 作业调度算法是按照什么样的原则来选取作业并投入运行,调试算法的合理性直接影响系统的效率,作业调度算法有哪些?对算法的选择要考虑哪些问题?

此题答案为:答:作业调度算法:1、先来先服务算法;2、短作业优先算法;3、最高响应比作业优先算法;4、资源搭配算法;5、多队列循环算法 对算法的选择要考虑三个目标:

1、尽量提高系统的作业吞吐量,即每天处理尽可能多的作业; 2、尽量使CPU和外部设备保持忙碌状态,以提高资源利用率; 3、对各种作业公平合理,使用有用户都满意。

四、算法题

1. 假设系统中有5个进程,它们的到达时间和服务时间见下表1,忽略I/O以及其他开销时间,若按先来先服务(FCFS)、非抢占的短作业优先和抢占的短作业优先三种调度算法进行CPU调度,请给出各个进程的完成时间、周转时间、带权周转时间、平均周转时间和平均带权周转时间,完成表2。 表1 进程到达和需要服务时间 进程 到达时间 服务时间 A 0 3 B 2 6 C 4 4 D 6 5 E 8 2

此题答案为: 表2 进程的完成时间和周转时间 进程 A 3 3 1.00 3 3 1.00 3 3 1.00 B 9 7 1.17 9 7 1.17 15 13 2.16 C 13 9 2.25 15 11 1.75 8 4 1.00 D 18 12 2.40 20 14 2.80 20 14 2.80 E 20 12 6.00 11 3 1.50 10 2 1.00 平均 8.6 2.56 7.6 1.84 7.2 1.59 FCFS 完成时间 SPF(非抢占) SPF(抢占) 周转时间 带权周转时间 完成时间 周转时间 带权周转时间 完成时间 周转时间 带权周转时间 3. 一个逻辑空间最多可有64个页,每页1KB字节。若把它映射到由32个物理块组成的存储器。问:(1)有效的逻辑地址由多少位?(2)有效的物理地址由多少位?

此题答案为:答:一个逻辑空间有64个页,每页1KB字节。若把它映射到由32个物理块组成的存储嚣。64=26,则:

(1)逻辑地址有16位。 (2)物理地址有15位。

说明:解此题的关键是要知道在分页管理中,\页\和\块\是一样大小的,这样才知道物理存储器是32KB。

4. 对访问串:1,2,3,4,1,2,5,1,2,3,4,5,指出在驻留集大小分别为3,4时,使用FIFO和LRU替换算法的缺页次数。结果说明了什么?

此题答案为:答:首先采用FIFO,当m=3时,缺页次数=9,当m=4时,缺页次数=10。 采用LRU算法,当m=3时,缺页次数=10;当m=4时,缺页次数=8。

结果说明:FIFO有Belady奇异现象,即不满足驻留集增大,缺页次数一定减小的规律;另外在m=3时,LRU的缺页次数比FIFO要多,所以LRU算法并不总优于FIFO,还要看当前访问串的特点。

5. 在一个请求分页系统中,采用LRU页面置换算法时,假如一个作业的页面走向为4、3、2、1、4、3、5、4、3、2、1、5,当分配给该作业的物理内存块数M分别为3和4时,分别计算在访问过程中所发生的缺页次数和缺页率,并画出页面置换图。 此题答案为:

当M=3时,缺页次数为10次,缺页率为10/12=0.83=83%。 当M=4时,缺页次数为8次,缺页率为8/12=0.66=66%。

可见,增加分配给作业的内存块数可以减少缺页次数,从而降低缺页率。

6. 在分页存储管理系统中,存取一次内存的时间是8ns,查询一次快表的时间是1ns,缺页中断的时间是20ns。假设页表的查询与快表的查询同时进行,当查询页表时,如果该页在内存但快表中没有页表项,系统将自动把该页页表项送入快表。一个作业最多可保留3个页面在内存。现在开始执行一作业,系统连续对作业的2,4,5,2,7,6,4,8页面的数据进行一次存取,如分别采用FIFO算法和最优页面置换算法,求每种上存取这些数据需要的总时间。 此题答案为:答: (1)FIFO

第2页面:20+8×3 第4页面:20+8×3 第5页面:20+8×3 第2页面:8+1 第7页面:20+8×3 第6页面:20+8×3 第4页面:20+8×3 第8页面:20+8×3

因此总的时间是(20+8×3)×7+(8+1)ns (2) OPT

第2页面:20+8×3 第4页面:20+8×3 第5页面:20+8×3 第2页面:8+1 第7页面:20+8×3 第6页面:20+8×3 第4页面:8+1 第8页面:8+1

因此总的时间是(20+8×3)×5+(8+1)×3ns

6. 在一个请求分页系统中,采用LRU页面置换算法时,假如一个作业的页面走向为1、3、2、1、1、3、5、1、3、2、1、5,当分配给该作业的物理内存块数M分别为3和4时,分别计算在访问过程中所发生的缺页次数和缺页率,并画出页面置换图。 此题答案为:

当M=3时,缺页次数为6次,缺页率为6/12=0.5=50%。 当M=4时,缺页次数为4次,缺页率为4/12=0.33=33%。

可见,增加分配给作业的内存块数可以减少缺页次数,从而降低缺页率。

7. 有两个用户进程A和B,在运行过程中都要使用系统中的一台打印机输出计算结果。 (1)试说明A、B两进程之间存在什么样的制约关系?

答:A、B两进程之间存在互斥的制约关系。因为打印机属于临界资源,必须一个进程使用完之后另一个进程才能使用

(2)为保证这两个进程能正确地打印出各自的结果,请用信号量和P、V操作写出各自的有关申请、使用打印机的代码。要求给出信号量的含义和初值。

此题答案为:答:mutex:用于互斥的信号量,因为只有一台打印机,所以初值为1 进程A 进程B ... ...

P(mutex); P(mutex); 申请打印机; 申请打印机; 使用打印机; 使用打印机; V(mutex); V(mutex);

8. 设 input进程不断向缓冲区Q写入信息,output进程不断地将刚由input进程写入的信息读出。试问: (1)这两个进程有何相互制约关系?

答: 这两个进程的相互制约关系为同步关系;

(2)试用P、V操作写出这两个进程完成这项任务的代码段和信号量的含义及初值。

此题答案为:答: 设两个信号量S1和S2。其中S1表示Q是否为空,初值为1,表示Q是空的;S2表示Q中是否有信息,初值为0,表示Q中无信息。 两进程的代码段如下:

input进程 output进程 …… ……

While 信息未处理完毕 While 信息未处理完毕 { 加工一个信息; { P(S2); P(S1); 从Q中读出一个信息; 将信息放入Q中; V(S1);} V(S2);} ……

9. 假定在单道批处理环境下有5个作业,各作业进入系统的时间和估计运行时间如下表所示: 作业 进入系统时间 估计运行时间/分钟 1 8:00 40 2 8:20 30 3 8:30 12 4 9:00 18 5 9:10 5

此题答案为:(1) 如果应用先来先服务的作业调度算法,试将下面表格填写完整。 作业 进入系统时间 估计运行时间/分钟 开始时间 结束时间 周转时间/分钟 1 8:00 40 8:00 8:40 40 2 8:20 30 8:40 9:10 50 3 8:30 12 9:10 9:22 52 4 9:00 18 9:22 9:40 40 5 9:10 5 9:40 9:45 35 作业平均周转时间T= 43.4 217

(2)如果应用最短作业优先的作业调度算法,试将下面表格填写完整。

作业 进入系统时间 估计运行时间/分钟 开始时间 结束时间 周转时间/分钟 1 8:00 40 8:00 8:40 40 2 8:20 30 8:52 9:22 62 3 8:30 12 8:40 8:52 22 4 9:00 18 9:27 9:45 45

5 9:10 5 9:22 9:27 17 作业平均周转时间T= 37.2 186

10. 在请求分页系统中,某用户的编程空间为16个页面,每页1K,分配的内存空间为8K。假定某时刻该用户的页表如下图所示,试问:

(1)逻辑地址084B(H)对应的物理地址是多少?(用十六进制表示) (2)逻辑地址5000(十进制)对应的物理地址是多少?(用十进制表示) (3)当该用户进程欲访问24A0H单元时,会出现什么现象? 页号 块号 0 3 1 7 2 4 3 1 4 12 5 9 6 61 7 20

此题答案为: (1)答:104B(H) (2)答:13192

(3)答: 24A0(H)的页号为9,而其页面当前不在内存,所以会发一个缺页中断,请求系统调页。 11. 根据如下段表:

段号 基地址 长度 合法(0)/非法(1) 0 300 200 1 7500 540 2 3000 1010 3 2000 100

(1)求出逻辑地址为0,100的物理地址并将其的合法性填入上表适当位置; (2)求出逻辑地址为3,100的物理地址并将其的合法性填入上表适当位置; 此题答案为:(1)答:物理地址为:300+100=400

(2)答:物理地址为:2000+100=2100

段号 基地址 长度 合法(0)/非法(1) 0 300 200 0 1 7500 540 2 3000 1010

3 2000 100 1

2.设在一个页面大小为 1K的系统中,正在处理器上执行的一个进程的页表如图所示: 页号 0 1 2 3 4 5

1 1 0 1 0 1

状态位 1 1 0 0 0 0

访问位

0 1 0 0 0 1

修改位 物理块号

4 7 - 2 - 0

起始页号和块号均为0。

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

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);

END

Conductor: BEGIN

Goto L1;

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时刻系统状态

P1 P2 P3 P4 P5 剩余资源数

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

剩余资源数 解:(共9分,每小题3分)

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 0x1C 0x3F - 0x5D - 访问位R 1 1 0 1 0 修改位M 1 1 0 0 0 0 1 0 0 0 R1 3 R2 3 R3 0 已分配资源数量 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 A 5 5 4 4 4 最大资源需求量 B 5 3 0 2 2 A 2 C 9 6 11 5 4 A 2 4 4 2 3 B 3 已分配资源数量 B 1 0 0 0 1 C 3 C 2 2 5 4 4 表2 T0时刻系统状态

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分)

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

缺页中断次数 = 9

LRU:

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

缺页中断次数 = 7

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

块号 0 1 2 3

加载时间 访问时间 60 161 130 160 26 162 20 163

访问位R 修改位M

0 1 0 0 1 0 1 1

1. 2. 3.

FIFO算法 LRU算法 CLOCK算法

4. 当页面的访问串为:“4,0,0,0,2,4,2,1,0,3,2”的OPT算法

解:1.换出第3号虚页,因为它加载的时间最早; 2.换出第1号虚页,因为它最近最久没被访问;

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

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

———————————————————— 1 70 45 2 60 40 3 60 15

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

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

所以系统是安全的,可以进行分配。 b.

进程 最大 占有 尚需 ———————————————————————— 1 70 45 25 2 60 40 20 3 60 15 45 4 60 35 25

可用 15

可用

25

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

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

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

cars=n;

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

wait(mutex); get on; travell; get off; signal(cars); wait(mutex); until false; }

wait(mutex); start; run; stop; signal(visitors); wait(mutex); until false; }

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

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 ; }

25、设某作业占有7个页面,如果在主存中只允许装入4个工作页面(即工作集为4),作业运行时,实际访问页面的顺序是:1, 2, 3, 6, 4, 7, 3, 2, 1, 4, 7, 5, 6, 5, 2, 1。试用FIFO、LRU页面置换算法,列出各自的页面淘汰顺序和页面置换次数。假设开始时没有任何页在内存中。 (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 2 2 2 2 2

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

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

3 3 3 3 3 3 3 7 7 7 7 7 1

6 6 6 2 2 2 2 5 5 5 5 页面置换次数为:14次

26、某车站售票厅,任何时刻最多可容纳20名购票者进入,当售票厅中少于20名购票者时,则厅外的购票者可立即进入,否则需在外面等待。若把一个购票者看作一个进程,请回答下列问题:

(1)用wait和signal操作管理这些并发进程时,应怎样定义信号量,写出信号量的初值以及信号量各种取值的含义。

(2)根据所定义的信号量,加上wait和signal原语,写出购票者进程的算法,以保证进程能够正确地并发执行。 (3)若欲购票者最多为n个人,写出信号量可能的变化范围(最大值和最小值)。 解:(1)定义一信号量S,初始值为20。 意义:

S>0 S的值表示可继续进入售 票厅的人数 S=0 表示售票厅中已有20名顾 客(购票者) S<0 |S|的值为等待进入售票 厅的人数 (2) int S=20;

COBEGIN PROCESS PI(I=1,2,……) begin 进入售票厅; wait(S); 购票; signal(S); 1. 退出;

end; COEND (3)S的最大值为20 S的最小值为20-n

设 input进程不断向缓冲区Q写入信息,output进程不断地将刚由input进程写入的信息读出。试问: (1) 这两个进程有何相互制约关系?

(2) 试用P、V操作写出这两个进程完成这项任务的代码段和信号量的含义及初值。 答:(1)这两个进程的相互制约关系为同步关系;

(2)设两个信号量S1和S2。其中S1表示Q是否为空,初值为1,表示Q是空的;S2表示Q中是否有信息,初值为0,表示Q中无信息。 两进程的代码段如下: input进程 { …… while 信息未处理完毕 { 加工一个信息; P(S1); 将信息放入Q中; V(S2); …… } 2. 两个并发执行的进程A和B的程序如下: 进程A while(true) { N=N+5; } 进程B while(true) { 打印N的值; N=0; } output进程 { …… while 信息未处理完毕 { P(S2); 从Q中读出一个信息; V(S1); …… } 其中N为整数,初值为4。若进程A先执行了三个循环后,进程A和进程B又并发执行了一个循环,写出可能出现的打印值。正确的打印值应该是多少?请用P、V操作进行管理,使进程A和B并发执行时不会出现与时间有关的错误。

答: 因为N初值为4,若进程A先执行了三个循环,此时N的值为19。当进程A和进程B并发执行时可能会有如下两种执行次序,即进程A先执行一次循环,然后再进程B执行一次循环,此时打印的是正确值24,执行后N中的值为0。但若进程B先执行一次循环,然后再进程A执行一次循环,则打印的值是19,执行后N中的值是5。这是错误的,即发生了与时间有关的错误。用P、V操作进行管理,使进程A和B并发时不会出现与时间有关的错误的程序如下:(S为互斥信号量,初值为1), 进程A while(true) { P(S); N=N+5; V(S); } 进程B while(true) { P(S); 打印N的值; N=0; V(S); } 3. 假定在单道批处理环境下有5个作业,各作业进入系统的时间和估计运行时间如下表所示: 作业 进入系统时间 估计运行时间/分钟

1 2 3 4 5 作业 1 2 3 4 5 8:00 8:20 8:30 9:00 9:10 进入系统时间 8:00 8:20 8:30 9:00 9:10 40 30 12 18 5 估计运行时间/分钟 开始时间 结束时间 40 30 12 18 5 8:00 8:40 9:10 9:22 9:40 8:40 9:10 9:22 9:40 9:45 周转时间/分钟 40 50 52 40 35 (1) 如果应用先来先服务的作业调度算法,试将下面表格填写完整。 作业平均周转时间T=

(2)如果应用最短作业优先的作业调度算法,试将下面表格填写完整。 作业 1 2 3 4 5 进入系统时间 8:00 8:20 8:30 9:00 9:10 估计运行时间/分钟 开始时间 结束时间 40 30 12 18 5 8:00 8:52 8:40 9:27 9:22 8:40 9:22 8:52 9:45 9:27 周转时间/分钟 40 62 22 45 17 作业平均周转时间T= 答:(1)应用先来先服务的作业调度算法,表格填写如下: 作业 1 2 3 4 5 进入系统时间 8:00 8:20 8:30 9:00 9:10 估计运行时间/分钟 开始时间 结束时间 40 30 12 18 5 8:00 8:40 9:10 9:22 9:40 8:40 9:10 9:22 9:40 9:45 周转时间/分钟 40 50 52 40 35 作业平均周转时间T=43.4 217

(2)应用最短作业优先的作业调度算法,表格填写如下: 作业 1 2 3 4 5 进入系统时间 8:00 8:20 8:30 9:00 9:10 估计运行时间/分钟 开始时间 结束时间 40 8:00 8:40 30 12 18 5 8:52 8:40 9:27 9:22 9:22 8:52 9:45 9:27 周转时间/分钟 40 62 22 45 17 作业平均周转时间T=37.2 186

4. 若在一分页存储管理系统中,某作业的页表如下所示.已知页面大小为1024字节,试将逻

辑地址1011,2148,4000,5012转化为相应的物理地址. ( 十进制除以1024 得出的整数(有余数)对应表格页号,得出相应的物理块号,

对应的物理块号*1024+余数=物理地址) 页号 0 1 2 3 物理块号 2 3 1 6 答:本题中,为了描述方便,设页号为P,页内位移为D,则:

对于逻辑地址1011,P=INT(1011/1024)=0,D=1011 mod 1024=1011,查页表第0页在第2块,所以物理地址为3059.

对于逻辑地址2148,P=INT(2148/1024)=2,D=2148 mod 1024=100,查页表第2页在第1块,所以物理地址为1124.

对于逻辑地址4000,P=INT(4000/1024)=3,D=4000 mod 1024=928,查页表第3页在第6块,所以物理地址为7072.

对于逻辑地址5012,P=INT(5012/1024)=4,D=5012 mod 1024=916,因页号超过页表长度,该逻辑地址非法.

5. 根据如下段表: 段号 0 1 2 3 基地址 300 7500 3000 2000 长度 200 540 1010 100 合法(0)/非法(1) (1) 求出逻辑地址为[0,100]的物理地址并将其的合法性填入段上表适当位置; (2) 求出逻辑地址为[3,100]的物理地址并将其的合法性填入上表适当位置; 答:(1)物理地址为:300+100=400,合法性如下表所示。 (2)物理地址为:2000+100=2100,合法性如下表所示。 段号 0 1 2 3 6. 在一个采用页式虚拟存储管理的系统中,有一用户作业,它依次要访问的字地址序列

是:115,228,120,088,446,102,321,432,260,167,若该作业的第0页已经装入主存,现分配给该作业的主存共300字,页的大小为100字,请回答下列问题:

(1)按FIFO调度算法将产生 次缺页中断,依次淘汰的页号为 ,缺页中断率为 . (2)按LRU调度算法将产生 次缺页中断,依次淘汰的页号为 ,缺页中断率为 . 答:(1)按FIFO调度算法将产生5次缺页中断 ;依次淘汰的页号为:0,1,2; 缺页中断率为:5/10=50%

(2)按LRU调度算法将产生6次缺页中断;依次淘汰的页号为:2,0,1,3; 缺页中断率为:6/10=60%

22

基地址 300 7500 3000 2000 长度 200 540 1010 100 合法(0)/非法(1) 0 1

7. 某系统的进程状态图如下

(1)说明一个进程发生变迁1、3、4的原因是什么?

(2)下述因果变迁是否会发生?如果有可能的话,在什么情况下发生? A)1-> 3 B)2->4 C) 4->1 D) 5->1 E) 3->2

运行 2 因I/O等待 低优先就绪 3 1 5 4 高优先就绪

解:(1)发生变迁1的原因是:当CPU空闲且高优先就绪队列中有进程,则从高优先就绪队列调一个进程到CPU上去执行。

发生变迁3的原因是:当一个在CPU上运行的进程用完它的时间片时,立即退出CPU而进入低优先就绪队列。 发生变迁4的原因是:一个正在CPU上运行的进程需要输入或者输出数据时,退出CPU 而进入等待队列。

(2)A)和B)的因果变迁不可能发生。C)、D)和E)有可能发生,其原因是:

C)4->1:一个正在CPU上运行的进程需要输入或者输出数据时,退出CPU 而进入等待队列,CPU空闲,这时若高优先就绪队列中有进程,则发生调度1。

D) 5->1:当高优先就绪队列和CPU都处于空闲状态时,一个处于等待状态的进程被唤醒进入高优先就绪队列后立即被调度到CPU上去执行。 E) 3->2:当一个在CPU上运行的进程用完它的时间片退出CPU而进入低优先就绪队列时,若高优先就绪队列为空,则立即发生2(即调度低优先就绪队列中的一个进程到CPU上去执行)

23

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

Top