《操作系统》_考研复试_面试篇

前言:
本文作为本人的考研复试收尾笔记,我自己整理加搜集的操作系统重点面试概念题,肯定不能面面到位,需要大家根据题目发散思维,排查漏洞。如果对大家有帮助,希望大家点赞哦~(^▽ ^)

持续更新…

1.什么是操作系统?它的主要特征是什么?

答:
操作系统是指控制和管理整个计算机系统硬件和软件资源的最基本的系统软件
并发性:指两个或多个事件在同一时间间隔内发生;(并行性:在同一时刻…)
共享性:系统中的资源可供内存中多个并发执行的进程共同使用;
虚拟性:把一个物理上的实体变成若干个逻辑上的对应物;
异步性:进程的执行并不是一气呵成的,而是以不可预知的速度向前推进.

2.要使一个系统不发生死锁,一般可采用哪些方法?简述它们的实现原理。

答:
死锁预防:破坏死锁的四个必要条件中的一个或几个,来预防死锁的发生;
死锁避免:将系统分为安全和不安全状态,每当系统为进程分配资源时都要检测系统是否会进入不安全状态,若会,则停止分配,进入等待状态;
死锁检测:若不加任何限制措施,系统可在为进程分配资源的同时,记录下来进程的请求和分配信息,然后按某种算法计算系统是否会发生死锁;
死锁解除:系统发生死锁时通常采用撤销进程或剥夺进程资源的方法使系统解除死锁。

3. 简述进程和程序的区别。

答:
进程和程序是既有联系又有区别。
主要区别:
1.程序是指令的有序集合,其本身没有任何运行的含义,它是一个静态的概念。而进程是程序在处理机上的一次执行过程,它是一个动态概念。
2.程序的存在是永久的,而进程则是有生命的,它因创建而产生,因调度而执行,因得不到资源而暂停,因撤销而消亡。
3.程序仅是指令的有序集合。而进程则是由程序、数据和进程控制块组成
4.进程与程序之间不是一一对应的,一个进程可以执行多个程序

4.什么是安全状态?当系统不安全时就是系统进入了死锁状态吗?

答:
安全状态是指系统按照某种进程顺序,为进程分配资源,使得每个进程都能获取所需的最大资源,并顺利完成。
不是,但是死锁状态一定是不安全状态。

5.虚拟存储器的主要特征是什么?简述一下

答:
多次性:作业无须一次调入,允许分多次调入内存;
对换性:作业在运行过程中无须常驻内存,可以根据需要进行换入换出;
虚拟性:从逻辑上扩充内存容量。

6.程序有哪几种装入方式?又有哪几种链接方式?

答:
装入方式:绝对装入、静态重定位、动态重定位。
链接方式:静态链接、装入时动态链接、运行时动态链接。

7.文件目录和目录文件的区别?目前广泛采用的目录结构形式是哪种?有何优点?

答:
文件目录,又称文件控制块,存储的是文件的管理信息,控制对象是单个文件;
目录文件,存储的是若干个文件目录,控制对象是整个文件系统;
目前广泛采用的树形目录结构,优点是:允许文件重命名,实现了文件分类

8.系统调用是什么?与一般过程调用有何区别?

答:
系统调用是操作系统与应用程序之间的接口,它是用户程序间接操作计算机资源的唯一途径。
一般过程调用工作在用户态,通过过程调用语句实现,可以无限制嵌套调用;
系统调用运行在核心态,通过访管中断进入,不可以嵌套调用。

9.在设备管理中,何谓设备独立性?如何实现设备独立性?

答:
设备独立性是指用户程序独立于所使用的具体设备。
实现方式是系统为每个用户进程配置一张用于联系逻辑设备名和物理设备名的映射表,以实现使用逻辑设备名来请求物理设备。

10.什么是 DMA 方式?它与中断方式的主要区别是什麽?

答:
DMA方式是指内存与外设只需要在DMA控制器的控制下进行数据传输,而不需要进行CPU的干预。
与中断方式的主要区别是:
1.中断方式在每个数据需要传输时都需要中断CPU,而DMA方式是在所要求传送的一批数据全部传送完毕时才中断CPU;
2.中断方式中数据传输是在中断处理时由CPU控制完成的,而DMA方式中数据传输是在DMA控制器控制下完成的。

11.试述缺页中断与一般中断有何区别?

