操作系统题目(整理版) 联系客服

发布时间 : 星期一 文章操作系统题目(整理版)更新完毕开始阅读c6eec73a83c4bb4cf7ecd14c

问答题

1、试比较作业和进程的区别。

答:一个进程是一个程序对某个数据集的执行过程,是分配资源的基本单位。作业是用于需要计算机完成某项任务,而要求计算机所做工作的集合。一个作业的完成要经过作业提交,作业收容、作业执行和作业完成4个阶段。而进程是已提交完毕的程序所执行过程的描述,足资源分配的基本单位。其主要区别关系如下:

(1)作业是用户向计算机提交任务的任务实体。在用户向计算机提交作业之后,系统将存储在外存中的作业等待队列中等待执行。而进程则是完成用户任务的执行实体,是向系统申请分配资源的基本单位。任一进程,只要它被创建,总有相应的部分存在于内存中。 (2)一个作业可由多个进程组成。且必须至少由一个进程组成,但反过来不成立。 (3)作业的概念主要用在批处理系统中。像Unix这样的分时系统中,则没有作业 概念。而进程的概念则用在几乎所有的多道程序系统中

2.试比较进程和程序的区别。

答:(1)进程是一个动态概念,而程序是一个静态概念,程序是指令的有序集合, 无执行含义,进程则强调执行的过程。

(2)进程具有并行特征(独立性,异步性),程序则没有。

(3)不同的进程可以包含同一个程序,同一程序在执行中也可以产生多个进程。

3. 什么是线程?试述线程与进程的区别。

答;线程是在进程内用于调度和占有处理机的基本单位,它由线程控制表、存

储线程上下文的用户栈以及核心栈组成。线程可分为用户级线程、核心级线程以及用户/核心混合型线程等类型。其中用户级线程在用户态下执行,CPU调度算法和各线程优先级都由用户设置,与操作系统内核无关。核心级线程的调度算法及线程优先级的控制权在操作系统内核。混合型线程的控制权则在用户和操作系统内核二者。线程与进程的主要区别有:

(1)进程是资源管理的基本单位,它拥有自己的地址空间和各种资源,例如内存空间、外部设备等;线程只是处理机调度的基本单位,它只和其他线程一起共享进程资源,但自己没有任何资源。

(2)以进程为单位进行处理机切换和调度时,由于涉及到资源转移以及现场保护等问题,将导致处理机切换时间变长,资源利用率降低。以线程为单位进行处理机切换和调度时,由于不发生资源变化,特别是地址空间的变化,处理机切换的时间较短,从而处理机效率也较高。

(3)对用户来说,多线程可减少用户的等待时间。提高系统的响应速度。例如,当一个进程需要对两个不同的服务器进行远程过程凋用时,对于无线程系统的操作系统来说需要顺序等待两个不同调用返回结果后才能继续执行,且在等待中容易发生进程调度。对于多线程系统而言,则可以在同一进程中使用不同的线程同时进行远程过程调用,从而缩短进程的等待时间。

(4)线程和进程一样,都有自己的状态.也有相应的同步机制,不过,由于线程 没有单独的数据和程序空间,因此,线程不能像进程的数据与程序那样,交换 到外存存储空间。从而线程没有挂起状态。 (5)进程的调度、同步等控制大多由操作系统内核完成,而线程的控制既可以由 操作系统内核进行,也可以由用户控制进行。

4.进程调度的功能有哪些? 答:进程调度的功能有:

(1)记录和保存系统中所有进程的执行情况; (2)选择占有处理机的进程; (3)进行进程上下文切换。

5. 试比较P,V原语法和加锁法实现进程间互斥的区别。

答:互斥的加锁实现是这样的:当某个进程进入临界区之后,它将锁上临界区,直到它退出临界区时为止。并发进程在申请进入临界区时,首先测试该临界区是否是上锁的,如果该临界区已被锁住,则该进程要等到该临界区开锁之后才有可能获得临界区。但是加锁法存在如下弊端:(1)循环测试锁定位将损耗较多的CPU计算时间; (2)产生不公平现象。为此,P,V原语法采用信号量管理相应临界区的公有资源,信号量的数值仅能由P,V原语操作改变,而P,V原语执行期间不允许中断发生。其过程是这样的:当某个进程正在临界区内执行时,其他进程如果执行了P原语,则该进程并不像lock时那样因进不了临界区而返回到lock的起点,等以后重新执行测试,而是在等待队列中等待由其他进程做V原语操作释放资源后,进入临界区,这时P原语才算真正结束。若有多个进程做P原语操作而进入等待状态之后,一旦有V原语释放资源,则等待进程中的一个进入临界区,其余的继续等待。 总之,加锁法是采用反复测试lock而实现互斥的,存在CPU浪费和不公平现像, P,V原语使用了信号量,克服了加锁法的弊端。

