操作系统面试基本概念
1.并发性和并行性
并发性:是指两个或多个事件在同一时间间隔内发生。
并行性:是指两个或多个事件发生在同一时刻。
2.进程
进程:是指在系统中独立运行并作为系统资源分配的基本单位。
3.临界资源
临界资源:互斥共享变量所代表的资源,即一次只能被一个进程使用的资源。
4.创建进程的操作中包含哪些过程?
-
申请进程控制块(PCB);
-
为新进程分配资源;
-
初始化进程控制块(PCB);
-
将新进程插入就绪队列。
5.进程控制块
进程控制块:为了使参与并发执行的每个程序(含数据)都能独立运行,在操作系统中必须为之配置一个专门的数据结构,来描述进程的基本情况和活动过程。
6.进程和程序的区别?
-
程序是永存的,进程只是暂时的,是程序在数据集上的一次执行,有创建有撤销,存在是暂时的;
-
程序是静态的观念,进程是动态的观念;
-
进程具有并发性,而程序没有;
-
进程是竞争计算机资源的基本单位,程序不是;
-
进程和程序不是一一对应的:一个程序可以对应多个进程即多个进程可执行同一程序,一个进程可以执行一个或几个程序。
7.进程的特征是什么?
-
动态性:进程是程序的一次执行,它有着创建,活动,暂停,终止等过程,具有一定的生命周期(由PCB决定),是动态的产生变化和消亡的;
-
并发性:指多个进程实体同存于内存中,能在同一时间内同时运行,其目的是为了使程序能与其他进程的程序并发执行,以提高资源利用率;
-
独立性:指进程实体是一个独立运行,独立获得资源和独立接受调度的基本单位;
-
异步性:由于进程的相互制约,使进程具有执行的间断性,即进程按照各自的独立的,不可预知的速度向前推进。异步性会导致执行结果的不可再现性,为此在操作系统中必须配置响应的进程同步机制;
-
结构性:每个进程都配置一个PCB对其进行描述。从结构上看,进程实体是由程序段,数据段,和控制段三部分组成。
8.进程引入挂起状态的原因是什么?
-
终端用户的需要。当终端用户在自己程序运行期间发现有可疑问题,希望暂停自己程序的执行,使之停止下来,以便用户研究其执行情况或对程序进行修改;
-
父进程的请求。有时父进程希望挂起自己的某个进程,以便考查和修改该子进程或者协调各子进程之间的活动;
-
负荷调节的需要。当操作系统中的工作负荷比较重,已可能影响到对实时任务的控制时,可由系统把一些不重要的进程挂起,以确保系统能正常运行;
-
操作系统的需要。操作系统有时希望挂起某些进程,以便检查运行中的资源使用情况进行记账。
9.现代操作系统引入线程的原因?
引入线程的目的是为了减少程序在并发执行时所付出的时空开销,使操作系统具有更好的并发性。
10.简述进程与线程的区别与联系?
区别:
-
进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动,它是系统进行资源分配和调度的一个独立单位;
-
线程是进程的一个实体,是CPU调度和分配的基本单位。线程基本不拥有系统资源,与同一个进程的其他线程共享进程中所拥有的所有资源。
联系:
-
一个进程可以包括多个线程;
-
在没有实现线程的操作系统中,进程是资源分配的基本单位,又是调度的基本单位,它是系统中并发执行的单元;而在实现了线程的操作系统中,进程是资源分配的基本单位,但是线程是调度的基本单位,是系统中并发执行的单元。
11.引起进程阻塞的主要事件有哪些?
-
向系统请求共享资源失败;
-
等待某种操作的完成;
-
新数据尚未到达;
-
等待新任务到达。
12.高级调度
高级调度即长程调度或作业调度,它的调度对象是作业。其主要功能是根据某种算法,决定将外存上处于后备队列中的哪几个作业调入内存,为它们创建进程,分配必要资源,并将它们放入就绪队列。
13.抢占式进程调度与非抢占式进程调度
抢占式进程调度:这种方式允许调度程序根据某种原则,去暂停某个正在执行的进程,将已分配该进程的处理机重新分配给另一个进程;
非抢占式进程调度:采用这种调度方式,一旦把处理机分配给某进程后,就一直让它运行下去,决不会因为时钟中断或任何其他原因去抢占当前正在运行进程的处理机,直至该进程完成,或者发生某事件而被阻塞时,才把处理机分配给其它进程。
14.什么是操作系统?
-
用户角度上来看,它是一个控制软件,管理应用程序,为应用程序提供服务;
-
从底层视角出发,它进行资源管理;
总得来说, 操作系统是站在一个管理者的角度,来给上层的应用程序、底层的硬件提供一个管理,控制、服务的功能 。
15.操作系统为用户提供了哪些接口?
-
一个是系统为用户提供的各种命令接口,用户利用这些操作命令来组织和控制作业的执行或管理计算机系统;
-
另一个接口是系统调用,编程人员使用系统调用来请求操作系统提供服务,例如申请和释放外设等类资源、控制程序的执行速度等。
16.操作系统发展的主要动力是什么?
-
不断提高计算机资源的利用率;
-
方便用户;
-
器件的不断更新换代;
-
计算机体系结构的不断发展;
-
不断提出新的应用需求。
17.简述操作系统的主要功能
-
操作系统作为用户与计算机硬件系统之间的接口;
-
操作系统作为计算机系统资源的管理者;
-
操作系统实现了对计算机资源的抽象。
18.分时系统与实时系统的主要区别
分时系统:指在一个系统中多个用户分时地使用同一台计算机。
实时系统:指计算机及时响应外部事件地请求并在规定时限内完成对该事件地处理,控制所有实时外设和实时任务协调一致地运行。
区别:
-
分时系统的目标是提供一种通用性很强的系统,有较强的交互能力;而实时系统则大都是具有特殊用途的专用系统,交互能力略差;
-
分时系统对响应时间虽有要求,但一般来说,响应时间由人所能承受的等待时间来确定;而实时系统对响应时间要求很高,一般由控制系统或信息处理磁头所能接受的延迟时间来决定。
19.多道批处理系统的优点和缺点是什么?
优点:
-
资源利用率高;
-
系统吞吐量大。
缺点:
-
平均周转时间长;
-
无交互能力。
20.操作系统引入缓冲区的原因是什么?
-
改善CPU与I/O设备间速度不匹配的矛盾;
-
可以减少对CPU的中断频率,放宽对中断响应时间的限制;
-
提高CPU与I/O之间的并行性。
21.文件物理结构
文件的物理结构又称文件的存储结构。这是指系统将文件存储在外存上所形成的一种存储组织方式,是用户不能看见的。文件的物理结构不仅与存储介质的存储性能有关,而且与采用的外存分配方式有关。
22.段表
段表:在分段式存储管理系统中,每个进程或程序都有一个或多个逻辑段,为使程序或称进程能正常运行,亦即,能从物理内存中找出每个逻辑段所对应的位置,在系统中为每个进程建立一张段映射表,段表记录了进程中每一个段在内存中的起始地址(又称为 “基址” )、段号和段的长度。
23.静态优先权
静态优先权是指在创建进程时,根据进程的类型、进程对资源的要求和用户的要求确定他的优先权,以后该优先权便不再变化。
24.段页式存储管理
段页式系统的基本原理,是基本分段存储管理方式和基本分页存储管理方式原理的结合,即先将用户程序分成若干个段,再把每个段分成若干个页,并为每一个段赋予一个段名。段为逻辑整体, 页为物理基本单元(系统分配角度)。
25.周转时间
周转时间:作业被提交给系统开始,到作业完成为止的这段时间间隔。
包括:
-
作业在外存后备队列上的等待作业调度的时间;
-
进程在就绪队列上等待进程调度的时间;
-
进程在CPU上执行的时间;
-
进程等待IO操作完成的时间。
26.阻塞
阻塞:正在执行的进程由于发生某时间(如I/O请求、申请缓冲区失败等)暂时无法继续执行。此时引起进程调度,OS把处理机分配给另一个就绪进程,而让受阻进程处于暂停状态,一般将这种状态称为阻塞状态。
27.什么是临界区?临界区的访问原则是什么?
临界区:每个进程中访问临界资源的那段程序。
临界区访问原则:
-
如果有若干进程要求进入空闲的临界区,一次仅允许一个进程进入;
-
任何时候,处于临界区内的进程不可多于一个。如已有进程进入自己的临界区,则其它所有试图进入临界区的进程必须等待;
-
进入临界区的进程要在有限时间内退出,以便其它进程能及时进入自己的临界区;
-
如果进程不能进入自己的临界区,则应让出CPU,避免进程出现“忙等”现象。
28.页式存储器管理与段式存储器管理的区别?
联系:两者都采用离散分配方式,且都是通过地址映射机构实现地址变换
区别:
-
页是信息的物理单位,分页存储管理方式是为了提高内存的利用率;段是信息的逻辑单位,分段存储管理方式是为了能更好地满足用户的需要;
-
页的大小固定且由系统决定,采用分页存储管理方式,在硬件结构上是将用户程序的逻辑地址划分为页号和页内地址两部分。但段的长度不确定,取决于用户所编写的程序。
-
分页的用户程序地址空间是一维的,分页完全是系统行为,程序员只需利用一个记忆符即可表示一个地址。而分段是用户行为,用户程序的地址空间是二维的,程序员在标识一个地址时,既需给出段名,又需给出段内地址。
29.选择作业调度算法应遵循什么准则?
-
面向用户的准则:周转时间短、响应时间快、截止时间的保证、优先权准则;
-
面向系统的准则:系统吞吐量高、处理机利用率好、各类资源的平衡利用。
30.段页式存储管理如何实现地址变换?
-
首百先设置一段表寄存器,在其中存放段表始址和段长SL,进行地址变换时,利用段号S与段长SL进行比较,若S<SL,表示未越界,于是利用段表始址和段号来求出该段所对应的段表项在段表中的位置,从中度得出该段的页表始址;
-
利用逻辑地址问中的段内页号P来获得对应页的页表项位置,从中读出该页所在的物理块号b,再利用答块号b和页内地址来构成物理地址。
31.文件目录管理的要求是什么?
-
实现“按名存取”;
-
提高对目录的检索速度;
-
文件共享;
-
允许文件重名。
32.分析说明SPOOLING技术的实现方法
SPOOLing的核心思想是利用一台可共享的、高速大容量的块设备(磁盘)来模拟独占设备的操作,使一台独占设备变成多台可并行使用的虚拟设备。用户向独占设备提交的请求实际上都被提交到可共享的高速大容量块设备。而从该块设备到实际物理独占设备的数据传输由SPOOLing进程统一控制和调度。
33.多队列调度算法时如何实现的?它的优点是什么?
多队列调度算法:将系统中的进程就绪队列从一个拆分为若干个,将不同类型或性质的进程固定分配在不同的就绪队列,不同的就绪队列采用不同的调度算法,一个就绪队列中的进程可以设置不同的优先级,不同的就绪队列本身也可以设置不同的优先级。
优点:由于设置多个就绪队列,因此对每个就绪队列就可以实施不同的调度算法,因此,系统针对不同用户进程的需求,很容易提供多种调度策略。
34.高响应优先算法
高响应优先算法:实际上是一种动态优先调度算法,它以相应比作为作业或进程的动态优先权,其目的是既照顾短作业,又考虑到作业的等待时间,使长作业不会长期等待;但每次调度前,都要进行响应比计算,会增加系统开销。
响应比 = 相应时间 / 要求服务时间 = 等待时间 + 要求服务时间 / 要求服务时间
35.动态优先权
动态优先权是指在创建进程时所确定的优先权,可以随着进程的推进而改变。
36.虚拟存储器的主要特征是什么?
-
多次性是指一个作业被分成多次调入内存运行;
-
对换性是指允许在作业运行过程中换进换出;
-
虚拟性是指能够从逻辑上扩充内存容量,使用户所看到的内存容量远大于实际的内存容量;
-
离散性是指内存分配时采用离散分配的方式。
37.简述计算机系统的中断机制及其作用
中断机制是操作系统正常运作的基础。操作系统通过中断机制来获得CPU控制权。没有中断机制,操作系统就将和其他用户程序一样,无法对计算机资源进行管理和抽象。
38.处理机管理的主要功能和任务
主要功能:进程控制、进程同步、进程通信和调度。
任务:实现进程管理。
39.什么是文件控制块?文件控制块包含哪些信息?
文件控制块:指为了能对一个文件进行正确的存取,必须为文件设置用于描述和控制文件的数据结构。
文件控制块包含:
-
基本信息类;
-
存取控制信息类;
-
使用信息类;
40.简述处理死锁的方法
-
预防死锁;
-
避免死锁;
-
检测死锁;
-
解除死锁。