2017年内蒙古科技大学信息工程学院408计算机学科专业基础综合之计算机操作系统考研仿真模拟题
● 摘要
一、应用题
1. 一单道批处理系统中,有如下四个作业,并采用短作业优先调度算法,试计算作业的平均周转时间和平均带权周转时间。 (单位:小时)
【答案】7点时作业1先运行;
平均周转时间
为
小时 小时平均带权周转时间
为
【解析】作业平均周转时间和作业带权周转时间按下列公式计算。
作业平均周转时间
作业平均周转时间可用来衡量不同调度算法对同一作业流的调度性能。作业平均周转时间T 的公式为:
是作业的完成时间减去作业的提交时间。平均带权周转时间
作业i
的带权周转时间是作业i
的周转时间与作业i
的实际运行时间之比,
即
而作业平均带权周转时间W 的公式为:
2. 下图将一组进程分为4类,假定各类进程之间采用优先级调度,每类进程内部采用时间片轮转调度。请简述PI 、P2、P3、P4、P5、P6、P7、P8进程的调度过程。
【答案】不同类进程之间采用优先级调度,而同类进程内部采用时间片轮转调度。先进行优先级4的进程调度,P1, P2, P3按时间片进行轮转;等Pl ,P2, P3均执行完,执行优先级3的进程P4, P5。同理P4, P5按时间片轮转,运行完成后调度优先级1的进程P6, P7, P8。进程P6, P7, P8按时间片轮转直至完成。
【解析】所谓多级反馈队列轮转法就是把就绪进程按优先级排成多个队列,并赋给每个队列不同的时间片,高优先级进程的时间片比低优先级进程的时间片小。调度时先选择高优先级队列的第一个进程,使其投入运行,当该进程时间片用完后,若高优先级队列中还有其他进程,则按照轮转法依次调度执行,否则转入低一级的就绪队列。只有高优先级就绪队列为空时,才从低一级的就绪队列中调度进程执行。
二、综合题
3. 何谓微内核技术? 在微内核中通常提供了哪些功能?
【答案】(1)微内核技术的定义
把操作系统中更多的成分和功能放到更高的层次(即用户模式)中去运行,而留下一个尽量小的内核,用它来完成操作系统最基本的核心功能,这种技术被称为微内核技术。
(2)微内核技术提供的功能
在微内核中通常提供了进程(线程)管理、低级存储器管理、中断和陷入处理功能。
①进程(线程)管理
进程(线程)之间的通信功能是微内核0S 最基本的功能,被频繁使用,因此,几乎所有的微内核0S 都是将进程(线程)之间的通信功能放入微内核中。
②低级存储器管理
在微内核中,只配置最基本的低级存储器管理机制,如用于实现将用户空间的逻辑地址变换
为内存空间的物理地址的页表机制和地址变换机制,这一部分是依赖于硬件的,因此放入微内核。
③中断和陷入处理
大多数微内核操作系统都是将与硬件紧密相关的一小部分放入微内核中处理,此时微内核的主要功能是捕获所发生的中断和陷入事件,并进行相应的前期处理。
4. 被选用的生理标志应具有哪几个条件?请列举几种常用的生理标志。
【答案】(1)被选用的生理标志应具有这样三个条件:
①足够的可变性,系统可根据它来区别成千上万的不同用户;
②被选用的生理标志应保持稳定,不会经常发生变化;
③不易被伪装。
(2)常用的生理标志是指纹、眼纹、声音、人脸。
5. 何谓提前读和廷迟写?
【答案】(1)提读的定乂
提前读是指用户(进程)对文件进行访问时,经常采用顺序访问方式,即顺序地访问文件各盘块的数据。在这种情况下,在读当前块时可以预知下一次要读的盘块。因此,可以采取预先读方式,即在读当前块的同时,还要求将下一个盘块(提前读的块)中的数据也读入缓冲区。这样,当下一次要读该盘块中的数据时,由于该数据已被提前读入缓冲区,因而此时便可直接从缓冲区中取得下一盘块的数据,而不需再去启动磁盘I/0, 从而大大减少了读数据的时间。这也就等效于提高了磁盘I/O的速度。
(2)延迟写的定义
延迟写是指在缓冲区中的数据,本应立即写回磁盘,但考虑到该缓冲区中的数据在不久之后
,因而并不立即将该缓冲区中的数据写入磁盘,可能还会再被本进程或其它进程访问(共享资源)
而是将它挂在空闲缓冲区队列的末尾。随着空闲缓冲区的使用,缓冲区也缓缓往前移动,直至移到空闲缓冲队列之首。当再有进程申请到该缓冲区时,才将该缓冲区中的数据写入磁盘,而把该缓冲区作为空闲缓冲区分配出去。当该缓冲区仍在队列中时,任何访问该数据的进程,都可直接读出其中的数据而不必去访问磁盘。这样,又可进一步减小等效的磁盘I/O时间。
6. 常规存储器管理方式具有哪两大特征? 它对系统性能有何影响?
【答案】(1)常规存储器管理方式的特征
①一次性
是指作业必须一次性地全部装入内存后方能开始运行。在传统存储器管理方式中,无一例外地要求先将作业全部装入内存后方能运行。正是这一特征导致了大作业无法在小内存中运行,以及无法进一步提高系统的多道程序度,直接限制了对处理机的利用率和系统的吞吐量的提高。事实上,许多作业在运行时,并非需要用到全部程序和数据,如果一次性地装入其全部程序和数据,显然也是对内存空间的一种浪费。
②驻留性
是指作业被装入内存后,整个作业都一直驻留在内存中,其中任何部分都不会被换出,直至作业运行结束。尽管运行中的进程会因I/O等原因而被阻塞,可能处于长期等待状态,或者有的程序模块在运行过一次后就不再需要(运行)了,它们都仍将驻留在内存中,继续占用宝贵的内存资源。