6. 什么是进程间的互斥?什么是进程间同步?

答:进程间的互斥是指:一组并发进程中的一个或多个程序段,因共享某一公有资源而导致它们必须以一个不许交叉执行的单位执行,即不允许两个以上的共享该资源的并发进程同时进入临界区。

进程间的同步是指:异步环境下的一组并发进程因直接制约互相发送消息而进 行互相合作、互相等待,各进程按一定的速度执行的过程。

7.实现地址重定位的方法有哪几类?

答:实现地址重定位的方法有两种:静态地址重定位和动态地址重定位。

(1)静态地址重定位是在虚空间程序执行之前由装配程序完成地址映射工作。静态重定位的优点是不需要硬件支持,但是用静态地址重定位方法进行地址变换无法实现虚拟存储器。静态重定位的另一个缺点是必须占用连续的内存空间和难以做到程序和数据的共享。

(2)动态地址重定位是在程序执行过程中,在CPU访问内存之前由硬件地址变换机构将要访问的程序或数据地址转换成内存地址。动态地址重定位的主要优点有:

①可以对内存进行非连续分配。

②动态重定位提供了实现虚拟存储器的基础。 ③动态重定位有利于程序段的共享。 形式化描述:略。

8.什么是虚拟存储器?其特点是什么?

答:由进程中的目标代码、数据等的虚拟地址组成的虚拟空间称为虚拟存储器。

虚拟存储器不考虑物理存储器的大小和信息存放的实际位置,只规定每个进程

中相互关联信息的相对位置。每个进程都拥有自己的虚拟存储器,且虚拟存储 器的容量是由计算机的地址结构和寻址方式来确定。实现虚拟存储器要求有相 应的地址转换机构,以便把指令的虚拟地址变换为实际物理地址;另外,由于 内存空间较小,进程只有部分内容存放于内存中,待执行时根据需要再调指令 入内存。

9. 请求页式管理中有哪几种常用的页面置换算法?试比较它们的优缺点。

答:比较常用的页面置换算法有:

(1)随机淘汰算法(randomglongram)。即随机地选择某个用户页面并将其换出。 (2)轮转法RR(roundrobin)。轮转法循回换出内存可用区内一个可以被换出的页,无论该页是刚被换进或已经换进内存很长时间。 (3)先进先出法FIFO(firstinfirstout)。FIFO算法选择在内存驻留时间最长的一页将其淘汰。

(4)最近最久未使用页面置换算法I.RU(1east recently unused)。该算法的基本思想是:当需要淘汰某一页时,选择离当前时间最近的一段时间内最久没有使用过的页面先淘汰。

(5)理想型淘汰算法OPT(optimalreplacementalgorithm)。该算法淘汰在访问串 中将来再也不出现的或是在离当前最远的位置上出现的页面。

10. 什么是文件目录?文件目录中包含哪些信息?

答:一个文件的文件名和对该文件实施控制管理的说明信息称为该文件的说明 信息,又称为该文件的目录。

文件目录中包含文件名、与文件名相对应的文件内部标识以及文件信息在文件 存储设备上第一个物理块的地址等信息。另外还可能包含关于文件逻辑结构、 物理结构、存取控制和管理等信息。

11. 用于设备分配的数据结构有哪些?它们之间的关系是什么?

答:用于设备分配的数据结构有:设备控制表DCT、系统设备表SDT、控制器表

COCT和通道控制表CHCT。SDF整个系统一张,每个设备有一张DCT,每个控制 器有一张COCT,每个通道有一张 CHCT。SDF中有一个DCT指针,DCT中有一个 COCT指针,COCT中有一个CHCT指针。

综合题

1、请画出P原语与V原语操作的功能流程图。

答:P原语操作功能 V原语操作功能

入口 入口

sem=sem-1 是 S ≥ 0 S < 0 调用进程入等待队返回 sem=sem+1 否 S ≤ 0 是 唤醒等待队列中的一个进程 返回 转进程调度 返回或转进程调度 2、设有5个哲学家,共享一张放有五把椅子的桌子,每人分得一把椅子。但是桌子上共有5支筷子,在没人两边分开各放一支。哲学家们在肚子饥饿的时候才试图分两次从两边拾起筷子就餐。 条件:

(1)只有拿到两支筷子时,哲学家才能吃饭。

(2)如果筷子已在他人手上,则该哲学家必须等待到他人吃完之后才能拿到筷子。

(3)任一哲学家在自己未拿到两支筷子吃饭之前,绝不放下自己手中的筷子。 请回答:

(1)描述一个保证不会出现两个邻座同时要求吃饭的通信算法。 (2)描述一个既没有两邻座同时吃饭,又没人饿死(永远拿不到筷子)的算法。