答:
缺页中断的处理过程与一般中断相似。
主要区别:
1.在指令执行期间产生和处理中断信号。
2.一条指令在执行期间可能产生多次缺页中断

12.试比较分页与分段有何区别?

答:
1.页是信息的物理单位,分页是为了实现非连续分配,以便解决内存碎片问题,或者说分页的目的是满足系统管理的需要。段是信息的逻辑单位分段的目的是为了更好地实现地址共享,满足用户地需要。
2.页地大小固定,将逻辑地址划分为页号和页内地址是由机器硬件实现地。而段的长度确不固定,决定于用户所编写地程序。
3.分页的地址空间是一维的,分段的地址空间是二维的。

13.为了实现重定位需要哪些硬件?

答:
至少需要在系统中增设一个重定位寄存器,用来存放正在执行作业的内存地址,每次访问数据时,由硬件自动将相对地址与重定位寄存器中的起始地址相加,形成实际的物理地址。

14.在交互式系统中,非剥夺是不是一个好的策略?为什么?

答:
在分时系统中不剥夺并不是一个好的策略。因为在分时系统中,除了交互性以外,及时性是很重要的性能因素。当一个作业被阻塞后,CPU就完全空闲了,别的用户的及时性就无法保证了,而完全可以把这些时间分配给别的作业运行。以提高整体的吞吐量。

15.举例解释一下同步和互斥

答:
同步表现为直接制约,如管道通信,一个进程写,一个进程读,它们是相互制约的。
互斥表现为间接制约,比如多个进程同时请求打印机(无SPOOLing技术时)

16.解释一下管程

答:
管程是由一组局部变量对局部变量进行操作的一组过程对局部变量进行初始化的语句序列组成。
引入的原因是因为P/V操作太过分散,对它的维护很麻烦且容易造成死锁
管程的特点是:
1.管程的过程只能访问管程的局部变量,管程的局部变量只能由其过程来访问;
2.任何时刻只能有一个进程进入管程执行;
3.进程只能通过管程提供的过程入口进入管程。

17.在可变分区管理中,需要哪些硬件机制?

答:
采用可变分区方式管理时,一般均采用动态重定位方式装入作业;
地址变换要靠硬件支持,主要是两个寄存器:基址寄存器和限长寄存器,这两个值确定了一个分区的位置和大小;
限长寄存器存放作业所占分区的长度;
基址寄存器则存放作业所占分区的起始地址;
地址转换时:根据逻辑地址与限长值比较,如果不有超过这个值,表示访问地址合法,再加上基址寄存器中的值就得到了绝对地址了,否则形成“地址越界”中断。

18.n个任务一个cup, 阻塞,运行,就绪的进程最多有多少个?

答:
阻塞n个;运行1个;就绪n-1个。

19.父子进程是否可以并发运行?

答:
可以,父进程创建子进程后,子进程也成为了一个可以独立运行的单位,虽然子进程继承了父进程的全部资源,但是只要两个进程创建的程序和数据没有冲突,则它们可以并发运行。

20.缓冲的定义,为什么引入缓冲技术?

答:
缓冲是一种以空间换时间的资源换取技术。一般利用内存作为缓冲区。
为什么引入
1、可以协调CPU与I/O设备之间速度不匹配的矛盾;
2、可以减少对CPU的中断频率;
3、提高设备的利用率。

21.CPU不执行程序时在干什么?

答:
大多数操作系统都有个空闲任务,它是一个特殊的任务。仅当CPU无事可做的时候由操作系统调度器载入它。在现代的处理器中,HLT停机指令(汇编指令,功能: 使处理器处于暂时停机状态.)节省了大量的电能与执量,而空闲任务几乎总是由一个重复执行HLT停机指令的循环组成

22.简述一下Clock置换算法

答:
该算法为每个页面设置一位访问位,将内存中的所有页面通过指针链成一个循环队列。由于该算法只有一位访问位,只能用它表示该页是否已经使用过,而置换时是将最近未使用过的页面换出去,所以把该算法称为最近未用算法
选择页置换的过程
1.当某页被访问时,其访问位置“1”;
2.在选择一页淘汰时,就检查其访问位,如果是“0”,就选择该页换出;若为“1”,则重新置为“0”,暂不换出该页;
3.在循环队列中检查下一个页面,直到访问到访问位为“0”的页面为止。

原创文章 46 获赞 145 访问量 6万+

猜你喜欢

转载自blog.csdn.net/zsheng_/article/details/105839561