第一章
课上习题
- 1-1与计算机硬件关系最密切的软件是 OS
- 1-2下面什么功能不是操作系统直接完成的功能?删除文件
- 1-3早期的OS主要追求的是?B有效性
- 1-4单处理机计算机系统中,下面什么操作是可以并行的?A处理机操作和IO操作
- 1-5要求在规定的时间内对外界的请求必须给予及时相应的OS是?B实时系统
- 1-6对多用户分时系统最重要的是?交互性
- 1-7在下面关于并发性的叙述正确的是?并发性是指若干事件在同一时间间隔发生
- 1-8操作系统的资源共享有什么方式?互斥访问共享;同时访问共享
- 1-9下面对OS不正确的描述是?D.OS是系统态程序的集合
- 1-10下面哪个不是微内核的基本功能 C文件管理
客观题
- 单选题
- 用户在程序设计过程中,可通过 系统调用 获得操作系统的服务
- 在设计分时操作系统时,首先要考虑的是 交互性和响应时间
- 在设计批处理操作系统时,首先要考虑的是 周转时间和系统吞吐量
- 在设计实时操作系统时,首先要考虑的是 实时性和可靠性
- 在多道批处理系统中,为了充分利用各种资源,系统总是优先选择 计算型和IO型均衡的 多个作业投入运行
- 在多道批处理系统中,为了提高吞吐量,系统总是想方设法缩短用户作业的 周转时间
- 分时系统的响应时间(及时性)主要是根据 用户所能接受的等待时间 确定的。
- 实时系统的响应时间主要是根据 控制对象所能接受的时延 确定的。
- 在分时系统中,为使多个用户能够同时与系统交互,最关键的问题是 能在较短的时间内,使所有用户程序都得到运行
- 在分时系统中,当用户数目为100时,为保证响应时间不超过2s,此时的时间片最大应为20ms。
- 分时系统和实时系统都具有交互性,实时系统的交互性允许用户访问专用服务程序
- 分时系统和实时系统都具有交互性,分时系统的交互性允许用户请求系统提供多方面的服务。
- 实时操作系统必须在规定时间内处理完来自外部的事件。
- 资源利用率不是设计实时系统主要追求的目标。
- 在下列系统中,民航售票系统是实时信息系统。
- 在下列系统中,火箭飞行控制系统是实时控制系统。
- 在单处理机系统中,可以并发但不可以并行工作的是进程与进程
- 采用微内核结构时,将OS分成用于实现OS最基本功能的内核和提供各种服务的服务器两个部分。
- 通常,下列模块中必须包含在操作系统内核中的是中断处理模块。
- 在3.X版本以前的MS-DOS是单用户单任务操作系统
- Windows95是单用户多任务操作系统
- Windows XP是多用户多任务操作系统
- UNIX操作系统最初是由Bell实验室推出的
- UNIX操作系统属于多用户多任务类操作系统。
- Linux操作系统属于多用户多任务类操作系统。
- 所谓linux是一个“free software”,这意味着 Linux可以自由修改和发布
- 填空题
27. 设计现代OS的主要目标是提高资源利用率和方便用户。
28. 单道批处理系统是在解决人机矛盾和CPU与I/O设备速度不匹配的矛盾中发展起来的。
29. 当前比较流行的微内核的操作系统结构,是建立在层次化结构的基础上的,而且还采用了客户机/服务器模式和面向对象程序设计技术。
30. 在单处理机环境下的多道程序设计具有多道、宏观上同时运行和微观上交替运行的特点。
31. 现代操作系统的两个最基本的特征是并发和资源共享,除此之外,它还具有虚拟性和异步性的特征。
32. 从资源管理的角度看,操作系统具有四大功能:处理机管理、存储器管理、设备管理和文件管理;而为了方便用户,操作系统还必须提供友好的用户接口。
33. 除了传统操作系统中的进程管理、存储器管理、设备管理、文件管理等基本功能外,现代操作系统中还增加了系统安全、网络和多媒体等功能。
34. 操作系统的基本类型主要有批处理系统、分时系统和实时系统。
35. 批处理系统的主要优点是资源利用率高和系统吞吐量大;主要缺点是无交互作用能力和作业平均周转时间长。
36. 实现分时系统的关键问题是人机交互,为此必须引入时间片的概念,并采用时间片轮转调度算法。
37. 分时系统的基本特征是:多路性、独立性、交互性和及时性。
38. 若干事件在同一时间间隔内发生称为并发;若干事件在同一时刻发生称为并行。
39. 实时系统可分为实时信息处理系统、实时控制系统、多媒体系统和嵌入式系统等类型;民航售票系统属于实时信息处理系统,而导弹飞行控制系统则属于实时控制系统。
40. 为了使实时系统高度可靠和安全,通常不强求资源利用率。 - 判断题
41.对批处理作业,必须提供相应的作业控制信息。(√)
42.对于分时系统,不一定全部提供人机交互功能。(×)
43.从响应角度看,分时系统与实时系统的要求相似。(×)
44.采用分时操作系统的计算机系统中,用户可以独占计算机操作系统中的文件系统。(×)
45.从交互角度看,分时系统与实时系统相似。(×)
46.并发性是指若干事件在同一时刻发生。(×)
47.并发性是指若干事件在不同时刻发生。(×)
48.并发性是指若干事件在同一时间间隔内发生。(√)
49.并发性是指若干事件在不同时间间隔内发生。(×)
50.模块化程序使程序设计更为方便,但比较难维护。(×)
51.模块化程序便于由多人分工编制大型程序。(√)
52.模块化程序便于软件功能扩充。(√)
53.模块化程序设计在内存能够容纳的前提下,应使模块尽可能大,以减少模块的个数。(×)
54.模块之间的接口叫数据文件。(×)
55.只要模块接口不变,各模块内部实现细节的修改,不会影响别的模块。(√)
56.模块化程序使程序易于理解,也利于排错。(√)
57.模块间的单向调用关系,形成了模块的层次式结构。(√)
58.模块愈小,模块化的优点愈明显。一般来说,一个模块的大小在10行以下。(×)
59.一个模块实际上是一个进程。(×) - 完型填空
60.在计算机系统中配置操作系统的主要目的是提高系统资源的利用率。操作系统的主要功能是管理计算机系统中的资源。其中包括处理机、存储器,以及文件和设备。这里的处理机管理主要是对进程进行管理。
61.操作系统有多种类型:允许多个用户以交互方式使用计算机的操作系统称为分时操作系统;允许多个用户将若干个作业提交给计算机系统集中处理的操作系统称为批处理操作系统;在实时操作系统的控制下,计算机系统能及时处理由过程控制反馈的数据,并做出响应;在IBM-PC机上的操作系统称为微机操作系统。
62.操作系统是一种系统软件,它负责为用户和用户程序完成所有与硬件相关并与应用相关的工作,高级程序设计语言的编译不是操作系统关心的主要问题。
63.在OS中采用多道程序设计技术,能有效地提高CPU、内存和1/O设备的利用率:为实现多道程序设计需要有更大的内存
64.推动批处理系统形成和发展的主要动力是提高系统资源利用率,推动分时系统形成和发展的动力是方便用户,推动微机OS发展的主要动力是计算机硬件的不断更新换代
主观题
-
简答题
-
设计现代OS的主要目标是什么?
- 其主要目标是有效性、方便性、可扩充性、开放性。
-
OS的作用可表现在哪几个方面?
- OS作为用户与计算机硬件系统之间的接口;
- OS作为计算机资源的管理者;
- OS实现了对计算机资源的抽象。
-
试说明推动操作系统系统发展的主要动力是什么?
- 不断提高计算机资源利用率
- 方便用户
- 器件不断更新换代
- 计算机体系结构的不断发展
-
何谓脱机I/O和联机I/O?
- 脱机I/O是指事先将装有用户程序和数据的纸带或卡片转入纸带输入机或卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上。该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。
- 而联机I/O方式是指程序和数据的输入输出都是在主机的直接控制下进行的。
-
试从交互性、及时性以及可靠性方面,将分时系统与实时系统进行比较。
- 交互性,实时信息处理系统虽然也具有交互性,但这里人与系统的交互仅限于访问系统中某些特定的专用服务程序。
- 及时性,实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定的;而实时控制系统的及时性,则是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微秒。
- 可靠性,分时系统虽然也要求系统可靠,但相比之下,实时系统则要求系统具体高度的可靠性。
-
OS有哪几大特征?其最基本的特征是什么?
- OS有并发、共享、虚拟和异步这四个基本特征。并发和共享特征是操作系统最基本的特征。
-
处理机管理有哪些主要功能?它们的主要任务是什么?
- 主要功能:创建和撤销进程(线程),对诸进程(线程)的运行进行协调,实现进程(线程)之间的信息交换,以及按照一定的算法把处理机分配给进程(线程)。
- 进程控制:进程控制的主要功能是为作业创建进程,撤消已结束的进程,以及控制进程在运行过程中的状态转换。
- 进程同步:进程同步的主要任务是为多个进程(含线程)的运行进行协调。
- 进程通信:在多道程序环境下,为了加速应用程序的运行,应系统中建立多个进程,并且再为一个进程建立若干个线程,由这些进程(线程)相互合作去完成一个共同的任务。而在这些进程(线程)之间,又往往需要交换信息。当相互合作的进程(线程)处于同一计算机系统时,通常在它们之间是采用直接通信方式,即由源进程利用发送命令直接将信息(Message)挂到目标进程的消息队列上,以后由目标进程利用接受命令从其消息队列中取出消息。
- 调度:在后备队列上等待的每个作业都需经过调度才能执行
- a. 作业调度:作业调度的基本任务是从后备队列中按照一定算法,选择出若干个作业,为它们分配运行所需的资源(首行是分配内存)。
- b. 进度调度:进程调度的任务是从进程的就绪队列中,按照一定是算法选出一个进程,把处理机分配给它,并为它设置运行现场,使进程投入执行。
-
内存管理有哪些主要功能?他们的主要任务是什么?
- 主要任务是为多道程序的运行提供良好的环境,方便用户使用存储器,提高存储器的利用率以及能从逻辑上扩充内存。有内存分配、内存保护、地址映射和内存扩充等功能。
- 内存分配:内存分配的主要任务是为每道程序分配内存空间,使它们“各得其所”;提高存储器的利用率,以减少不可用的内存空间;允许正在运行的程序申请附加的内存空间,以适应程序和数据动态增长的需要。
- 内存保护:内存保护的主要任务是确保每道用户程序都只在自己的内存空间内运行批此互不干扰;绝不允许用户程序访问操作系统和数据;也不允许用户程序转移到非共享的其它用户程序中去执行。
- 地址映射:存储器管理必须提供地址映射功能,以将地址空间中的逻辑地址转换为内存空间中与之对应的物理地址。该功能应在硬件的支持下完成。
- 内存扩充:存储器管理中的内存扩充任务并非是去扩大物理内存的容量,而是借助于虚拟存储技术,从逻辑上去扩充内存容量,使用户所感觉到内存容量比实际内存容量大得多,以便让更多用户程序并发运行。
-
设备管理有哪些主要功能?其主要任务是什么?
- 主要任务是:完成用户进程提出的I/O请求;为用户进程分配器所需的I/O设备;提高CPU和I/O设备的利用率;提高I/O速度;方便用户使用I/O设备。有缓冲管理、设备分配和设备处理以及虚拟设备等功能。
- 缓冲管理:在I/O设备和CPU之间引入缓冲,提高CPU利用率,进而提高系统的吞吐量。在现代计算机系统中,都无例外地在内存设置了缓冲区,而且还可通过增加缓冲区容量的方法来改善系统的性能。对于不同的系统,可以采用不同的缓冲区机制。
- 设备分配:设备分配的基本任务是根据用户进程的I/O请求、系统的现有资源情况以及按照某种设备的分配策略,为之分配其所需的设备。如果在I/O设备和CPU之间还存在着设备控制器和I/O通道时,还须为分配出去的设备分配相应的控制器和通道。
- 设备处理:设备处理程序又称为设备驱动程序。其基本任务是用于实现CPU和设备控制器之间的通信,即由CPU向设备控制器出I/O命令,要求它完成指定的I/O操作;反之,由CPU接收从控制器发来的中断请求,并给予迅速的响应和相应的处理。
-
文件管理有哪些主要功能?其主要任务是什么?
- 文件管理的主要任务是对用户文件和系统文件进行管理,以方便用户使用,并保证文件的安全性。为此,文件存储空间的管理、目录管理、文件的读写管理,以及文件的共享与保护等功能。
- 文件存储空间的管理:其主要人去是为每个文件分配必要的外存空间,提高外存的利用率,并能有助于提高文件系统的存/取速度、
- 目录管理:目录管理的主要任务是为每个文件建立其目标项,并对众多的目录项加以有效是组织、以实现方便的按名存取,即用户只须提供文件名便可对该文件进行存取。
- 文件的读/写管理和保护:文件的读/写管理其功能是根据用户的请求,从外存中读取数据,或将数据写入外存。文件保护其为了防止系统中文件被非法窃取和破坏,在文件系统中必须提供有效的存取控制功能。
-
试描述什么是微内核OS。
- 足够小的内核
- 基于客户/服务器模式
- 应用机制与策略分离原理
- 采用面向对象技术
-
微内核操作系统具有哪些优点?
- 提高了系统的可扩展性
- 增加了系统的可靠性
- 可移植性
- 提高了对分布式系统的支持
- 融入了面向对象技术
-
何谓微内核技术?在微内核中通常提供了哪些功能?
-
内核是指精心设计的、能实现现代操作系统最基本的核心功能的部分。微内核并非是一个完整的操作系统,而只是操作系统中最基本的部分。通常用于:
-
实现硬件紧密相关的处理。
-
实现一些较基本功能。
-
负责客户和服务器之间的通信。
-
-
第二章
课上习题
2-1 前趋图是否允许有循环?不允许有循环
2-2
图中,哪些进程可以并发执行?P2,P3,P4可以并发执行;P5,P6,P7可以并发执行;P3,P6,P7可以并发执行
2-3进程和程序的一个本质区别是?前者为动态的,后者为静态的
2-4-1下列进程状态转换中,绝对不可能发生的状态转换是( );就绪→阻塞
2-4-2下列进程状态转换中,一般不会发生的状态转换是( );就绪→阻塞;阻塞→执行
2-5下列信息中,哪个不属于PCB的内容?完整的程序代码
2-6 引起创建进程的事件不包含哪一项?用户退出
2-7 引起进程终止(Termination of Process)的事件不包括哪一项?进程调度
2-8 引起进程阻塞和唤醒的事件有哪些?等待某种操作完成 ;请求共享资源失败;新数据尚未到达
2-9 下面哪一样对象不属于临界资源?非共享变量
2-10 同步机制都应遵循的准则有哪些?空闲让进;有限等待;忙则等待;让权等待
2-11 在整型信号量机制中的wait操作,只要是信号量S≤0,就会不断地测试,并未遵循同步机制的什么准则?D、让权等待
2-12 信号量集Swait(S,1,1)原语蜕化为互斥信号量的条件是什么?S=1
2-13 设有10个进程互斥使用一个临界资源,则所采用的互斥信号量初值应该是()1
2-14 试画出下面四条语句的前趋图:
A、S1:a=x+y;
B、S2:b=z+1;
C、S3:c=a-b;
D、S4:w=c+1;
并且利用信号量实现上述语句的前驱关系
semaphore a=b=c=0;
p1(){S1;V(a);}
p2(){S2;V(b);}
P3(){P(a);P(b);S3;V( c);}
P4(){P( c);S4;}
Main(){cobegin
P1();P2();P3();P4();
coend;}
2-15 在生产者一消费者问题中,应设置互斥信号量mutex、资源信号量full和empty。它们的初值应分别是?1,0,n
2-16 仅利用记录型信号量解决哲学家进餐问题是否会可能引起死锁?有可能引起死锁
2-17 利用记录型信号量解决读者-写者问题中的Readcount(表示正在读的进程数目)是否为临界资源?是临界资源
2-18 利用共享文件进行进程通信的方式属于?共享存储器
2-19 引入线程概念后,操作系统以()作为资源分配的基本单位。进程
2-20 在采用用户级线程的操作系统中,进行CPU调度的对象是( )。进程
客观题
-
单选题
进程A和B共享同一临界资源,并且进程A正处于对应的临界区内执行。请从下列描述中选择一条正确的描述 进程A的执行能被中断,而且只要B进程就绪,就可以将CPU调度给B进程 -
填空题
- 在单用户单任务环境下,用户独占全机,此时机内资源的状态,只能由运行程序的 操作加以改变,此时的程序执行具有封闭性和可再现性特征
- 并发进程之间的相互制约,是由于它们共享资源和相互合作而产生的,因而导致程序在并发执行时具有间断性或异步性特征
- 程序并发执行句顺序执行时相比产生了一些新特征,分别是间断性、失去封闭性和不可再现性
- 引入进程的目的是使程序能正确地并发执行,以提高资源利用率和系统吞吐量,而引入线程的目的是减少并发执行的开销,提高程序执行的并发程度
- 进程由进程控制块;PCB、程序段和数据段组成,其中进程控制块;PCB是进程存在的唯一标志
- 进程最甚本的特征是动态性和并发性,除此之外,它还有独立特征、和异步性特征
- 由于进程的实质是程序的一次执行,故进程有动态性的基本特征,该特征还表现在进程由创建而产生,由调度而执行,由撤销而消亡,即进程具有一定的生命期。
- 引入进程带来的好处提高资源利用率和增加系统吞吐量
- 当前正在执行的进程由于时间片用完而暂停执行时,该进程应转变为就绪状态:若因发生某种事件而不能继续执行时,应转为阻塞状态;若应终端用户的请求而暂停执行时,它应转为静止就绪状态
- 系统中共有5个用户进程,且当前CPU在用户态下执行,则最多可有4个用户进程处于就绪状态,最多可有4个用户进程处于阻塞状态:若当前在核心态下执行,则最多可有5个用户进程处于就绪状态,最多可有5个用户进程处于阻塞状态
- 为了防止OS本身及关键数据(如PCB等),遭受到应用程序有意或无意的破坏, 通常也将处理机的执行状态分成用户态和系统态两种状态
- 进程同步主要是对多个相关进程在执行次序上进行协调
- 同步机制应遵循的准则有是空闲让进、忙则等待、有限等待和让权等待
- 在记录型信号量机制中,S.value>0时的值表示可用的临界资源数量:每次wait操作意味着申请一个临界资源, 因此应将S.value减1;-1,当S.value小于0;<0时,进程应阻塞
- 在利用信号量实现进程互斥时,应将临界区置于wait操作和signal操作之间
- 在每个进程中访问临界资源的那段代码称为临界区。为实现对它的共享,应保证进程互斥地进入自己的临界区,为此在毎个进程的临界区前应设置进入区 ,临界区后应设置退出区。
- 利用共享的文件进行进程通信的方式被称作管道通信,除此之外,进程通信的类型还有共享存储器、消息系统和客户机-服务器系统三种类型
- 客户机一服务器系统通信机制主要的实现方法有是套接字、远程过程调用和远程方法调用三种
- 为实现消息缓冲队列通信,应在PCB中增加消息队列首指针mq;、消息队列互斥信号量mutex、消息队列资源信号量Sm三个数据项
- 引入线程概念后,操作系统以进程作为资源分配的基本单位,以线程作为CPU调 度和分派的基本单位。
- 在采用用户级线程的系统中,OS进行CPU调度的对象是进程;在采用内核支持 的线程的系统中,CPU调度的对象是线程
- 线程之所以能减少并发执行的开销是因为线程基本不拥有资源
- 用户为阻止进程继续运行,应利用挂起原语,若进程正在执行,应转变为静止就绪状态;以后,若用户要恢复其运行,应利用激活原语,此时进程应转变为活动就绪状态
- 在记录型信号量机制中,每次signal操作意味着释放一个临界资源,因此应将S.value加1,当S.valueSO时,表示仍有请求该资源的进程被阻塞,此时应唤醒相应阻塞队列中的首进程。
-
判断题
- 临界区是指进程中用于实现进程互斥的那段代码(×)
- 临界区是指进程中用于实现进程同步的那段代码(×)
- 临界区是指进程中用于实现进程通信的那段代码(×)
- 临界区是指进程中访问临界资源的那段代码(√)
- 操作系统的一个重要概念是进程,不同进程所执行的代码也不同。(×)
- 操作系统通过PCB来控制和管理进程,用户进程可从PCB中读出与本身运行状态相关的信息(×)
- 当进程由执行状态变为就绪状态时,CPU现场信息必须被保存在PCB中(√)
- 当进程申请CPU得不到满足时,它将处于阻塞状态(×)
- 进程是可与其他程序并发执行的程序在一个数据集合上的运行过程,所以程序段 是进程存在的唯一标志(×)
- 一个进程的状态发生变化总会引起其他一些进程的状态发生变化(×)
- 进程被挂起(suspend)后,状态变为阻塞状态(×)
- 信号量的初值不能为负数(√)
- 线程是CPU调度的基本单位,但不是资源分配的基本单位(√)
- 在进程对应的代码中使用wait、signal操作后,可以防止系统发生死锁(×)
- 管程每次只允许一个进程进入(√)
- wait、signal操作可以解决一切互斥问题(√)
- 程序的顺序执行具有不可再现性(×)
-
完整填空
- 从静态的角度看,进程是由( 程序段 )、( 数据段 )、(PCBC)三部分组成的,其中(PCBC)是进程存在的 唯一标志。当几个进程共享(程序段)时,(程序段)应当是可重入代码。
- 某进程所要求的一次打印输出结束,该进程被(唤醒),其进程的状态将从(阻塞到就绪)
- 下列进程状态转换中,绝对不可能发生的状态转换是(就绪—阻塞); —般不会发生的状态转 换是(阻塞—执行)
- 在一个单处理机系统中,存在5个进程,最多可有(4)个进程处于就绪队列;如果 这5个进程中有一个系统进程IDLE (也叫空转进程,因为它只是不断循环地执行空语句) , 则最多可有(4)个进程处于阻塞状态
- 正在执行的进程由于其时间片用完被暂停执行,此时进程应从执行状态变为(活动就绪)状 态;处于静止阻塞状态的进程,在进程等待的事件出现后,应变为(静止就绪)状态;若进程正处于 执行状态时,因终端的请求而暂停下来以便研究其运行情况,这时进程应转变为(静止就绪)状态, 若进程已处于阻塞状态,则此时应转变为(静止阻塞)状态
- 为使进程由活动就绪转变为静止就绪,应利用(suspend)原语;为使进程由执行状态转变 为阻塞状态,应利用(block)原语;为使进程由静止就绪变为活动就绪,应利用(active)原语;从阻 塞状态变为就绪状态应利用(wakeup)原语
- 下列信息中,不属于CPU现场信息的依次是(进程的就绪、阻塞、执行等基本状态)和(保存在堆栈中的函数参数、函数返回地址)
- 下列信息中,(完整的程序代码)不属于PCB的内容
- 在将CPU的执行状态分为用户态和核心态的系统中,应该在核心态下执行的指令 依次为(屏蔽所有中断)、(设置时钟)和(存取内存中某地址单元的值)。而从用户状态转换到系统状态是通过(访管指令或中断)实现的
- 在分时系统中,导致进程创建的典型事件是(用户登录);在批处理系统中,导致进程创建 的典型事件是(作业调度);由系统专门为运行中的应用进程创建新进程的事件是(提供服务)。在创建进程 时,(为进程分配CPU)不是创建所必需的步骤
- (整型信号量)是一种只能由wait和signal操作所改变的整型变量,(控制变量)可用于实现进程的(互斥) 和(同步), (互斥)是排它性访问临界资源
- 对于记录型信号量,在执行一次wait操作时,信号量的值应当(减1),当其值为(小于0) 时,进程应阻塞。在执行signal操作时,信号量的值应当(加1),当其值为(小于等于0)时,应唤醒阻 塞队列中的进程
- 用信号量S实现对系统中4台打印机的互斥使用S.value的初值应设置为(4), 若S.value的当前值为-1,则表示S.L队列中有(1)个等待进程。
- 设有10个进程共享一个互斥段,如果最多允许有1个进程进入互斥段,则所采用 的互斥信号M初值应设置为(1),而该信号量的取值范围为(1 〜-9);如果最多允许有3个进程 同时进入互斥段,则所采用的互斥信号量初值应设置为(3).
- 在生产者_消费者问题中,应设置互斥信号量mutex、资源信号量full和empty。 它们的初值应分别是( 1 )、( 0)、(+n)
- 在直接通信方式中,系统通常提供的两条通信原语如下,请选择适当的参数填入send ((receiver), (message)); receive((sender), (message))
- 有两个程序:A程序按顺序使用CPU 10秒、设备甲5秒、CPU 5秒、设备乙10 秒、CPU 10秒;B程序按顺序使用设备甲10秒、CPU10秒、设备乙5秒、CPU 5秒、设 备乙10秒。在顺序环境下,执行上述程序,CPU的利用率约为(50%),若允许它们采用非抢占方式并发执行,并不考虑切换等开销,则CPU的利用率约为(90%)
- 在引入线程的操作系统中,资源分配和调度的基本单位是(进程),CPU调度和分派的 基本单位是(线程)
- 使用mail命令的信箱通信属于(非实时通信),因为信息是被发送到接收方的(信箱)中;使用write 命令,实现的是(实时通信)通信,因为信息是被送到收方的(屏幕);使用共享文件进行通信的方式属 于(管道通信)通信。
- 对生产者一消费者问题的算法描述如下,请选择正确的答案编号填入方框中
Producer(){ consumer(){
while(wait(empty)){ while(wait(empty)){
(wait(empty)); (wait(full));
(wait(mutex)); (wait(mutex));
buffer(in)=m; m=buffer(out);
in=(in+1)% out=(out+1)%
n; n;
(signal(mutex)) (signal(mutex))
(signal(full)); (signal(empty))
21.正在等待他人释放临界资源的进程处于(阻塞)状态,已分配到除CPU外的所有资源的 进程处于(就绪)状态,已获得CPU的进程处于(执行)状态
22.进程的三个基本状态是(就绪)、(执行)、(阻塞)。由(就绪)到(执行)是由进程调度所引起的:由(执行) 到(ci是正在执行的进程发生了_某事件,使之无法继续执行而引起的。
23.进程和程序的一个本质区别是(前者为动态的,后者为静态的)
24.
试选择(A)—(D),以便能正确地描述图2.12所示的前趋关系
var a, b, c: semaphore:=0» 0, 0;
begin parbegin
begin SI; (signal(a));
end; begin S2;
(signal(b)); end; begin
wait((signal(a)); wait(signal(b)); S3; (signal©);
end
begin (wait©), S4 end
parend end
第三章
- 单选题
- 从下面关于安全状态和非安全状态的论述中,选出.一条正确的论述。
安全状态是没有死锁的状态,非安全状态是有可能死锁的状态
- 填空题
-
高级调度又称作作业调度调度,其主要功能是按照一定的算法从外存的后备队列中选若干作业进入内存,并为它们创建进程;低级调度又称作进程调度调度,其主要 功能是按一定算法从就绪队列中选一个进程投入执行
-
作业调度必须做接纳多少个作业和接纳哪些作业两个决定
-
进程调度的主要任务是保存CPU现场、按某种算法选择一个就绪进程和把CPU分配给新进程,进程调度的方式主要有抢占调度和非抢占调度两种方式
-
在抢占调度方式中,抢占的原则主要有:时间片原则、短作业优先和优先权原则
-
在设计进程调度程序时,应考虑引起调度的因素、调度算法的选择和调度算法的选择三个问题
-
为了使作业的平均周转时间最短,应该选择短作业(进程)优先调度算法:为了使当前执行的进程 总是优先权最高的进程,则应选择立即抢占的高优先权优先调度算法;而分时系统则常采用时间片轮转调度算法
-
分时系统中,时间片选得太小会造成系统开销增大的现象,因此,时间片的大小一般选择为略大于一次典型的交互所需要的时间
-
采用动态优先权时,为了避免一个低优先权的进程处于饥饿状态,可以随着进程等待时间的增加而提高其优先权:而 为了避免一个高优先权的长作业长期垄断CPU,则可以随着进程运行时间的增加而降低其优先权。
-
高响应比优先调度算法综合考虑了作业的运行时间和等待时间,因此会兼顾到长、短作业
-
死锁产生的主要原因是竞争资源和进程推进顺序非法
-
死锁产生的必要条件是互斥条件、请求与保持条件、不剥夺条件和环路等待条件
-
通过破坏死锁产生的四个必要条件可进行死锁的预防,其中互斥条件一般是不允许破坏的,一次性分配所有资源破坏的是其中的请求与保持条件,资源的有序分配破坏的是其中的环路等待条件。
-
避免死锁,允许进程动态地申请资源,但系统在进行分配时应先计算资源分配 的安全性。若此次分配不会导致系统进入不安全状态,便将资源分配给它,否则便让进程等待
-
解决死锁问题的方法有预防、避免、检测并解除等,一次性分配所有的资源采用 的是其中的预防死锁方法,银行家算法采用的是其中的避免死锁方法
-
根据死锁定理,一个状态为死锁状态的充分条件是当且仅当该状态的资源分配图是不可完全简化时。
-
撤消进程和剥夺资源是解除死锁的两种常用方法
-
判断题
-
计算型作业的优先权,应高于I/O型作业的优先权。(× )
-
长作业的优先权,应高于短作业的优先权 (× )
-
用户进程的优先权,应高于系统进程的优先权。 (× )
-
资源要求多的作业,其优先权应高于资源要求少的作业。 (× )
-
在动态优先权中,随着作业等待时间的增加,其优先权将随之下降。 (× )
-
在动态优先权时,随着进程执行时间的增加,其优先权降低 (√ )
-
-
完型填空
-
在三种基本类型的操作系统中,都设置了(进程调度),在批处理系统中还应设置(作业调度);在分 时系统中除了((进程调度)以外,通常还设置了(中级调度),在多处理机系统中则还需设置(多处理机调度)
-
在面向用户的调度准则中,(截止时间的保证)是选择实时调度算法的重要准则,(响应时间快)是选择分时系 统中进程调度算法的重要准则,(平均周转时间短)是批处理系统中选择作业调度算法的重要准则,而(优先权高的作业能获得优先服务) 准则则是为了照顾紧急作业用户的要求而设置的
-
作业调度是从处于(后备)状态的队列中选取作业投入运行,(周转时间)是指作业进入系统到作 业完成所经过的时间间隔,(时间片轮转)算法不适合作业调度
-
下列算法中,(FCFS调度算法)只能采用非抢占调度方式,(时间片轮转法)的只能采用抢占调度方式,而其余的 算法既可采用抢占方式,也可采用非抢占方式
-
我们如果为每一个作业只建立一个进程,则为了照顾短作业用户,应采用(短作业优先);为 照顾紧急作业的用户,应采用(高响应比优先);为能实现人机交互作用应采用(时间片轮转法);为了兼顾短作业和 长时间等待的作业,应采用(高响应比优先);为了使短作业、长作业及交互作业用户都比较满意,应采 用(多级反馈队列调度算法);为了使作业的平均周转时间最短,应采用(短作业优先)算法
-
下列调度方式和算法中,最容易引起进程长期等待的是(抢占式静态优先权优先算法)
-
支持多道程序设计的操作系统在运行过程中,不断地选择新进程运行来实现CPU 的共享,但其中(有新进程进入就绪队列)不是引起操作系统选择新进程的直接原因
-
下列选项中,降低进程优先级的最合理的时机是(进程的时间片用完)
-
假设就绪队列中有10个进程,以时间片轮转方式进行进程调度,时间片大小为 300 ms, CPU进行进程切换要花费10 ms,则系统开销所占的比率约为(3% );若就绪队列中 进程个数增加到20个,其余条件不变,则系统开销所占的比率将(不变)。
-
EDF算法选择(截止时间最早的进程)为下一个执行的进程,LLF算法则优先选择(松弛度最低的进程)为下一个执行的进程
-
实时系统中的优先级倒置是指(优先级进程被低优先级进程延迟或阻塞)
-
系统产生死锁是指(若干进程等待被其他进程所占用而又不可能被释放的资源)。产生死锁的基本原因是(系统资源不足 )和(进程推进顺序不当),产生死锁的四个必要条 件是互斥条件、(请求和保持条件)、不剥夺条件和(环路条件)
-
设m为同类资源R的数目,n为系统中并发进程数。当n个进程共享m个互斥资 源R时,每个进程对R的最大需求是w;则下列情况会出现死锁的是(m=4,n=2,w=3)
-
在多道程序的环境中,不会因竞争(可被抢占的资源)而产生死锁
-
下述解决死锁的方法中,属于死锁预防策略的是(资源有序分配法),属于死锁避免策略的是(银行家算法)
-
死锁的四个必要条件中,一般情况下,无法破坏的是(互斥使用资源)
-
死锁的预防是通过破坏产生死锁的四个必要条件来实现的,下列方法中,(一次性分配策略)破坏 了 “请求与保持”条件,(资源有序分配策略)破坏了 “循环等待”条件。
-
某系统中有13台磁带机,K个进程共享这些设备,每个进程最多请求使用3台, 则系统不会死锁的K值是(不大于6)
第四章
-
单选题
- 要保证进程在主存中被改变了位置后仍能正确执行,则对主存空间应采用动态重定位。
- 在伙伴系统中,一对空闲分区为伙伴是指两个大小均为2KB的相邻空闲分区,且前一个分区的起始地址是2K+1B的倍数.
- 在段页式存储管理中,用于地址映射的映射表是(每个进程一张段表, 每个段一张页表)
-
填空题
- 使每道程序能在内存中“各得其所”是通过内存分配功能实现的;保证每道程序在不受千扰的环境下运行, 是通过内存保护功能实现的; 为缓和内存紧张的情况而将内存中暂时不能运行的进程调至外存,是对换功能实现的;能让较大的用户程序在较小的内存空间中运行,是通过内存扩充(或虚拟存储器) 功能实现的。
- 程序装入的方式有绝对装入方式、可重定位装入方式和动态运行时装入方式三种方式。
- 程序的链接方式有静态链接、装入时动态链接和运行时动态链接三种方式。
- 把作业装入内存中随即进行地址变换的方式称为静态重定位;而在作业执行期间,当访问到指令和数据时才进行地址变换的方式称为动态重定位。
- 地址变换机构的基本任务是将地址空间中的逻辑地址变换为内存空间中的物理地址.
- 通常, 用户程序使用逻辑地址, 处理机执行程序时则必须用物理地址.
- 在首次适应算法中,空闲分区以地址递增的次序拉链;在最佳适应算法中,空闲分区以空闲区大小递增的次序拉链。
- 在连续分配方式中可通过紧凑来减少内存零头,它必须得到动态重定位技术的支持。
- 在伙伴系统中, 令buddyk(x) 表示大小为2^k,起始地址为x的块的伙伴的地址, 则buddyk(x)的通用表达式为x+2K-[(x/2)%2)]*2(k+1)(其中“%2”表示除以2然后取余数).
- 现进程对换应具备对换空间的管理、进程换入和进程换出三方面的功能。
- 分页系统中若页面较小, 虽有利于减少块内碎片, 但会引起页表太长; 而页面较大, 虽可减少页表长度 但会引起块内碎片增大.
- 分页系统中,页表的作用是实现页号到物理块号的转换。
- 在分页系统中为实现地址变换而设置了页表寄存器, 其中存放了处于执行状态进程的页表长度和页表始址;而其他进程的上述信息则被保存在它们的PCB中。
- 引入分段主要是满足用户的需要, 具体包括便于编程、分段共享、分段保护、动态链接等方面。
- 在页表中最基本的数据项是物理块号; 而在段表中则是段的内存基址和段长.
- 把逻辑地址分成页号和页内地址是由机器硬件 进行的,故分页系统的作业地址空间是一维的;把逻辑地址分成段号和段内地址是由程序员进行的,故分段系统的作业地址空间是二维的。
- 在段页式系统中(无快表), 为获得一条指令或数据, 都需三次访问内存。 第一次从内存中取得页表起始地址;第二次从内存中取得块号 ;第三次从内存中取得指令或数据.
-
判断题
- 即使在多道程序设计的环境下,用户也能设计出用物理地址直接访问内存的程序。(× )
- 内存分配最基本的任务是为每道程序分配内存空间,其所追求的主要目标是提高存储空间的利用率。(√)
- 为了提高内存保护的灵活性,内存保护通常由软件实现。(× )
- 交换技术已不是现代操作系统中常用的技术。(× )
- 地址映射是指将程序空间中的逻辑地址变为内存空间的物理地址。(√ )
- 虚拟存储器是物理上扩充内存容量。(× )
-
完型填空
- 使每道程序能在不受干扰的环境下运行,主要是通过内存保护功能实现的;使分配到与 其地址空间不一致的内存空间的程序,仍能正常运行则主要是通过地址映射功能实现的。
- 静态重定位是在作业的装入过程中进行的,动态重定位是在作业执行过程中进行的。
- 在进程的地址空间中,有一条将第1000单元中的数据装入寄存器R1的指令“LOAD R1, 1000”,采用静态重定位技术时,装入内存后,该指令的第二个操作数修改为1000和装入该进程的内存起始地址之和;采用动态重定位技术时,则 仍然为1000 。
- 静态链接是在装入程序之前中进行的;而动态链接是在装入某段程序时或调用某段程序时进行的,其中在 调用某段程序时 进行链接,可提高内存利用率;适用于动态链接的存储方式是 分段存储管理。
- 由连续分配方式发展为分页存储管理方式的主要推动力是 提高内存利用率 ;由分页系统发展为分段系统, 进而又发展为段页式系统的主要动力是 满足用户需要 和 既满足用户要求,又提高内存利用率 .
- 在动态分区式内存管理中, 倾向于优先使用低址部分空闲区的算法是 首次适应算法 ; 能使内存空间中空闲区分布得较均匀的算法是 循环首次适应算法 ;每次分配时, 把既能满足要求, 又是最小的空闲区分配给进程的算法是 最佳适应算法。
- 在首次适应算法中, 要求空闲分区按 空闲区起始地址递增 的顺序形成空闲分区链;在最佳适应算法中是按 空闲区大小递增 的顺序形成空闲分区链; 最坏适应算法是按 空闲区大小递减 的顺序形成空闲链.
- 采用动态分区存储管理系统中, 主存总容量为 55 MB, 初始状态全空, 采用最佳适应算法,内存的分配和回收顺序为:分配15MB,分配30MB,回收15MB,分配8MB,分配 6MB, 此时主存中最大的空闲分区大小是 9MB ; 若采用的是首次适应算法, 则应该是10 MB.
- 在回收内存时可能出现下述四种情况:(1)释放区与插入点前一分区F1相邻接,此时应 以F1分区的表项为新表项, 但修改新表项的大小 :(2)释放区与插入点后一分区F2相邻接,此时应 以F2分区的表项作为新表项,同时修改新表项的大小和始址 :(3)释放区不与F1和F2相邻接,此时应 为回收区建立一分区表项,填上分区的大小和始址 :(4)释放区既与F1相邻接,又与F2相邻接,此时应 以F1分区的表项为新表项,但修改新表项的大小且还要删除F2所对应的表项 .
- 对重定位存储管理方式,应 在整个系统中设置一个重定位寄存器 ,当程序执行时,是由 有效地址 与 在整个系统中设置一个重定位寄存器 中的 起始地址 相加得到 物理地址 ,用 物理地址 来访问内存。
- 对外存对换区的管理应以 提高换入换出速度 为主要目标,对外存文件区的管理应以 提高存储空间的利用率 为主要目标。
- 分页系统中, 主存分配的单位是 物理块 , 而地址转换工作是由 硬件 完成的。
- 在页式存储管理中,其虚拟地址空间是 一维 的;在段式存储管理中,其虚拟地址空间是 二维 的;在段页式存储管理中, 其虚拟地址空间是 二维 的。
- 在没有快表的情况下, 分页系统每访问一次数据, 要访问 2次内存; 分段系统每访问一次数据,要访问2次内存;段页式系统每访问一次数据,要访问3次内存。
- 通常情况下,在下列存储管理方式中, 固定分区支持多道程序设计、管理最简单,但存储碎片多; 页式使内存碎片尽可能少, 而且使内存利用率最高。
- 下述存储管理方式中,会产生内部碎片的是页式和段页式, 会产生外部碎片的是动态分区方式和段式.
- 在动态分区式内存管理中,若某一时刻,系统内存的分配情况如图所示。当一进程要申请一块20K的内存空间时,首次适应算法选中的是始址为60K的空闲分区,最佳适应算法选中的是始址为270K 的空闲分区,最坏适应算法选中的是始址为390K的空闲分区。
第五章
-
单选题
- 现代操作系统中,提高内存利用率主要是通过(虚拟存储器 )功能来实现的。
- Linux采用(请求分页)存储管理方式.
- Linux内核的页面分配程序采用(伙伴系统)算法进行页框的分配和回收。
-
填空题
- 在请求调页系统中,地址变换过程可能会因为逻辑地址越界、缺页和访问权限错误等原因而产生中断.
- 虚拟存储器的基本特征是多次性和对换性,因而决定了实现虚拟存储器的关键技术是请求调页(段)和页(段)置换.
- 实现虚拟存储器,除了需要有一定容量的内存和相当容量的外存外,还需要有页表机制、地址变换机构和缺页中断机构的硬件支持.
- 为实现请求分页管理,应在纯分页的页表基础上增加状态位、访问字段、修改位和外存地址等数据项.
- 在请求调页系统中要采用多种置换算法,其中OPT是最佳置换算法,LRU是最近最久未用置换算法,NUR是最近未用置换算法,而LFU则是最少使用置换算法,PBA是页面缓冲算法.
- VAX/VMS 操作系统采用页面缓冲算法: 它采用FIFO算法选择淘汰页, 如果淘汰页未被修改, 则将它所在的物理块插到空闲页面链表中, 否则便将其插入修改页面链表中, 它的主要优点是可以大大减少换进/换出而读写磁盘次数.
- 在请求调页系统中, 调页的策略有预调页和请求调页两种方式.
- 在请求调页系统中,反复进行页面换进和换出的现象称为抖动,它产生的原因主要是置换算法选用不当.
- 分页系统的内存保护通常有越界检查和存取控制两种措施.
- 分段系统中的越界检查是通过段表寄存器中存放的段表长度和逻辑地址中的段号的比较,以及段表项中的段长和逻辑地址中的段内地址的比较心实现的.
- 为实现段的共享,系统中应设置一张共享段表,每个被共亭的段占其中的一个表项,其中应包含了被共享段的段名共享进程计数、段在内存的起始地址和段长等数据项:另外,还在该表项中记录了共享该段的每个进程的情况.
- 在分段系统中常用的存储保护措施有越界检查、存取控制权限检查、环保护机构三种方式.
- 在采用环保护机制时,一个程序可以访问驻留在相同环或较低特权环中的数据:可以调用驻留在相同环或较高特权环中的服务.
- Intel x86/Pentium 系列CPU 可采用实模式和保护模式两种工作模式.
- Intel x86/Pentium 的分段机制, 每个进程用于地址映射的段表也叫做局部描述符表LDT; 另外,当进程运行在特权级别为0的核心态下时, 它必须使用全局描述符表GDT来进行地址映射.
- Intel x86/Pentium 的分页机制,采用两级分页模式,其外层页表也叫做页目录.
-
判断题
- 非虚拟存储器要求作业在运行前,必须全部装入内存,且在运行过程中也必须一直驻留内存(√)
- 非虚拟存储器要求作业在运行前,不必全部装入内存,且在运行过程中不必一直驻留内存.(× )
- 非虚拟存储器要求作业在运行前,不必全部装入内存,但在运行过程中必须一直驻留内存.(× )
- 非虚拟存储器要求作业在运行前,必须全部装入内存,但在运行过程中不必一直驻留内存.(× )
- 在请求段页式系统中,以页为单位管理用户的虚空间,以段为单位管理内存空间(× )
- 在请求段页式系统中, 以段为单位管理用户的虚空间, 以页为单位管理内存空间(√ )
- 为提高请求分页系统中内存的利用率, 允许用户使用不同大小的页面。(× )
- 在虚拟存储器中,为了能让更多的作业同时运行, 通常只应装入10%~30%的作业后便启动运行.(× )
- 实现虚拟存储器的最常用的算法,是最佳适应算法OPT.(× )
- 由于有了虚拟存储器,于是允许用户使用比内存更大的地址空间(√ )
- 分段的尺寸受内存空间的限制, 且作业总的尺寸也受内存空间的限制(× )
- 分段的尺寸受内存空间的限制, 但作业总的尺寸不受内存空间的限制(√)
- 分段的尺寸不受内存空间的限制, 且作业总的尺寸不受内存空间的限制(×)
- 分段的尺寸不受内存空间的限制,但作业总的尺寸受内存空间的限制(×)
-
完型填空
-
虚拟存储器最基本的特征是 多次性 ; 该特征主要是基于 局部性原理 ; 实现虚拟存储器最关键的技术是 请求调页(段) .
-
虚拟存储器管理系统的基础是程序的局部性理论。 此理论的基本含义是 程序执行时对主存的访问是不均匀的 . 局部性有两种表现形式,时间局部性和 空间的局部性 ,它们的意义分别是 最近被访问的单元, 很可能在不久的将来还要被访问 和 最近被访问的单元,很可能它附近的单元也即将被访问 。根据局部性理论,Denning 提出了 工作集理论 。
-
实现虚拟存储器的目的是 扩充主存容量 ;下列方式中, 可变分区管理 不适用于实现虚拟存储器。
-
一个计算机系统的虚拟存储器的最大容量是由 计算机的地址结构 确定的,其实际容量是由 内存和硬盘容量之和 确定的。
-
在请求分贝系统的贞表中增加了若干项,其中状态位供 程序访问 参考; 修改位供 换出页面 时参考:访问位供 置换算法 参考;外存始址供 调入页面 参考。
-
在请求调页系统中,若逻辑地址中的页号超过页表控制寄存器中的页表长度,则会引起 越界中断 ;否则,若所需的页不在内存中,则会引起 缺页中断 ,在前面步骤处理完成后,进程将执行 被中断的那一条 指令。
-
在请求调页系统中,内存分配有 固定分配 和 可变分配 两种策略,第一种的缺点是可能导致频繁地出现缺页中断而造成CPU利用率下降.
-
在请求调页系统中有着多种置换算法;(1)选择最先进入内存的页面予以淘汰的算法称为 FIFO算法 ;(2)选择在以后不再使用的页面予以淘汰的算法称为 OPT算法 ;(3)选择自上次访问以来所经历时间最长的页面予以淘汰的算法称为 LRU算法 ;(4) 选择自某时刻开始以来, 访问次数最少的页面予以淘汰的算法称为 LFU算法 .
-
在页面置换算法中, 存在Belady 现象的算法是 FIFO ;其中, Belady现象是指 当分配到的内存块数增加时,缺页中断的次数有可能反而增加 .
-
在请求调页系统中,凡未装入过内存的页都应从 文件区 调入;已运行过的页主要是从 对换区 调入, 有时也从 页面缓冲池 调入。
-
系统抖动是指 被调出的页面又立刻需要被调入所形成的频繁调入调出现象;其产生的原因主要是 置换算法选择不当 .
-
在环保护机构中, 操作系统应处于 最高特权环 内, 一般应用程序应处于 最低特权环 内, 并应遵循下述规则:(1)一个程序可以访问驻留在 相同和较低特权环 中的数据;(2)一个程序可以调用驻留在 相同和较高特权环 中的服务。
-
测得某个请求调页的计算机系统部分状态数据为:CPU利用率20%,用于对换空间的硬盘的利用率97.7%,其他设备的利用率5%.由此断定系统出现异常。此种情况, 减少运行的进程 或 加内存条,增加物理空间容量 能提高CPU的利用率。
-
虚拟存储器的功能由 硬件 完成。在虚拟存储器系统中,采用 高速缓冲存储器 提高 动态地址翻译 的速度。
-
某虚拟存储器的用户编程空间共32个页面,每页1KB,主存为16KB。假定某时刻用户页表中已调入主存的页面的虚页号0,1,2,3和对照物理页号5,10,4,7。则与下面十六进制虚地址相对应的物理地址为(如果主存中找不到,即为页失效):虚地址0A5C的物理地址 125C ,虚地址1A5C的物理地址 页失效
-
第六章
-
单选题
- 在一般大型计算机系统中,主机对外围设备的控制可通过通道、控制器和设备三个层次来实现。从下述叙述中选出一条正确的叙述。
通道控制控制器,设备在控制器控制下工作. - 从下面关于设备属性的论述中,选择一条正确的论述。共享设备必须是可寻址的和随机访问的设备。
- 在程序I/O方式中,对于输出设备,准备就绪是指(输出缓冲区已空 )
- 从下面关于设备独立性的论述中, 选择一条正确的论述。设备独立性是指用户程序独立于具体使用的物理设备的一种特性.
- 下面关于虚拟设备的论述中, 选择一条正确的论述。虚拟设备是指把一个物理设备变换成多个对应的逻辑设备。
- 从下列论述中选出一条正确的论述。同一用户所使用的1/O设备也可以并行工作。
- 从下列关于驱动程序的论述中, 选出一条正确的论述。对于一台多用户机,配置了相同的8个终端,此时可只配置一个由多个终端共享的驱动程序。
- 在一般大型计算机系统中,主机对外围设备的控制可通过通道、控制器和设备三个层次来实现。从下述叙述中选出一条正确的叙述。
-
填空题】
- 对打印机的/O控制方式常采用中断驱动方式,对磁盘的I/0控制方式常采用DMA控制方式。
- 【填空题】DMA是指允许I/O设备和内存之间直接交换数据的设备。在DMA中必须设置地址寄存器,用于存放内存地址;还必须设置数据缓冲寄存器用来暂存交换的数据。
- 设备控制器是CPU和I/O设备之间的接口,它接受来自CPU的I/0命令,并用于控制I/O设备的工作。
- 缓冲池中的每个缓冲区由缓冲首部和缓冲体两部分组成。
- I/0软件通常被组织成用户层软件、设备独立性软件、设备驱动程序和I/O中断处理程序四个层次。
- 驱动程序与I/0设备特性紧密相关,如果计算机中连有3个同种类型的彩色终端和2个同种类型的黑白终端,可以为它们配置2个设备驱动程序。
- 为实现设备分配,系统中应配置设备控制表和系统设备表的数据结构;为实现控制器和通道的分配,系统中还应配置控制器控制表和通道控制表的数据结构。
- 除了设备的独立性外,在设备分配时还要考虑设备的固有属性、设备的分配算法和设备分配中的安全性三种因素。
- 为实现设备独立性,在系统中必须设置逻辑设备表LUT表,通常它包括逻辑设备名、物理设备名和设备驱动程序入口地址三项。
- SPOOLing系统是由磁盘中的输入井和输出井,内存中的输入缓冲区和输出缓冲区,输入进程和输出进程以及井管理程序构成的。
- 实现后台打印时,SPOOLing系统中的输出进程,只为请求I/O的进程做两件事:(1)为之在输出井中申请一空闲缓冲区,并将要打印的数据送入其中;(2)为用户进程申请一张用户打印请求表,并将用户的打印需求填入表中,再将该表排在假脱机文件队列中。
- 磁盘的访问时间由寻道时间、旋转延迟时间和数据传输时间三部分组成,其中所占比重比较大的是寻道时间,故磁盘调度的目标为使磁盘的平均寻道时间最短。
- 在磁盘调度中,选择优先为离当前磁头最近的磁道上的请求服务的算法为SSTT算法,这种算法的缺点是会产生饥饿现象;选择优先为当前磁头移动方向上、离当前磁头最近的磁道上的请求服务的算法为SCAN算法。
-
判断题
- 构成SPOOLing系统的基本条件,是具有外围输入机和外围输出机。(×)
- 构成SPOOLing系统的基本条件,是只要具有大容量、高速硬盘作为输入井与输出井。(×)
- 构成SPOOLing系统的基本条件,是只要操作系统中采用多道程序技术。(×)
- SPOOLing系统是建立在分时系统中。(×)
- SPOOLing系统是虚拟存储技术的体现。(×)
- SPOOLing系统是在用户程序要读取数据时启动输入进程输入数据。(×)
- 当输出设备忙时,SPOOLing系统中的用户程序暂停执行,待I/O空闲时再被唤醒,去执行操作。(×)
- SPOOLing系统实现了对/0设备的虚拟,只要输入设备空闲,SPOOLing可预先将输入数据从设备传送到输入井中供用户程序随时读取。(×)
- 在SPOOLing系统中,用户程序可随时将输出数据送到输出井中,待输出设备空闲时再执行数据输出操作。(×)
-
连线题
为了对缓冲池中的队列进行操作而设置了互斥信号量MS[type]和资源信号量RS[type],相应地,两个操作过程Getbuf及Putbuf的描述如下:
procedure Getbuf(type)
begin
(wait(RS[type]));
(wait(MS[type]));
B(n):=Takebuf(type);
(wait(RS[type]));
end
procedure Putbuf(type,n)
begin
(wait(MS[type]));
Addbuf(type,n);
(wait(RS[type]));
(signal(RStype]));
end
-
完型填空
-
通道是一种特殊的 处理机 ,具有 执行I/O指令集 能力。主机的CPU与通道可以并行工作,并通过 I/O指令和I/O中断 实现彼此之间的通信和同步。
-
在I/O控制方式的发展过程中,最主要的推动因素是 减少主机对I/O控制的干预 。提高I/O速度和设备利用率,在OS中主要依靠 缓冲管理 功能。使用户所编制的程序与实际使用的物理设备无关是由 设备独立性 功能实现的。
-
磁盘属于 块设备 ,其信息的存取是以 固定长数据块 为单位的;磁盘的I/O控制主要采取 DMA 方式;打印机的I/0控制主要采取 程序中断 方式。
-
在利用RS-232接口进行通信时,其通信速率为9.6KB/S(B为Bit)。如果在通信接口中仅设置了一个8位寄存器作为缓冲寄存器,这意味着大约每隔 0.8ms 的时间便要中断一次CPU,且要求CPU必须在 1ms 时间内予以响应。
-
假定把磁盘上一个数据块中的信息输入到一单缓冲区的时间T为100us,将缓冲区中的数据传送到用户区的时间M为50us,而CPU对这一块数据进行计算的时间C为50us,这样,系统对每一块数据的处理时间为 150 s ;如果将单缓冲改为双缓冲,则系统对每一块数据的处理时间为100us 。
-
操作系统中采用缓冲技术的目的是为了增强系统 并行操作 的能力;为了使多个进程能有效地同时处理输入和输出,最好使用 缓冲池 。
-
设备独立性是指 用户程序 独立于 物理设备 。
-
在单用户系统中可为 整个系统 设置一张逻辑设备表,在多用户系统中应为 每个用户(进程) 设置一张逻辑设备表。
-
为实现设备分配,应为每个设备设置一张 设备控制表 ,在系统中配置一张 系统设备表 ;为实现设备独立性,系统中应设置一张 逻辑设备表 。
-
SPOOLing是对脱机I/O工作方式的模拟,SPOOLing系统中的输入井是对脱机输入中的 磁盘 进行模拟,输出井是对脱机输出中的 磁盘 进行模拟,输入进程是对脱机输入中的 外围控制机 进行模拟,输出进程是对脱机输出中的 外围控制机 进行模拟。
-
下列磁盘调度算法中,平均寻道时间较短,但容易产生饥饿现象的是 SSTF ;电梯调度算法是指 SCAN ;能避免磁臂粘着现象的算法是 FSCAN 。
-
第七章
-
单选题
- —个文件系统中,FCB占64 B, —个盘块大小为1KB,采用一级目录,假定文件 目录中有3200个目录项,则检索一个文件平均需要100次访问磁盘。
- 在图7.8所示的树形目录结构中,Wang用户需要经常性地访问Zhang用户的 /Zhang/Course/Coursel/fl文件,他可以通过 这个文件链接到Wang目录下,但不能使用原来的文件名 来提高检索速度并简化操作过程。
-
在linux中,设文件F1的当前链接计数为1,先建立F1的符号链接文件F2,再建立F1的硬链接文件F3,则此时文件F1、F2和F3的链接计数值分别是2, 1,2。
-
如果采用符号链接的方式共享文件,那么当文件被删除的时候,该共享链接会失效。
-
填空题
- 文件管理应具有文件存储空间的管理、目录管理、文件的读/写管理和文件的共享和保护等功能。
- 文件按逻辑结构可分成字符流式和记录两种类型,现代操作系统普遍采用的是其中的字符流式结构。
- 记录式文件,把数据的组织分成数据项、记录和文件三级。
- 数据项是用来描述一个实体的某个属性:记录是用来描述一个实体的某方面(相对完整)的属性:文件用于描述一个实体集(即群体) 的某方面的属件。
- 一个文件系统模型由最低层对象及其属性、中间层对对象进行操纵和管理的软件集合和最高层用户接口H个层次组成。
- 对文件的访问有顺序访问和随机访问两种方式。
- 从文件管理的角度来看,文件是由文件控制块FCB和文件体两部分组成的;而在具体实现时, 前者的信息通常以目录项或磁盘索引结点的方式存放在文件存储器上。
- 文件目录的最主要功能是实现按名存取(文件名到物理地址的转换),故目录项的内容至少应包含文件名和文件的物理地址。
- 对目录管理的要求,首先是能实现按名存取,其次是提高对目录的检索速度,同时应允许多个用户共享文件,以及允许文件重名,以便不同用户能按自己的习惯对文件命名。
- 在采用树形目录结构的文件系统中,树的结点分为三类:根结点表示根目录,枝结点表示子目录文件,叶结点表示数据文件。
- 在利用线性检索法对树形目录进行检索时,系统首先读入路径名的第一个分量名,将它与根目录;当前工作目录文件 中的各目录项中的文件名进行比较。若匹配,便可得到FCB;索引结点指针。
- 文件保护是指避免文件拥有者或其他用户因有意或无意的错误操作使文件受到破坏;文件共享是指允许多个用户共同使用同一个文件。
- 引入索引结点后,一个文件在磁盘中占有的资源包括一个磁盘索引结点、一个(或多个)目录项和若干个存放文件内容的磁盘块三部分。
- 文件在使用前必须先执行打开操作,其主要功能是把文件的FCB;索引结点从外存复制到内 存中,并在用户和指定文件之间津立一备诵.路,再返回给用户一个文件描述符。
-
判断题
- 在利用顺序检索法时,对树型目录应采用文件的路径名,且应从根目录开始逐级检索。(× )
- 由于Hash法具有较快的检索速度,故现代操作系统中已开始用它取代传统的顺序检索法。(× )
- 在顺序检索法的查找过程中,只要有一个文件分量名未能找到,便应停止查找。(√)
- 在顺序检索法的查找完成时,即应得到文件的物理地址。(× )
-
完型填空
-
文件系统最基本的目标是 按名存取 ,它主要是通过 目录管理 功能实现的,文件系统所追求的最 重要的目标是 提高对文件的存取速度 .
-
在文件系统中可命名的最小数据单位是 数据项 ,用户以 记录 为单位对文件进行存取、检 索等,对文件存储空间的分配则以 文件 为单位。
-
按逻辑结构可把文件分为 记录式文件 和 流式文件 两类,LINUX文件系统采用 流式文件 结构
-
OS用来控制和管理一个文件的文件属性信息被称作该文件的 FCB ,它通常存放在 该文件的上级目录的数据盘块 中。
-
在文件系统中是利用 目录 来组织大量的文件的,为了允许不同用户的文件使用相同 的文件名,通常文件系统中采用 多级目录 ;在目录文件中的每个目录项通常就是 FCBB ;在UNIX 系统中的目录项则是 文件名和索引结点指针 。
-
Windows FAT32的目录项中不会包含 件控制块的物理位置 ;而Unix的磁盘索引结点中不会包含 文件名信息。
-
在树型目录结构中,用户对某文件的首次访问通常都采用 文件路径名 ;文件被打开后,对 文件的访问通常采用 用户文件描述符. ;打开文件操作完成的主要工作是 把指定文件的目录项复制到内存指定的区域
-
利用Hash法查找文件时,如果目录中相应的目录项是空,则表示 系统中无指定文件名 ;如果目录项 中的文件名与指定的文件名相匹配,则表示 找到了指定文件 ;如果目录项中的文件名与指定的文件名 不匹配,则表示发生了冲突
-
有一共享文件,它具有下列文件名:/usr/Wang/test/report、/usr/Zhang/report 及 /usr/Lee/report,试填写图 7.7 中的 root , usr , Lee , test , report 。
-
10. 在执行close过程时,若系统打开文件表项引用计数f.count=0不成立,应 置用户文件描述符表项为空 ;若 f.count=0但内存索引结点引用计数i.count=0不成立,则应 用户文件描述符表项和文件表项皆为空 ;若i.count=0,则应 关闭文件 。
11. 在create处理过程中,若未检索到指定文件的索引结点,此时属于 创建新文件 ;检索到指 定文件的索引结点,此时若允许写,则此时属于 重写文件 ,否则是 出错
12. 在访问矩阵中,如果在域Di中运行的进程能够增删所有保护域中对对象j的访问 权,则访问权组access(i,j)中必须包含 所有权 ;如果在域Di中运行的进程拥有对对象j进行读 的权利,而且他可以将对对象j进行读的权利扩展到其他域中去,则访问权组aCCeSS(i,j) 中必须包含对读操作的 拷贝权 ;如果在域Di中运行的进程可以删改域Dm中的访问权,则访 问权组access(i, j)(j列代表域Dm)中必须包含 控制权
13. 将访问矩阵按列进行划分,可为每个列建立一张 访问控制表 ,如果对应列代表一个文件, 则可将 访问控制表 放在该文件的 文件控制块 中;将访问矩阵按行进行划分,则可为每个行建立一张 访问权限表 。通 过 访问权限表 和 访问控制表 来实现控制矩阵的主要目的是 减少访问矩阵的空间开销 。
第八章
-
单选题
- 从下面的描述中选出一条错误的描述 一个文件在同一系统中、不同的存储介质上的拷贝,应采用同一种物理结构
-
填空题
- 文件的物理结构中要有顺序结构、链接结构和索引结构三种类型,其中顺序访问效率最高的是顺序结构,随机访问效率最高的是索引结构。
- 可将顺序文件中的内容装入到连续的多个盘块中,此时,文件FCB的地址部分给出的是文件的首个物理块的块号,为了访问到文件的所有内容,FCB中还必须有文件长度信息。
- 可将链接式文件中的文件内容装入到离散的多个盘块中,并通过链接指针将它们构成一个队列,显式链接文件具有较高的检索速度。
- 对字符流式文件,可将索引文件中的文件内容装入到离散的多个盘块中,并为每个 文件建立一张索引表,其中毎个表项中含有逻辑块号和对应的物理块块号。
- UNIX SvstemV将分配给文件的前十个数据盘块的地址登记在索引结点的直接地址项中,而所有后 续数据块的地址则登记在一次间址盘块中:再将这些登记数据块地址的首个盘块的块号登记在索引结点的一次间址项中,其他块的块号则登记在二次间址盘块中。
- 在利用空闲链表来管理外存空间时,可有两种方式:一种以空闲盘块为单位拉成一条链: 另一种以空闲盘区为单位拉成一条链。
- 在成组链接法中,将毎一组的盘块数和该组的所有的盘块号记入前一组的最后一个盘块中:再将第一组的上述信息记入超级块的空闲盘块号栈中,从而将各组盘块链接起来。
- 磁盘的第一级容错技术SFT-I包含双份目录、双份文件分配表、热修复重定向和写后读校验等措施。
- 磁盘的第二级容错技术SFT-II主要用于防止磁盘驱动器和磁盘控制器的故障所导致的数据损坏,常用 的措施有磁盘镜像和磁盘双工。
- 集群系统的主要工作模式有双机热备份、双机互为备份和公用磁盘三种方式。
- 进行链接计数的一致性检查,需要检杳文件系统的所有目录,从而得到每个文件对应的目录项个数,并将其和该文件索引结点中的链接计数进行比较。
-
判断题
- 一个文件在同一系统中、不同的存储介质上的拷贝,应采用同一种物理结构。(×)
- 文件的物理结构不仅与外存的分配方式相关,还与存储介质的特性相关,通常在 磁带上只适合使用顺序结构。(√)
- 采用顺序结构的文件既适合进行顺序访问,也适合进行随机访问。(√)
- 虽然磁盘是随机访问的设备,但其中的文件也可使用顺序结构 (√)
- 顺序文件适合于建立在顺序存储设备上,而不适合于建立在磁盘上。(×)
- 在显式链接文件中是在每个盘块中设置一链接指针,用于将文件的所有盘块都链 接起来。(×)
- 顺序文件必须采用连续分配方式,而链接文件和索引文件则可采用离散分配方式。(√)
- 在MS-DOS中采用的是隐式链接文件结构。(×)
- 在索引文件中,索引表的每个表项中含有相应记录的关键字和该记录的物理地址。(√)
- 对顺序文件进行检索时,首先从FCB中读出文件的第一个盘块号;而对索引文件 进行检索时,应先从FCB中读出文件索引表的始址。(√)
- 对一个具有三级索引表的文件,存取一个记录通常需要三次访问磁盘。(×)
- 在文件较大时,无论进行顺序存取还是随机存取,通常都以索引文件方式为最快。(×)
- 虚拟盘是一种易失性存储器,因此它通常只用于存放临时文件。(√)
- 优化文件物理块的分布可显著地减少寻道时间,因此能有效地提高磁盘I/O的 速度。(√)
- 对随机访问的文件,可通过提前读提高对数据的访问速度。(×)
- 延迟写可减少启动磁盘的次数,因此能等效地提高磁盘丨/0的速度(√)
-
完型填空
- 假定盘块的大小为1KB,对于1.2 MB的软盘,FAT需占用( 1.8KB )的存储空间;对于 100 MB的硬盘,FAT需占用( 250KB )的存储空间。
- 某些系统中设置了一张 位示图 表,其中的每一个二进制位可用来表示磁盘中的一个块 的使用情况;也有些系统中设置了一张 文件分配表 表,其中的每个表项存放着文件中下一个盘块的物理地址。
- 在下列物理文件中,顺序文件将使文件顺序访问的速度最快; 隐式链接文件 最不适合对文件进行随 机访问;直接文件 能直接将记录键值转换成物理地址。
- 对文件空闲存储空间的管理,在MS-DOS中是采用 文件分配表 ; UNIX中采用 成组链接法 : Linux 的extfs则采用 位示图 。
- 如果利用20行、30列的位示图来标志空闲盘块的状态,假定行号、列号和盘块号 均从1开始编号,则在进行盘块分配时,当第一次找到的空闲盘块(即该位的值为“0”) 处于第5行、第12列,则相应的盘块号为 132 ;第二次找到值为“0”的位处于第11行、 第18列,则相应的盘块号为 318 。在回收某个盘块时,若其盘块号为484,则它在位示图 中的位置应为第 17 行,第 4 列。
- 磁盘高速缓冲设在内存 中,其主要目的是提高磁盘I/O的速度。
- 下列方式中, 在磁盘上设置多个分区无法提高磁盘I/O的速度, 磁盘高速缓存不能改善磁盘系统的可靠性。
- 为实现磁盘镜像功能,需要在系统中配置 两台磁盘驱动器 ;而为实现磁盘双工功能,则需要在系统中配置两台磁盘控制器 。
第九章
-
单选题
- 从下述关于脱机命令接口的不同论述中,选择一条正确的论述。 该接口是作业控制语言
- 用户程序发出磁盘I/O请求后,系统的正确处理流程是 用户程序一系统调用处理程序一设备驱动程序一中断处理程序
-
填空题
- 用户程序必须通过程序接口方能取得操作系统的服务,该接口主要是由一组系统调用组成的
- 在字符界面下,用户必须通过命令接口方能取得操作系统的服务,该接口按对作业控制方式的不同又可分为联机命令接口和脱机命令接口
- 在联机命令接口中,实际上包含了终端处理程序、命令解释程序和一组联机命令三部分
- 在键盘终端处理程序中,有面向字符方式和面向行方式两种方式实现字符接收的功能。
- 回显是指终端处理程序将用户从终端键盘输入的每个字符送屏幕显示。用软件方式来实现回显可以使它更方便、更灵活
- MS-DOS中的COMMAND.COM或UNIX中的Shell通常被叫做命令解释程序,它们放在操作系统的最高层,其主要功能是解释并执行终端命令
- 用户与系统管理员协商一个唯一的用户名,供该用户以后进入系统时使用,称此过程为注册:用户每次打开自己的终端后,根据系统的提示,依次键入自己的用户名和口令 的过程称为登录。
- 图形用户接口使用了WIMP技术,将窗口、图标、菜单、指点设备(如鼠标) 和面向对象技术集成在一起,形成了一个视窗操作环境
- 将系统调用参数传递给内核函数有多种方式,MS-DOS采用将参数送入寄存器的方式,Unix则常采用参数表方式,有的系统还可以通过陷入指令自带参数方式来传递少暈的参数
-
判断题
- 终端处理程序将从终端打入的字符,直接送给用户程序。(×)
- 在现代大、中型机中,为了暂存用户从终端打入的字符,通常为每个终端设置一 个可容纳几行字符的专用缓冲区 (×)
- 为了提高回送的显示速度,往往用硬件来实现,只是在要求回送速度不高的场合, 才用软件来实现 (×)
- 在有的计算机中,从键盘送出的是键码,此时应采用某种转换机构,将键码转换 为ASCII码(√)
- 联机命令接口,是用户程序与0S之间的接口,因此它不是命令接口 (×)
- 联机命令接口包括键盘和屏幕两部分。 (×)
- 联机命令接口包括一组键盘命令、终端处理程序及命令解释程序三个部分(√)
- 联机命令接口是用户程序 (×)
- Shell是一种编程语言,它提供选择、循环等控制结构 (√)
- Shell是一个命令解释器,它对用户输入的命令进行解释执行 (√)
- Shell命令就是由Shell实现的命令,它们的代码包含在Shell内部 (×)
- 在Unix和Linux系统中,有多种不同的Shell供用户选择 (√)
- 完型填空
-
OS向用户提供的接口有多种:通过(联机命令接口),用户可从终端键入dir(或丨s)并按下回车键 来显示当前目录的内容;通过(图形用户接口),用户可双击窗口中的图标来运行相应的程序;通过(系统调用接口), 用户程序可使用open()来打开一个文件;通过(脱机用户接口),用户可将作业说明书和作业一起提交给 系统,从而让系统按作业说明书的要求来运行作业
-
使命令的执行结果不在屏幕上显示,而将之引向另一个文件,这种功能称为(输出重定向); 使命令所需的处理信息,不是从键盘接收,而是取自另一个文件,该功能称为(输入重定向);用于实 现把第一条命令的输出作为第二条命令的输入:又将第二条命令的输出作为第三条命令的 输入的功能的设施称为(管道线)。
-
在Intel X86处理机上,用户进程P通过系统调用creat创建一新文件时,是通过(int指令) 将控制转向creat的处理程序的;系统调用前,CPU运行在(用户态);在执行creat对应的处理 程序时,则运行在(核心态);系统调用返回后,(P进程或其他用户进程)将得到CPU。
-
在同一台计算机上,可以运行Windows、Linux、UNIX、DOS等不同的操作系统,它们的系统调用一般是通过执行(相同的)系统调用指令来完成的;对运行在不同的硬件平台上 的Linux操作系统,它们执行的系统调用指令一般是(不同的)