一.单选题
-
如果发现系统有( )的进程队列就说明系统有可能发生死锁了。
A、互斥
B、可剥夺
C、循环等待
D、同步 -
( )是作业存在的惟一标志。
A、作业名
B、进程控制块
C、作业控制块
D、程序名 -
系统中有某类资源12个供若干进程共享,若每个进程申请的资源量不超过4个,则最多允许( )个进程共享资源就可以保证系统是安全的。
A、3
B、4
C、5
D、12
正确答案: A 我的答案:A得分: 2.0分 -
当对信号量进行V原语操作时( )。
A、当S<0,进程继续执行
B、当S>0,要唤醒一个就绪进程
C、当S<=0,要唤醒一个等待进程
D、当S<0,要唤醒一个等待进程 -
在创建进程时确定的,确定之后在整个进程运行期间不再改变的是( )优先权。
A、先来先服务
B、静态
C、动态
D、短作业 -
分时系统中的当前运行进程连续获得了两个时间片,原因可能是( )。
A、该进程的优先级最高
B、就绪队列为空
C、该进程最早进入就绪队列
D、该进程是一个短进程 -
设有三个作业,其运行时间分别是2h、5h、3h,假定它们同时到达,并在同一台处理器上以单道方式运行,则平均周转时间最小的执行顺序是( )。
A、J1,J2,J3
B、J3,J2,J1
C、J2,J1,J3
D、J1,J3,J2 -
在多道批处理系统中,除了可共享的系统资源不足可能会导致死锁之外,不适当的( )也可能产生死锁。
A、进程优先权
B、资源的线性分配
C、进程推进顺序
D、分配队列优先权 -
设有4个作业同时到达,每个作业的执行时间均为2h,它们在一台处理器上按单道式运行,则平均周转时间为( )。
A、1h
B、5h
C、2.5h
D、8h -
下述作业调度算法中,( )调度算法与作业的估计运行时间有关。
A、先来先服务
B、短作业优先
C、均衡
D、时间片轮转 -
正在运行的进程在信号量S上操作P操作之后,当S<0,进程将进入信号量的( )。
A、等待队列
B、提交队列
C、后备队列
D、就绪队列 -
既考虑作业等待时间,又考虑作业执行时间的调度算法是( )。
A、响应比高者优先
B、短作业优先
C、优先级调度
D、先来先服务 -
设与某资源相关联的信号量初值为3,当前值为1,若M表示当前该资源的可用个数,N表示等待资源的进程数,则M,N分别是( )(考研题)
A、 0,1
B、1,0
C、1,2
D、2,0 -
在为多道程序所提供的可共享的系统资源不足时,可能出现死锁。但是,不适当的( )也可能产生死锁。
A、进程优先权
B、资源的线性分配
C、进程推进顺序
D、分配队列优先权 -
若进程P一旦被唤醒就能够投入运行,系统可能为( )。
A、进程P的优先级最高
B、在抢占调度方式中,就绪队列中所有进程的优先级皆比P的低
C、就绪队列为空队列
D、在抢占调度方式中,P的优先级高于当前运行的进程 -
当前运行的进程( ),将引发系统进行进程调度。
A、执行了一条转移指令
B、要求增加主存空间,经系统调用银行家算法进行测算认为是安全的
C、执行了一条I/O指令
D、执行程序期间发生了I/O完成中断 -
采用时间片轮转调度算法分配CPU 时,当处于运行状态的进程用完一个时间片后,它的状态是( )状态。
A、阻塞
B、运行
C、就绪
D、消亡 -
设系统中有N(N>2)个进程,则系统中最不可能的是有( )个进程处于死锁状态。
A、0
B、1
C、2
D、M(2<M<=N) -
两个进程争夺同一个资源( )。
A、一定死锁
B、不一定死锁
C、不死锁
D、以上说法都不对 -
3个进程A、B、C对某类资源的需求分别是7个、8个、3个。且目前已分别得到了3个、3个和2个资源,若系统还至少能提供( )个资源,则系统是安全的。
A、1
B、2
C、5
D、10 -
在分时操作系统中,进程调度经常采用( )算法。
A、先来先服务
B、最高优先权
C、时间片轮转
D、随机 -
时间片轮转调度算法是为了( )。
A、多个用户能及时干预系统
B、使系统变得高效
C、优先级较高的进程得到及时响应
D、需要CPU时间最少的进程最先做 -
进程调度又称为低级调度.其主要功能是( )。
A、选择一个作业调入内存
B、选择一个主存中的进程调出到外存
C、选择一个外存中的进程调入到主存
D、将一个就绪的进程投入运行 -
在作业调度中,若所有作业同时到达,则平均等待时间最短的算法是( )。
A、先来先服务
B、优先数
C、最高响应比优先
D、短作业优先 -
若进程P一旦被唤醒就能够投入运行,系统可能为( )。
A.进程P的优先级最高
B.在抢占调度方式中,就绪队列中所有进程的优先级皆比P的低
C.就绪队列为空队列
D.在抢占调度方式中,P的优先级高于当前运行的进程 -
采用资源剥夺法可解除死锁,还可以采用( )方法解除死锁。
A.执行并行操作
B.撤消进程
C.拒绝分配新资源
D.修改信号量教师批阅正确 -
发生死锁的必要条件有四个,要防止死锁的发生,可以破坏这四个必要条件,但破坏( )条件是不太实际的。
A.互斥
B.不可抢占
C.部分分配
D.循环等待 -
资源的按序分配策略可以破坏( )的条件。
A.互斥使用资源
B.占有且等待资源
C.非抢夺资源
D.环路等待资源 -
当前运行的进程( ),将引发系统进行进程调度。
A.执行了一条转移指令
B.要求增加主存空间,经系统调用银行家算法进行测算认为是安全的
C.执行了一条I/O指令
D.执行程序期间发生了I/O完成中断 -
进程从运行状态变为等待的原因可能是( )。
A.输入/输出事件完成
B.时间时刻
C.输入/输出事件发生
D.某个进程被唤醒 -
在非剥夺调度方式下,运行进程执行V原语后,其状态()。
A.不变
B.要变
C.可能要变
D.可能不变 -
下列选项中,可能导致当前进程 P 阻塞的事件是( )。Ⅰ. 进程 P 申请临界资源。Ⅱ. 进程 P 从磁盘读数据。Ⅲ. 系统将 CPU 分配给高优先权的进程
A.仅Ⅰ
B. 仅Ⅱ
C. 仅Ⅰ、Ⅱ
D. Ⅰ、Ⅱ、Ⅲ
二.填空题
- 采用有序分配策略可以防止死锁,但是实现该策略时最大的困难是 如何确定资源的编号 。
- 对待死锁,一般应考虑死锁的预防、避免、检测和解除四个问题。典型的银行家算法是属于 避免 ,破坏环路等待条件是属于 预防 ,而剥夺资源是 解除 的基本方法。
- 对于内存和 处理机 两种资源可以采用抢夺式分配。
- 在 FCFS 调度算法中,按照进程进入就绪队列的先后次序来分配处理机。
- 银行家算法中,当一个进程提出的资源请求将导致系统从 安全状态 进入 不安全状态 时,系统就拒绝它的资源请求。
- 低级调度也称为 进程 调度,常采用抢占和非抢占两种调度方式。
- 操作系统中解决死锁问题的方法有预防死锁、 避免死锁 、死锁检测和解除。
- 进程调度算法采用时间片轮转法时,如果时间片过大,就会使其变化为 FCFS 调度算法。
- 银行家算法中,当一个进程提出的资源请求将导致系统进入 不安全 状态时,系统就拒绝它的资源请求。
- 作业调度又称 高级调度 。其主要功能是接纳作业,并为作业做好运行前的准备工作和作业完成后的善后处理工作。
- 中级调度又叫 内存调度 ,引入中级调度的目的是提高内存利用率和系统吞吐量 。
- 如果要求所有进程一次性申请它所需要的全部资源。若系统有足够的资源分配给进程,便一次把所有的资源分配给该进程。但在分配时只要有一种资源要求不能满足,则资源全不分配,进程等待。这种死锁预防方法破坏了死锁产生必要条件中的 请求和保持 条件。
- 引入中级调度的目的是提高 内存利用率 和系统吞吐量 。
- 对于内存和 处理机 两种资源可以采用抢夺式分配。
- 操作系统中解决死锁问题的方法有3种,即 死锁避免 、 死锁预防 和 死锁解除 。
- 如果要求所有进程一次性申请它所需要的全部资源。当系统有足够的资源,便一次性把所有的资源分配给该进程。如果资源不足,则全不分配,进程等待。这破坏了死锁产生的 请求和保持 条件。
三.判断题
- 当检测出发生死锁时,可以通过撤消一个进程解除死锁。
正确答案:×
当检测出发生死锁时,终止(或撤销)系统中的一个或多个死锁进程,直至打破循环环路,使系统从死锁状态中解除出来。
- 设备独立性是指用户在编程时,程序中所使用的设备与实际设备无关。
正确答案:√ - 以优先级为基础的进程调度算法可以保证在任何时候正在运行的进程总是所有进程中优先级最高的进程。
正确答案:× - 对于可抢占性资源会引起死锁。
正确答案:× - 进程被撤销时,只需释放该进程的PCB就可以了,因为PCB是进程存在的唯一标志。
正确答案:× - 短作业优先算法可能会出现饥饿现象。
正确答案:√ - 以优先级为基础的进程调度算法可以保证在任何时候正在运行的进程总是所有就绪进程中优先级最高的进程。
正确答案:× - 用户程序中执行系统调用命令时,处理机的状态字将发生改变。
正确答案:√ - 进程的互斥和同步都能用P/V原语实现。
正确答案:√
死锁的四个必要条件(四个条件四者不可缺一):
(1)互斥条件。某段时间内,一个资源一次只能被一个进程访问。
(2)请求和保持条件。进程A已经拥有至少一个资源,此时又去申请其他资源,而该资源又正在被进程使用,此时请求进程阻塞,但对自己已经获得的资源保持不放。
(3)不可抢占资源。进程已获得的资源在未使用完不能被抢占,只能在自己使用完时由自己释放。
(4)循环等待序列。存在一个循环等待序列P0P1P2……Pn,P0请求正在被进程P1占有的资源,P1请求正在被P2占有的资源……Pn正在请求被进程P0占有的资源。
解除死锁的两种方法:
(1)终止(或撤销)进程。终止(或撤销)系统中的一个或多个死锁进程,直至打破循环环路,使系统从死锁状态中解除出来。
(2)抢占资源。从一个或多个进程中抢占足够数量的资源,分配给死锁进程,以打破死锁状态。