第一部分 操作系统概述
一、基本题
1. 在单处理器的计算机系统中,采用多道程序设计技术后,处于运行状态的作业可以有几个?处于运行状态的进程有几个?为什么?
2. 设计多道系统时,为实现对并发进程的控制和管理应解决哪些方面的问题?简要说明之。
3. 有两个程序,A程序按顺序使用CPU10s,使用设备甲5s,使用CPU5s,使用设备乙10s,最后使用CPU10s。B程序按顺序使用设备甲10s,使用CPU10s,使用设备乙5s,使用CPU5s,使用设备乙10s。在顺序环境下先执行程序A再执行程序B,CPU的利用率是多少?
4. 从资源管理的观点来看,操作系统的管理对象是计算机系统的资源,操作系统则是管理系统资源的程序集合。⑴请问操作系统所管理的资源有哪些?⑵操作系统从哪几个方面对资源进行管理?主要完成什么工作?
5. 什么是特权指令?计算机为什么要将指令系统区分为特权指令和非特权指令?
6. 怎样限制用户程序使用特权指令?
7. 操作系统为什么要设管理态和用户态? 如何判断系统当前处于什么状态(或者为CPU如何判断当前可否执行特权指令)?
8. 什么是程序状态字(PSW)?它的主要内容是什么?
9. 中断的定义、中断的分类、中断源、中断处理程序、中断向量、中断的优先级、中断的响应、中断处理。
10. 区分强迫性中断和自愿中断。
11. 访管指令是特权指令吗?访管中断是干什么用的?
12. 系统调用的目的是什么?如何实现与操作系统相关的系统调用以及与双重模式(内核模式和用户模式)操作相关的系统调用?
13. 说明中断屏蔽的作用.
14. 操作系统为用户提供了那几种类型的接口?它们的主要功能是什么? 它们的区别是什么?用户怎样使用操作系统提供的接口?
15. 现在有以下应用计算机的场合,请为其选择适当类型的操作系统:
⑴ 航空航天、核聚变研究
⑵ 国家统计局数据处理中心
⑶ 学校学生上机学习编程
⑷ 高炉炉温控制
⑸ 民航局订票系统
⑹ 发送(在两个地区之间)
16. (M.I.T习题)说明以下各条指令是特权指令还是非特权指令,并说明理由:
⑴ 启动磁带机 ⑵ 求π的n次幂 ⑶ 停止CPU ⑷ 读时钟
⑸ 清主存 ⑹ 屏蔽一切中断 ⑺ 修改指令地址寄存器的内容
17. 什么是操作系统的异步性(不确定性)什么原因使操作系统具有该特性?
18. 试举例说明单用户单任务的操作系统、单用户多任务与多用户多任务的操作系统之间的区别。
19. 名词解释:
分时、实时、作业、程序、多道程序设计、多任务、多用户、联机I/O、脱机I/O、虚拟、共享、作业、用户、目态、管态、特权指令、可再入程序(纯过程)、系统调用(TRAP指令)、并行、并发、同步、异步、虚拟、共享 、虚拟机、虚拟处理机、多重处理、
二、思考题
1. 网络操作系统和分布式操作系统都是配置在计算机网络上的操作系统,它们之间有什么本质上的不同?
2. 一个实时信息处理系统和一个分时系统从外表看来很相似,那么它们有什么本质的区
别呢(分时系统和实时系统的区别是什么)?
3. 硬件具备哪些条件后,操作系统才可能提供多道程序设计的功能?
4. 什么是“前台”作业、“后台”作业?为什么对“前台”作业要及时响应?
5. CPU响应中断时,为什么要交换程序状态字?怎样进行?
6. 强迫中断是指哪些中断?
7. 多重中断是什么?
8. 计算机系统中既有操作系统程序,又有用户程序,在什么情况下操作系统才能占用中央处理器?
9. 为什么要把“启动I/O”等指令定义为特权指令?
10. 操作系统常常采用时间换取空间或空间换取时间的技术.试问,你能举出两个例子吗?
第二部分 进程
一、基本题
1. 什么叫进程?为什么要引入进程的概念?
2. 进程的基本特征是什么?请叙述进程与程序的关系和差别?
3. 进程有哪几种基本状态(7种)?操作系统最少应为进程设置几个状态?为什么?请画出各状态之间的状态变化图并说明状态转换的典型原因?
4. 什么是PCB?包含哪些主要内容?其作用是什么(为什么说PCB是进程存在的唯一标志)?
5. 下列哪些情况是对的:
⑴ 进程由自己创建 ⑷ 进程由于自己解除挂起
⑵ 进程由于自己阻塞 ⑸ 进程由于自己唤醒
⑶ 进程由于自己挂起 ⑹ 进程由自己撤消
6. 什么是CPU的“忙等待”?为消除“忙等待”须引入什么办法?会带来什么好处?
7. (M.I.T习题)用进程状态变迁图,我们可以说明有关处理机管理的大量内容,
⑴ 什么“事件”引起每次显著的状态变迁?
⑵ 当人们观察系统中所有进程时,我们能够看到由某一进程产生的一次状态变迁也可能引起一进程的变迁。在什么情况下,进程变迁3能立即引起一进程的变迁1发生?
⑶ 在什么情况下,如果有的话,将发生下述因果变迁: 21; 32; 41
⑷ 在什么情况下,如果有的话,下述变迁不会立即引起其它变迁发生?
a) 1; b) 2; c) 3; d) 4
8. 什么是原语?原语与非内核程序在执行上有什么不同?
9. 为什么要引入挂起状态?进程的挂起与阻塞有什么异同?
10. 并发进程间的制约有哪两种?引起制约的原因是什么?请说明下列活动是属于哪种制约关系?
⑴ 若干同学去图书馆借书;
⑵ 两队进行篮球赛;
⑶ 流水线生产中的各道工序;
⑷ 商品生产和社会消费。
11. 我们说程序的并发执行将导致最终失去封闭性.这话对所有的程序都成立吗?试举例说明.
12. 什么叫与时间有关的错误?与时间有关的错误表现在哪些方面?请举例说明之.
13. 什么是进程间的互斥?什么是进程间的同步?这两个概念有何区别?
14. 什么叫临界资源?什么叫临界段? 对临界区的管理应符合哪些原则?你能用什么工具去
写进程间互斥的同步算法?书写该算法时应注意什么问题?
15. 下面是两个并发执行的进程,它们能正确运行吗?若不能正确运行,请举例说明,并改正之(X是定义的公共变量).
Cobegin
var x:integer;
procedure P1 procedure P2
var y,z:integer; var t,u:integer;
begin begin
x:=1; x:=0;
y:=0; t:=0;
if x>=1 then y:=y+1; if x<1 then t:=t+2;
z:=y u:=t
end; end;
coend;
16. 因修路使A地到B地的多路并行车道变为单车道,请问在此问题中,什么是临界资源?什么是临界段?
17. 什么是信号量?它有什么物理意义?应如何设置初值?请说明信号量的数据结构。
18. 设有n个进程共享一互斥段,对于如下两种情况:
⑴ 每次只允许一个进程进入互斥段;
⑵ 最多允许m个进程(m<n)同时进入互斥段;
所采用的信号量初值是否相同?信号量值的变化范围如何?
19. 什么是P、V操作?它们的物理意义什么?进程其它的几种同步与互斥工具如LOCK与LOCK,SEND与RECEIVE可能代替P与V吗?在什么场合下可以,在什么场合下不可以?
20. 现有六个进程P1,P2,…,P6,它们有如下图的并发关系,试用P、V操作实现这些进程间的同步.
21. 有一个阅览室,读者进入时必须先在一张登记表上进行登记信息,。该表为每一座位列出一个表目,包括座号、姓名。读者离开时要撤消登记信息。阅览室有100个座位,试问:
⑴ 应该设置几个进程?编制几段程序?进程和程序之间的对应关系如何?
⑵ 试用P、V操作描述这些进程间的同步算法。
22. 设有三个进程A,B,C,其中A和B构成一对生产者和消费者,共享一个由n个缓冲块组成的
缓冲池;B和C也构成一对生产者和消费者,共享另一个由m个缓冲块组成的缓冲池.用P、V操作描述它们之间的同步关系.
23. 有一只铁笼子,每次只放一只动物。猎手向笼子中放入老虎,农夫向笼子中放入猪,动物园等待取笼子中的老虎,饭店等待取笼子中的猪,试用P、V操作来写出同步它们的算法。
24. 独木桥问题。某条河上只有一座独木桥,以便行人过河。现在河的两边都有人要过桥,按照下面的规则过桥,为了保证过桥安全,请用P、V操作分别实现正确的管理。
过桥的规则是:同一方向的可连续过桥,某方向有人过桥时另一方向的人要等待。
25. 进程之间有哪几种通信方式?各种通信方式的特点如何?分别适用于哪些场合?
26. 什么是消息缓冲通讯? SEND和RECEIVE原语是什么?如何用P,V低级原语去构造它们?试分析其信号量取值范围的意义.
27. 一个线程可以包含多个进程试列举出引起进程调度的因素。进程调度的时机有哪几种?
28. 处理机调度一般分成几个别级?请说明每级的含义.分时系统中有作业调度的概念吗?如果没有,为什么?
29. 请在下面空格中,填入"静态优先级"或"动态优先级",并说明理由:
⑴ ( )比( )易于实现;
⑵ ( )比( )运行开销小;
⑶ ( )比( )更能反映进程运行环境的变化;
⑷ ( )比( )更需慎重地确定初始优先级.
30. 判别下列各结论的真假性,并说明你的理由:
⑴ 若系统限定一个进程在CPU上一次只能执行一个时间片,则系统采用的是剥夺式调度;
⑵ 若只当一个进程执行完了它的当前CPU周期(即进程申请的CPU时间)后,系统才重新调度,则系统采用的是非剥夺式调度;
⑶ 若现行进程需要等待某个事件时,系统将立即把CPU转交给其它进程,则系统采用的是剥夺式调度
⑷ 实时系统通常采用剥夺式调度;
⑸ 在剥夺式系统中,进程的周转时间较之在非剥夺式系统中可预见.
31. 什么是线程?试说明进程与线程的关系与区别。
32. 为什么线程间的模式切换比进程间的模式切换系统开销小?
33. 一个进程中的多个线程有以下两个优点:⑴在一个已有进程中创建一个新线程比创建一个新进程所需的工作量少;⑵在同一个进程中的线程间的通信比较简单。请问,同一个进程中的两个线程间的模式切换与不同进程中的两个线程间的模式切换相比,所需的工作量是否要少?
34. 什么是死锁?举例说明软件或硬件资源引起死锁情况。
35. 产生死锁的原因和必要条件是什么?有哪几种处理技术?
36. 异步前进的诸进程会因申请与释放资源顺序安排不当,或是进程使用同步工具时,P/V操作安排不当,造成死锁发生。试各举一例,并分析在什么情况下发生之。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论