1、一单元 12. 试在交互性,及时性和可靠性方面,将分时系统与实时系统进行比较. a. 分时系统是一种通用系统,主要用于运行终端用户程序,因而它具有较强的交互能 力;而实时系统虽然也有交互能力,但其交互能力不及前。 b. 实时信息系统对实用性的要求与分时系统类似,都是以人所能接收的等待时间来确 定;而实时控制系统的及时性则是以控制对象所要求的开始截止时间和完成截止时 间来确定的,因此实时系统的及时性要高于分时系统的及时性。 c. 实时系统对系统的可靠性要求要比分时系统对系统的可靠性要求高。 13. OS 具有哪几大特征?它的最基本特征是什么? a. 并发性、共享性、虚拟性、异步性。 b. 其中最
2、基本特征是并发和共享。 (重特是并发性) 二单元 6. 试从动态性,并发性和独立性上比较进程和程序? a. 动态性是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到资 源而暂停执行,以及由撤销而消亡,因而进程由一定的生命期;而程序只是一组有 序指令的集合,是静态实体。 b. 并发性是进程的重要特征,同时也是 OS 的重要特征。引入进程的目的正是为了使 其程序能和其它建立了进程的程序并发执行,而程序本身是不能并发执行的。 c. 独立性是指进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资源 和独立调度的基本单位。而对于未建立任何进程的程序,都不能作为一个独立的单 位来运行
3、。 8. 试说明进程在三个基本状态之间转换的典型原因. a. 处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程便由就绪状态 变为执行状态。 b. 当前进程因发生某事件而无法执行,如访问已被占用的临界资源,就会使进程由执 行状态转变为阻塞状态。 c. 当前进程因时间片用完而被暂停执行,该进程便由执行状态转变为就绪状态。 10、在进行进程切换时,所要保存的处理机状态信息主要有哪些? a. 进程当前暂存信息; b. 下一条指令地址信息; c. 进程状态信息; d. 过程和系统调用参数及调用地址信息. 17. 为什么进程在进入临界区之前应先执行“进入区”代码?而在退出前又要执行“退出 区”
4、代码? 为了实现多个进程对临界资源的互斥访问,必须在临界区之前加一段用 于检查临界资源是否正在被访问的代码,如未被访问,该进程可进入临界区对此临界资源 进行访问;如正被访问,则该进程不能进入临界区访问临界资源。 在退出临界区后,执行恢复访问标志的代码为“退出区” ,而在退出前执行“退出区”代码 主要是为了使其它进程能再访问此临界资源。 20、你认为整型信号量机制和记录型信号量机制,是否完全遵循了同步机构的四条准则? a. 在整型信号量机制中,未遵循“让权等待“的准则. b. 记录型信号量机制完全遵循了同步机构的“空闲让进,忙则等待,有限等待,让权等待“ 四条准则. 25. 我们为某临界资源设置
5、一把锁 W,当 W=1 时表示关锁;当 W=0 时表示锁已打开,试 写出开锁和关锁原语,并利用它们去实现互斥。 整型信号量:lock(W): while W=1 do no-op W:=1; unlock(W): W:=0; 记录型信号量:lock(W): W:=W+1; if(W1) then block(W.L) unlock(W): W:=W-1; if(W0) then wakeup(W.L) 例子: Var W:semaphore:=0; begin repeat lock(W); critical section unlock(W); remainder section until
6、 false; end 35、消息队列通信机制有哪几方面的功能? (1) 、利用数据结构的消息缓冲区;(2) 、在进程的 PCB 中增加消息队列对手指针; (3) 、利用 send 原语发送进程; (4) 、利用 receive 原语接收消息。 38. 试从调度性,并发性,拥有资源及系统开销方面对进程和线程进行比较. a. 调度性。在传统的操作系统中,拥有资源的基本单位和独立调度、分派的基本单位 都是进程,在引入线程的 OS 中,则把线程作为调度和分派的基本单位,而把进程 作为资源拥有的基本单位; b. 并发性。在引入线程的 OS 中,不仅进程之间可以并发执行,而且在一个进程中的 多个线程之间
7、,亦可并发执行,因而使 OS 具有更好的并发性; c. 拥有资源。无论是传统的操作系统,还是引入了线程的操作系统,进程始终是拥有 资源的一个基本单位,而线程除了拥有一点在运行时必不可少的资源外,本身基本 不拥有系统资源,但它可以访问其隶属进程的资源; d. 开销。由于创建或撤销进程时,系统都要为之分配和回收资源,如内存空间等,进 程切换时所要保存和设置的现场信息也要明显地多于线程,因此,操作系统在创建、 撤消和切换进程时所付出的开销将显著地大于线程。 三单元 10. 试比较 FCFS 和 SPF 两种进程调度算法 相同点:两种调度算法都是既可用于作业调度,也可用于进程调度; 不同点:FCFS
8、调度算法每次调度都是从后备队列中选择一个或是多个最先进入该队列 的作业,将它们调入内存,为它们分配资源,创建进程,然后插入到就绪队列中。该 算法有利于长作业/进程,不利于短作业/进程。SPF 调度算法每次调度都是从 后备队列中选择一个或若干个估计运行时间最短的作业,将它们调入内存中运 行。该算法有利于短作业/进程,不利于长作业/进程。 18. 何谓死锁?产生死锁的原因和必要条件是什么? a.死锁是指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将永远 不能再向前推进; b.产生死锁的原因有二,一是竞争资源,二是进程推进顺序非法; c.必要条件是: 互斥条件,请求和保持条件,不剥夺
9、条件和环路等待条件。 22. 在银行家算法中,若出现下述资源分配情: Process Allocation Need Available P0 0032 0012 P1 1000 1750 P2 1354 2356 P3 0332 0652 P4 0014 0656 1622 试问: 该状态是否安全? 若进程 P2 提出请求 Request(1,2,2,2)后,系统能否将 资源分配给它? 该状态是安全的,因为存在一个安全序列。下表为该时刻的安全序列表。 资源情况 进程 Work Need Allocation Work+Allocation Finish P0 P3 P4 P1 P2 1 6
10、2 2 1 6 5 4 1 9 8 7 1 9 9 11 2 9 9 11 0 0 1 2 0 6 5 2 0 6 5 6 1 7 5 0 2 3 5 6 0 0 3 2 0 3 3 3 0 0 1 4 1 0 0 0 1 3 5 4 1 6 5 4 1 9 8 7 1 9 9 11 2 9 9 11 3 12 14 17 true true true true true 若进程 P2 提出请求 Request(1,2,2,2)后,系统不能将资源分配给它,若分配给进程 P2,系统还剩的资源情况为(0,4,0,0) ,此时系统中的资源将无法满足任何一个进程 的资源请求,从而导致系统进入不安全状态
11、,容易引起死锁的发生。 1. 为什么要配置层次式存储器? 这是因为:a.设置多个存储器可以使存储器两端的硬件能并行工作。 b.采用多级存储系统,特别是 Cache 技术,这是一种减轻存储器带宽对系统性能影响的最 佳结构方案。c.在微处理机内部设置各种缓冲存储器,以减轻对存储器存取的压力。增加 CPU 中寄存器的数量,也可大大缓解对存储器的压力。 3. 何为静态链接?何谓装入时动态链接和运行时动态链接? a.静态链接是指在程序运行之前,先将各自目标模块及它们所需的库函数,链接成一个完 整的装配模块,以后不再拆开的链接方式。 b.装入时动态链接是指将用户源程序编译后 所得到的一组目标模块,在装入内
12、存时,采用边装入边链接的一种链接方式,即在装入一 个目标模块时,若发生一个外部模块调用事件,将引起装入程序去找相应的外部目标模块, 把它装入内存中,并修改目标模块中的相对地址。 c.运行时动态链接是将对某些模块的 链接推迟到程序执行时才进行链接,也就是,在执行过程中,当发现一个被调用模块尚未 装入内存时,立即由 OS 去找到该模块并将之装入内存,把它链接到调用者模块上。 6. 为什么要引入动态重定位?如何实现? a.程序在运行过程中经常要在内存中移动位置,为了保证这些被移动了的程序还能正常 执行,必须对程序和数据的地址加以修改,即重定位。引入重定位的目的就是为了满足 程序的这种需要。 b.要在
13、不影响指令执行速度的同时实现地址变换,必须有硬件地址变换机构的支持,即 须在系统中增设一个重定位寄存器,用它来存放程序在内存中的起始地址。程序在执行 时,真正访问的内存地址是相对地址与重定位寄存器中的地址相加而形成的。 14、说明引入分段存储管理是为了满足用户哪几个方面的需要? (1)方便编程;(2)信息共享 (3) 信息保护 (4)动态增长 (5)动态链接 15、 19. 虚拟存储器有哪些特征?其中最本质的特征是什么? 特征:离散性、多次性、对换性、虚拟性; 最本质特征:离散性;最重要特征:虚拟性 26. 在一个请求分页系统中,采用 FIFO 页面置换算法时,假如一个作业的页面走向为 4、3
14、、 2、1、4、3、5、4、3、2、1、5,当分配给该作业的物理块数 M 分别为 3 和 4 时,试计算 在访问过程中所发生的缺页次数和缺页率,并比较所得结果。 4 3 2 1 4 3 5 4 3 2 1 5 4 4 4 1 1 1 5 5 5 3 3 3 4 4 4 2 2 2 2 2 3 3 3 1 4 4 4 4 5 5 5 5 1 1 3 3 3 3 4 4 4 4 5 2 2 2 2 3 3 3 3 1 1 1 1 2 2 2 M=3 时,采用 FIFO 页面置换算法的缺页次数为 9 次,缺页率为 75%; M=4 时,采用 FIFO 页面置换算法的缺页次数为 10 次,缺页率为 8
15、3%。 由此可见,增加分配给作业的内存块数,反而增加了缺页次数,提高了缺页率,这种现象 被称为是 Belady 现象。 注:缺页就是没有重复的页面,即没有重复的页面共有 N 页,就缺页 N 次 第五单元 M=3 M=4 2、为了实现 CPU 与设备控制器间的通信,设备控制器应具备哪些功能?P162-P163 答:基本功能:接收和识别命令;数据交换;标识和报告设备的状态;地址识别;数据缓 冲;差错控制; 7. 有哪几种 I/O 控制方式?各适用于何种场合? I/O 控制方式:程序 I/O 方式、中断驱动 I/O 控制方式、DMAI/O 控制方式、I/O 通道控制 方式。程序 I/O 方式适用于早
16、期的计算机系统中,并且是无中断的计算机系统;中断驱动 I/O 控制方式是普遍用于现代的计算机系统中;DMA I/O 控制方式适用于 I/O 设备为块设 备时在和主机进行数据交换的一种 I/O 控制方式;当 I/O 设备和主机进行数据交换是一组 数据块时通常采用 I/O 通道控制方式,但此时要求系统必须配置相应的通道及通道控制器。 第五章 9、引入缓冲的主要原因是什么? (1) 、缓和 CPU 与 I/O 设备间速度不匹配的矛盾; (2) 、减少对 cpu 的中断频率,放宽 对中断响应时间的限制; (3) 、提高 cpu 与 I/O 设备间的并行性。 15. 为什么要引入设备独立性?如何实现设备
17、独立性? 引入设备独立性,可使应用程序独立于具体的物理设备,是设备分配具有灵活性。另外容 易实现 I/O 重定向。 为了实现设备独立性,必须在设备驱动程序之上设置一层设备独 立性软件,用来执行所有 I/O 设备的公用操作,并向用户层软件提供统一接口。关键是系 统中必须设置一张逻辑设备表 LUT 用来进行逻辑设备到物理设备的映射,其中每个表目中 包含了逻辑设备名、物理设备名和设备驱动程序入口地址三项;当应用程序用逻辑设备名 请求分配 I/O 设备时,系统必须为它分配相应的物理设备,并在 LUT 中建立一个表目,以 后进程利用该逻辑设备名请求 I/O 操作时,便可从 LUT 中得到物理设备名和驱动
18、程序入口 地址。 25、28 第六章 2、文件系统的模型可分为三层,试说明其每一层所包含的基本内容。P206 图要画 答:1、对象及其属性:文件、目录、硬盘(磁带)存储空间;2、对对象操纵和管理的软 件集合:文件管理系统的核心部分;3、文件系统的接口:命令接口、程序接口; 15什么是索引文件?为什么要引入多级索引? 目前广泛采用的目录结构是树型目录结构。它具有以下优点: 能有效提高对目录的检索速度; 允许文件重名; 便于实现文件共享。 24某操作系统的磁盘文件空间共有 500 块,若用字长为 32 位的位示图管理磁盘空间,试 问: 位示图需要多少字? 第 i 字第 j 位对应的块号是多少? 给出申请/归还一块的工作流程。 500/32z=16 个字 b=(i-1)*32+j=32(i-1)+j (b 从 1 开始计数,i ,j 也从 1 开始计数 ) 根据盘块号 b 求出: i = (b-1)/32 + 1; j = (b-1)%32 + 1; 将第 i 字第 j 位置 0