1,简要描述三种类型的处理器调度(P282,P283)
a,长程调度:长程调度程序决定哪一个程序可以进入系统中处理,因此,它控制着系统并发度。一旦允许进入,一个作业或用户程序就成为一个进程,并被添加到供短程调度程序使用的队列中等待调度。在某些系统中,一个新创建的进程开始处于被换出状态,在这种情况下,它被添加到供中程调度程序使用的队列中等待调度。
b,中程调度:中程调度是交换功能的一部分。在典型情况下,换入(swapping-in)决定取决于管理系统并发度的需求。在不使用虚拟存储的系统中,存储管理也是一个问题。因此,换入决策将考虑换出(swapped-out)进程的存储需求。
c,短程调度:短程调度程序,也称为分派程序(dispatcher),执行得最频繁,并且精确地决定下一次执行哪一个进程。
2,在交互式操作系统中,通常最重要的是什么?
反应时间
3,周转时间和响应时间有什么区别?(P284)
周转时间:指一个进程从提交到完成之间的时间间隔,包括实际执行时间加上等待资源(包括处理器资源)的时间,对批处理作业而言,这是一种很适宜的度量。
响应时间:对一个交互进程,这是指从提交一个请求到开始接收响应之间的时间间隔。通常进程在处理请求的同时,就开始给用户产生一些输出。因此从用户的角度来看,相对于周转时间,这是一种更好的度量。该调度原则应该试图到达较低的响应时间,并且在响应时间课接受的范围内,使得可以交互的用户的数目达到最大。
4,对于进程调度,较小的优先级值表示较低的优先级还是表示较高的优先级?
在UNIX和许多其他系统中,大的优先级值表示低优先级进程。许多系统,比如Windows刚好相反,大数值表示高优先级。
5,抢占式和非抢占式调度有什么区别?
抢占式:当前正在运行的进程可能被操作系统中断,并转移到就绪态。关于抢占的决策可能是在一个新进程到达时,或者在一个中断发生后,把一个被阻塞的进程置为就绪态时,或者出现基于周期性的时间中断时。
非抢占式:一旦进程处于运行状态,它就不断执行直到终止,或者因为等待I/O,或者因而请求某些操作系统服务而阻塞自己。
6,简单定义FCFS调度。(P287)
先来先服务(FCFS),也称为先进先出(First-in-first-out,FIFO)或严格排队方案。当每个进程就绪后,它就加入就绪队列。当前正在运行的进程停止执行时,选择在就绪队列中存在时间最长的进程运行。
7,简单定义轮转调度。(P288)
以一个周期性间隔产生时钟中断,当中断发生时,当前正在运行的进程被置于就绪队列中,然后基于FCFS策略选择下一个就绪作业运行。这种技术也称为时间片,因为每个进程在被抢占前都给定一片时间。
8,简单定义最短进程优先调度。(P289)
减少FCFS固有的对长进程的偏向的另一种方法是最短进程优先(Shortest Process Next, SPN)策略。这是一个非抢占的策略,其原理是下一次选择预计处理时间最短的进程。
9,简单定义最短剩余时间调度。(P290)
最短剩余时间(Shortest Remaining Time, SRT)是针对SPN增加了抢占机制的版本。在这种情况下,调度程序总是选择预期剩余时间最短的进程。当一个新进程加入就绪队列时,它可能比当前运行的进程具有更短的剩余时间,因此,只要新进程就绪,调度程序就可能抢占当前正在运行的进程。和SPN一样,调度程序在执行选择函数时必须有关于处理时间的估计,并且存在长进程饥饿的危险。
10,简单定义最高响应比优先调度。(P291)
在当前进程完成或被阻塞时,选择R值最大的就绪程序。R=(W+S)/S, W等待处理器时间,S期待的服务时间。
11,简单定义反馈调度。(P291)
调度基于抢占原则(按时间片)并且使用动态优先级机制。每当它被抢占时,它被降级到下一个低优先级队列中。一个短进程很快会执行完,不会在就绪队列中降很多级,一个长进程会逐级下降。因此,新到的进程和短进程优先于老进程和长进程。在每个队列中,除了在优先级最低的队列中之外,都使用简单的FCFS机制。一旦一个进程处于优先级最低的队列中,它就不可能再降低,但是会重复地返回该队列。