单选题
在一台按字节编址的8位计算机系统中,采用虚拟页式存储管理方案,页面的大小为1KB,且系统中没有使用快表(或相联存储器)。图2-5所示的是划分成6个页面的用户程序。
图中swap
A,B是16位的指令,A和B表示该指令的两个16位操作数。swap指令存放在内存的1023单元中,操作数A存放在内存的3071单元中,操作数B存放在内存的5119单元中。执行swap指令需要访问{{U}}
{{U}} 9 {{/U}} {{/U}}次内存,将产生{{U}} {{U}} 10 {{/U}}
{{/U}}次缺页中断。
【正确答案】
C
【答案解析】[解析] 根据试题中的条件,内存按字节编址,页面大小为1024B。swap A,B是16位的指令,存放在内存的1023单元中,实际上需要存放在第0页最后1个单元和第1页第1个单元中。同样,操作数A存放在第2页最后1个单元和第3页第1个单元中,操作数B存放在第4页最后1个单元和第5页第1个单元中。因此,执行swap指令将产生5次缺页中断(不可能出现指令本身的2次缺页)。
在没有快表的情况下,由于页表是驻留在内存的某个固定区域中,而取数据或指令又必须经过页表变换才能得到实际物理地址。因此,取一个数据或指令至少要访问内存两次以上。
单选题
若操作系统中有n个作业J
i(i=1,2…,n),分别需要T
i(i=1,2…,n)的运行时间,采用{{U}}
{{U}} {{/U}} {{/U}}的作业调度算法可以使平均周转时间最短。
- A.先来先服务
- B.最短时间优先
- C.响应比高者优先
- D.优先级
【正确答案】
B
【答案解析】[解析] 作业调度主要完成从后备状态到执行状态的转变,以及从执行状态到完成状态的转变。常用的作业调度算法主要有以下几种:
(1)先来先服务(FCFS)。按作业到达的先后次序调度,它不利于短作业。
(2)最短作业优先(SJF)。按作业的估计运行时间调度,估计运行时间短的作业优先调度。它不利于长作业,可能会使一个估计运行时间长的作业迟迟得不到服务。
(3)响应比高者优先(HRN)。综合上述两者,既考虑作业估计运行时间,又考虑作业等待时间,响应比HKN=(估计运行时间+等待时间)/估计运行时间。
(4)定时轮转法(按时间片)。适合作业不定的情况。
(5)优先数法。根据作业的优先级别,优先级高者先调度。
那么,怎样来衡量一个作业调度算法是否满足系统设计的要求呢?对于批处理系统,由于主要用于计算,因而对于作业的周转时间要求较高,从而作业的平均周转时间或平均带权周转时间被用来衡量调度程序的优劣。但对于分时系统和实时系统来说,平均响应时间又被用来衡量调度策略的优劣。
(1)周转时间。作业i的周转时间Ti为Ti=Tei-Tsi。其中Tei为作业i的完成时间,Tsi为作业i的提交时间。对于被测定作业流所含有的n(n≥1)个作业来说,其平均周转时间为:
[*]
一个作业的周转时间说明了该作业在系统内停留的时间,包含两部分,分别为等待时间和执行时间,即Ti=Twi+Tri。这里,Twi主要指作业i由后备状态到执行状态的等待时间,不包括作业进入执行状态后的等待时间;Tri为作业的执行时间。
(2)带权周转时间。带权周转时间是作业周转时间与作业执行时间之比,即Wi=Ti/Tri。对于被测定作业流所含有的n(n≥1)个作业来说,其平均带权周转时间为:
[*]
根据以上分析,从直观上来说,采用最短作业优先的调度算法,可使得系统在同一时间内处理的作业个数最多,从而吞吐量也就大于其他调度方式。