《操作系统简答题要点.pdf》由会员分享,可在线阅读,更多相关《操作系统简答题要点.pdf(12页珍藏版)》请在三一文库上搜索。
1、运行 就绪 阻塞 调度 时 间 片 I/O 请求 I/O 完成 1试述现代操作系统的基本特征 (1)并发性:并发指的是在操作系统中存在着许多同时的或并行的活动。例如,在多道程 序设计的环境下,各个程序同时在处理机上交替、穿插地执行。 (2)共享性:系统中存在的各种并发活动,要求共享系统的硬、软件资源。 (3)虚拟性:虚拟指的是讲一个物理实体映射为若干个逻辑实体。前者是客观存在的,后 者是虚构的。例如,在多道程序系统中,虽然只有一个CPU,每一时刻只能执行一道程序, 但采用多道技术之后,在一段时间间隔内,宏观上有多个程序在运行。在用户看来,就好像 有多个 CPU 在各自运行自己的程序。 (4)不
2、确定性:1.程序执行结果不确定,程序执行结果不能再现。同一程序,对给定相同 的初始数据,在相同的环境下运行,多次运行可能得到完全不同的结果。2. 多道程序设计 环境下,程序按异步方式运行。也就是说,每道程序在何时执行、各个程序执行的顺序以及 每到道程序所需的时间都是不确定的,也是不可预知的。 (有疑惑) 2.试述操作系统与用户接口并举例说明。 概念:为了方面用户对计算机系统的使用和编程,操作系统向用户提供了用户与操作系统的 接口, 简称为用户接口。操作系统提供了两类接口:一类是程序级接口,即系统调用或称操 作系统应用程序接口;另一类是作业控制级接口,即键盘控制命令与作业控制命令。 作业控制级接
3、口(即命令程序):分为脱机用户接口和联机用户接口。脱机用户接口由一组 作业控制命令或称作业控制语言组成。联机接口由一组操作系统命令组成,用于联机作业的 控制。例如,系统管理、环境设置、权限管理、文件管理等。 3.画出进程状态转换图并作必要文字说明。 进程调度的基本调度状态及其转换 文字说明:( 1)运行状态。进程已获得必要的资源,并占有一个处理机,处理机正在执行该 进程的程序。 (2)就绪状态。如果进程已具备了运行条件,但由于处理机已被其他进程占用,因此暂时 不能运行,而等待分配处理机,则称该进程处于就绪状态,有时也称可运行状态。 (3)阻塞状态。进程在运行过程中,因等待某一事件而暂时不能运行
4、的状态,称为阻塞状 态,即进程的运行受到了阻塞。此时,及时处理机“空闲”,也无法使用。这种状态也可称 为不可运行状态。 进程的各种调度状态,可以根据一定的条件而发生变化。处于运行状态的进程可能因某种事 件的发生而变成阻塞状态。相应事件发生之后,该进程可以从阻塞状态变成就绪状态。当系 统的进程调度程序把处理机分配给某一就绪状态的进程时,它就从就绪状态进入运行状态。 4.什么是信号量?什么是P、V 操作? (1)在操作系统中,信号量是表示资源的实体,是一个与队列有关的整型变量,其值仅能 有 P、 V 操作来改变。操作系统利用信号量对进程和资源进行控制和管理。 (2)P、V 操作是定义在信号量S上的
5、两个操作,其定义如下: P(S): 1 S:=S-1; 2若 S=0,则调用 P(S)的进程继续运行; 3 若 S0,则调用V(S)的进程继续运行; 3 若 S =0,从等待信号量S 的阻塞队列中唤醒头一个进程,然后调用V(S) 的进程继 续运行。 5:什么是进程互斥?如何实现互斥? 答:进程是操作系统结构的基础,是一个正在执行的程序,用来描述系统和用户的程序活动。 两个或两个以上进程由于不能同时使用同一临界资源,只能一个进程使用完了,另一个进程 才能使用,这种现象称为进程互斥。 (1).空闲让进当临界资源处于空闲状态,允许一个请求进入临界区的进程立即进入 临界区,从而有效的利用资源。 (2)
6、.忙则等待已经有进程进入临界区时,意味着相应的临界资源正在被访问,所以 其他准备进入临界区的进程必须等待,来保证多进程互斥。 (3).有限等待对要求访问临界资源的进程,应该保证该进程能在有效的时间内进入 临界区,防止死等状态。 (4).让权等待当进程不能进入临界区,应该立即释放处理机,防止进程忙等待。 6:存储管理的主要研究课题是什么? 答:存储管理研究课题可归纳为四个方面: (1) :存储分配问题:重点是研究存储共享和各种分配算法。 (2) :地址再定位问题:研究各种地址变换机构,以及静态和动态再定位方法。 (3) :存储保护问题:研究保护各类程序,数据区的方法。 (4) :存储扩充问题:主
7、要研究虚拟存储问题及其各种调度算法。 7:试述文件管理的功能和文件系统的组成。 答:文件系统主要实现了对文件存储器的空间的组织和分配,对文件信息的存储,以及对存 入的文件进行保护和检索。文件管理部分的功能有四点:1.文件的结构及有关存取方法;2. 文件的目录机构和有关处理;3.文件存储空间的管理;4.文件的共享和存取控制; 文件系统由三部分组成:与文件管理有关的软件、被管理的文件以及实施文件管理所需的数 据结构。 8 什么是死锁,产生死锁的原因和必要条件是什么? (1)当某一进程提出资源的使用要求后,使得系统中一些进程处于无休止的阻塞状态, 在无外力的作用下,这些进程永远也不能继续前进。我们称
8、这种现象为死锁。 (2)原因: 资源竞争和进程推进速度。一个进程在其运行过程中可以提出使用多个资源 的要求, 仅当指定的全部资源都满足时,进程才能继续运行而到达终点,否则该进程因得不 到所要求的资源而处于阻塞状态,当两个或两个以上的进程同时对多个互斥资源提出使用要 求时,有可能导致死锁。当进程争夺资源时,有可能产生死锁,但不一定就会死锁。这取决 于各进程推进的速度和对资源请求的顺序,从而说明死锁是一种与时间有关的错误。 (3)必要条件:(1)互斥控制:进程对其所要求的资源进行排它控制,一个资源仅能被 一个进程独占。( 2)非剥夺控制: 进程所获得的资源在未被释放之前,不能被其它进程剥夺, 即使
9、该进程处于阻塞状态,它所占用的资源也不能被其它进程使用,而其他进程只能等待该 资源的释放。 (3)逐次请求 :进程以随意的零星方式逐次取得资源,而不是集中性的一次请 求,这样有利于提高资源的利用率。(4)环路条件:在发生死锁时,其有向图必构成环路, 即前一进程保持着后一进程所要求的资源。 9 试述文件的物理结构和存取方法的概念及相互关系? (1)物理结构:文件的物理结构是指逻辑文件在文件存储器上的存储结构。 (2)所谓文件的存取方法,是指读写文件存储器上的一个物理块的方法。通常有三类存取 方法:顺序存取法,直接存取法和按键存取法。 (3)文件的物理结构密切依赖于文件存储器的特性和存取方法。究竟
10、采用何种物理结构和 存取方法, 要看系统的应用范围和文件的使用情况。如果采用顺序存取方法,则连接, 串接, 索引, 连续等几种结构都可存取。如果采用直接存取法,则索引文件效率最高,连续文件效 率剧中,串联文件效率最低。 10 试述外部设备的体系结构与设备分配算法?(有疑惑) A、I/O 设备的分类: (1)按使用特性分类。分为存储设备,输入/输出设备,终端设备和脱机设备。169 页图 6.1 (2)按所属关系分类,分为系统设备和用户设备。 (3)按资源分配角度分类,分为独占设备,共享设备,虚拟设备。 (4)按传输数据数量分类,分字符设备和块设备。 B、I/O 设备的分配算法 ( 1)先请求先服
11、务。 当有多个进程对同一设备提出I/O 请求时, 该算法是把所有发出I/O 请求的进程,按其发出请求的先后顺序排成一个等待该设备的队列。I/O 调度程序把I/O 设 备分配给该队列中的第一个进程。 (2)优先级高者优先。在进程调度中优先级高者,优先获得处理机。如果在I/O 调度中, 对优先级高者优先满足它的I/O 请求, 这也是非常合理的。因为这样做有利于尽快地结束该 进程,从而尽早地释放它所占有的资源。 11、试述设备管理的软件体系结构。 答:为了实现I/O 系统的四个目标:设备无关性、错误处理、同步/一部传输和必须能够处 理独占设备和共享设备的I/O 操作, I/O 系统应组织成以下四个层
12、次:( 1)中断处理程序; (2)设备驱动程序; (3)与设备无关的I/O 软件;(4)用户空间的I/O 软件; 12、为什么说通道技术是现代操作系统的主要硬件支持?简要说明通道的工作原理。 答: (1) 、采用通道技术解决了I/O 操作的独立性和各部件工作的并行性,把CPU 从繁琐的 输入输出操作中解放出来,能实现CPU 与通道的并行操作,而且通道与通道间也能实现并 行操作,各通道上的外设也能实现并行操作,从而大大提高计算机系统的效率。 (2) 、工作原理(采用通道技术后,I/O 操作过程为) :CPU 在执行用户程序时如果遇到I/O 请求,则它用I/O 指令启动指令通道上选址的设备,一旦启
13、动成功,通道开始控制设备进行 操作。当设备I/O 操作完成后,由通道发出I/O,结束中断, CPU 停止当前工作,转向中断 处理程序。 13、为什么说进程是操作系统的核心概念?进程与程序有何异同? 答: (1) 、因为几乎操作系统的所有内容都离不开进程这一概念,进程是操作系统中最基本 的元素,是操作系统中资源分配的基本单位,也是进程调度的基本单位。 (2)进程与程序的区别: a、进程是程序的一次执行,属于一种动态概念,而程序是一组有序的指令,是一种静 态的概念。 但是进程离开了程序也就失去了存在的意义。因此,我们可以说进程是程序的 动态过程,而程序是进程运行的静态文本。 b、一个进程可以执行一
14、个或几个程序;反之,同一个程序可能由几个进程同时执行。 c、程序可以作为一种软件资源长期保留,而进程是程序的一次执行过程,是暂时的。 d、 进程具有并发性, 它能与其它进程并发运行。而一般的程序不具有这种明显的特性。 e、 进程是一个独立的运行单位,也是系统进行资源分配和调度的一个独立单位。因此, 进程具有独立性。出来独立性一面之外,另一方面进程间又具有相互制约性,这种特性变现 为进程之间的同步与互斥。 程序是进程的一部分,是进程的实体。 14. 试比较请求页式存储管理和段式存储管理的异同? 答: 异:段式存储管理:分段由用户设计划分,每段对应一个相应的的程序模块, 有完整的逻辑意义。段面是信
15、息的逻辑单位。便于段的共享, 执行时按需动态链接装入。 段长不等,可动态增长,有利于新数据增长。二维地址空间:段名、段中地址;段号、 段内单元号。管理形式上象页式,但概念不同。 请求页式存储管理:分页用户看不见,由操作系统为内存管理划分。页面是信息 的物理单位。页一般不能共享。页面大小相同,位置不能动态增长。一维地址空间。往 往需要多次缺页中断才能把所需信息完整地调入内存。 同:实现页(段)的共享是指某些作业的逻辑页号(段号)对应同一物理页号(内 存中该段的起始地址)。页(段)的保护往往需要对共享的页面(段)加上某种访问权 限的限制,如不能修改等;或设置地址越界检查,对于页内地址(段内地址)大
16、于页长 (段长)的存取,产生保护中断。 15. 有哪几种方案可以实现虚拟存储器,简要说明其工作原理? 答:1.请求分页存储管理: (1) 页框:物理地址分成大小相等的许多区,每个区称为一块; (2)址分成大小相等的区,区的大小与块的大小相等,每个称一个页面。 (3) 逻辑地址形式:与此对应,分页存储器的逻辑地址由两部分组成,页号和单 元号。 (4)页表和地址转换:采用的办法是动态重定位技术,让程序的指令执行时作地 址变换。 2. 分段存储管理: 一个用户作业的程序按其逻辑结构可划分为若干段,这些段中的每一段都是完整 的。在分段存储管理系统中,可以用类似于分页管理用过的地址变换机构,实现分段管
17、理的地址变换。这里使用的是段变换表SMT,它把作业地址空间变换为物理存储空间, 作用地址空间的段与主存中的段大小相等,地址变换是在作业执行过程中由硬件自动完 成的。 3. 段页式存储管理: 是基本分段存储管理方式和基本分页存储管理方式原理的结合,即先将用户程 序分成若干个段,再把每个段分成若干个页,并为每一个段赋予一个段名。 16. 什么是文件目录,操作系统如何通过文件目录进行文件操作? 答:系统中文件种类繁多,数量庞大,为了使用户方便地找到所需文件,需要在系统中 建立一套目录机构。这套能方便而迅速地对目录进行检索,从而能准确地找到所需文件 的目录机构即为文件目录。 通常情况下, 系统会为文件
18、目录建立一个简单的索引表,只包含文件的ID、文件名、 文件当前状态(可读/可写 /不可访问)及一个指向对应文件目录表项的指针。 系统在对一个文件进行读写的操作过程如下: ( 1)根据提供的文件名查找对应的文件索引表; ( 2)根据索引表指针找到对应的目录项; ( 3)根据目录项的物理地址项找到文件; ( 4)修改文件索引表中文件的当前状态(若系统只读文件,不进行修改,则标记为 可读,若系统要对文件进行修改,则标记为不可访问); ( 5)将文件读入内存,对文件进行读写操作; ( 6)操作完毕,释放文件,修改索引表中文件的状态; 1.生产者消费者问题P72 (1)设置两个私用信号量和一个公用信号量
19、 公用信号量 S,初值为 1,表示没有进程进入临界区,它用于实现 进程互斥; 私用信号量 S0,用于表示产品数目,初值为0; 私有信号量 Sn,用于表示可用缓冲区数,初值为n; (2)生产者消费者进程描述入下: 生产者进程消费者进程 生产一种产品P(S0) P(Sn)P(S) P(S)从缓冲区取一种产品 产品送入缓冲区V(Sn) V(S0)V(S) V(S)消耗该产品 (3)生产者和消费者可按如下算法进行: begin B:array0 n-1 of integer; P,R:integer; S ,Sn, S 0:semaphore; P:=R:=0; S:=1; Sn:=n; S0:=0;
20、 cobegin process producer i(i=1,2 .,m) begin L1: produce a product; P(Sn); P(S); BP:=product; P:=(P+1)mod n; V(S0); V(S); go to L1; end; process consumer j(j=1,2, ,k); begin L2:P(S0); P (S); take a product from BR; R:=(R+1) mod n; V(Sn); V(S); consume go to 12; end; coend; end; 2 读者和写者问题 P74 (1)写者优先
21、的程序中,信号量S,初值为 1,用于读者与写者或写者 与写者之间的互斥; (2)Sn,初值为 n,表示系统中最多有n 个进程可同时进行读操作。 begin S,Sn:Semaphore; S:=1; Sn=n; cobegin Process Reader i(i=1,2 ,n) begin P(S); P(Sn); V(S); read file F; V(Sn) end; Process Writer j(j=1,2,k) begin P(S) for i:=1 to n do P(Sn); Writer file F; for i:=1 to n do V(Sn); V(S) end;
22、coend; end; P94 (24) 3.有一阅览室,读者进入时必须先在一张登记表上进行登记。该表为每一座位列 出一个表目,包括座号、姓名。读者离开时要撤销登记信息。阅览室有100个座 位,试问: (1)为描述读者的动作,应编写几个程序,应该设置几个进程?进程和程序之 间的对应关系如何? (2)试用 P、V 操作描述这些进程间的同步算法。 答:Semaphore zmess=100; 座位资源 Semaphore mutex=1; 登记表资源 Main() cobegin reader_entry();读者进入 reader_exit();读者离开 Coend Reader_entry()
23、 While(true) P(zmess); P(mutex); Sit and read; V(mutex); Reader_exit() While(true) P(mutex); Mod table V(mutex); V(zmess); P94(28) 4桌上有一只盘子,每次只能放入一个水果。爸爸专向盘中放苹果,妈妈专向盘中放橘子, 一个女儿专等吃盘中的苹果,一个儿子专等吃盘中的橘子。试用P、V操作写出他们能同步 的程序。 Main() Int Sp=1; / 是否有空盘子 Int Sa=0;/ 盘中是否有苹果 Int So=0 ; / 盘中是否有橘子 Pf( ) ; Pm( ) ;
24、Pd( ) ; Ps( ) ; Pf( ) P(Sp) ; 向盘中放苹果; V(Sa) ; Pm( ) P(Sp) ; 向盘中放橘子; V(So) ; Pd( ) P(Sa) ; 取盘中的苹果; V(Sp) ; Ps( ) P(So) ; 取盘中的橘子; V(Sp) ; 5. 哲学家就餐问题 有五个哲学家坐在一圆桌旁,桌中央有一盘通心面,每个人面前有一只空盘子, 每两人之间放一把叉子。每个哲学家思考、饥饿,然后吃通心面。但是,每个哲 学家必须获得两把叉子(只能从自己左边和右边去取叉子),才能吃到通心面。 begin S1,S2,S3,S4,S5:semaphore; S1:=S2:=S3:=S
25、4:=S5:=1 Cobrgin process Pi(i=1,2,3,4) begin Li:thinking; hungry; P(S i); pickup ri; P(S i+1); pickup ri+1; eating; putdown r i; putdown ri+1; V(S i); V(Si+1); go to Li end; process P5 begin L5:thinking; hungry; P(S1); pickup r 1; P(S5); pickup r 5; eating; putdown r1; putdown r5; V(S1); V(S5); go t
26、o L5 end; coend; end 6.在一个请求分页存储管理系统中,一个程序的页面走向为4,3,2,1,4,3,5,4,3,2,1,5,并采用 LUR 页面置换算法。设分配给该程序的存储块数为M,当 M 分别为 3 和 4 时,试求出在访 问过程中发生却也中断的次数和缺页率,并比较两种结果,从中得到什么启发? 表 1 LUR 性能分析例(M=3 ) 时刻1 2 3 4 5 6 7 8 9 10 11 12 P 4 3 2 1 4 3 5 4 3 2 1 5 M 4+ 3+ 4 2+ 3 1+ 2 4+ 1 3+ 4 5+ 3 4 4 5 3 3 4 2+ 3 1+ 2 5+ 1 2 F
27、 + + + + + + + + + + 表 2 LUR 性能分析例(M=3 ) 时刻1 2 3 4 5 6 7 8 9 10 11 12 P 4 3 2 1 4 3 5 4 3 2 1 5 M 4+ 3+ 4 2+ 3 4 1+ 2 3 4 4 1 2 3 3 4 1 5+ 3 4 1 4 5 3 1 3 4 5 2+ 3 4 1+ 2 3 5+ 1 2 3 F + + + + + + + + 由表 1 算出缺页中断次数F=10,缺页率 f=10/12=83% ; 由表 2 算出缺页中断次数F=8,缺页率f=8/12=67% ; 由两表可得出如下事实: 设 G(P,M,t)表示当页面走向为P, 主存容量为M, 在时刻 t 的页面集合, 对于 LUR 算法, 存在如下关系成立,即G(P,M,t)G(P,M+1,t) ,即对于任何时刻t(1,2,3, 12), G(P,M,t)所 选中的页号必然包含在G(P,M+1,t) 之中,这种关系说明了增加主存容量不会增加缺页中断次 数。
链接地址:https://www.31doc.com/p-5208634.html