操作系统简答题
- 格式:docx
- 大小:24.93 KB
- 文档页数:10
操作系统简答题
1、简述操作系统的基本特征。
答:(1)并发。
在单处理机、多道程序环境下并发是指一段时间内,宏观上多个程序同时运行、微观上交替运行的情形。
OS中引入进程的概念就是为了实现并发;
(2)共享。
是指系统中并发执行的多个进程共享系统资源。
根据资源属性可以有互斥共享和同时访问两种方式;
(3)虚拟。
OS会通过虚拟技术实现系统功能的扩充。
(4)异步性。
并发执行的多个进程由于资源的限制会出现“走走停停”的运行模式。
2、试分析引起进程阻塞和唤醒的事件主要有哪些。
答:(1)请求系统服务。
当正在执行的进程请求系统提供服务而系统无法满足其请求时,进程阻塞等待;由释放服务的进程唤醒阻塞进程。
(2)启动某种操作。
当进程启动某种I/O操作后阻塞以等待操作完成;由中断处理程序唤醒阻塞进程。
(3)新数据尚未到达。
相互合作的进程中,消费者进程阻塞等待数据到达;生产者进程在数据到达后唤醒阻塞进程。
(4)无新工作可做。
系统进程没有新工作可做时阻塞等待;当有进程发出请求时唤醒阻塞进程。
3、简述在操作系统中引入缓冲的主要原因。
答:(1)缓和CPU与I/O设备间速度不匹配的矛盾。
(2)减少对CPU的中断频率,放宽对中断响应时间的限制。
(3)提高CPU和I/O设备之间的并行性。
4、以独占设备为例简述设备分配的过程。
答:(1)设备的分配。
根据物理设备名,查找SDT;找出该设备的DCT,得该设备的状态:忙则将进程的PCB排入设备队列中等待;闲则分配设备给进程。
(2)控制器的分配。
根据设备的DCT找到与之相连的控制器的
COCT,从中得到控制器的状态:忙则将进程的PCB排入控制器的等待队列中;闲则分配控制器给进程。
(3)通道的分配。
如果系统有通道,则根据控制器的COCT找到与之相连的通道的CHCT,从中得到通道的状态:忙则将进程的PCB 挂入通道的等待队列中;否则分配通道给进程。
只有在三者都分配成功时,设备分配才算成功。
1、名词解释
(1)虚拟存储器;
虚拟存储器:由进程中的目标代码、数据等的虚拟地址组成的虚拟空间称为虚拟存储器。
也可解释为仅把作业的一部分装入内存便可运行作业的存储器系统;具体地说是指具有调入功能和置换功能,能从逻辑上对内存容量进行扩充的一种存储器系统。
(2)死锁;
死锁:指各并发进程彼此互相等待对方所拥有的资源,而且这些并发进程在得到对方的资源之前不会释放自己所拥有的资源。
从而造成大家都想的到资源而又的不到资源,各并发进程不能继续向前推进的状态。
2、简答
(1)段页式管理这种存储管理方式中为什么要设置高速联想寄存器?
因为如果不采用高速联想寄存器,段页式的地址转换需要访问内存的次数将达三次以上,这将使cpu执行指令的速度大大降低,所以必须要设置高速联想寄存器,存放当前最常用的段号、页号和对应的内存页面与其它控制栏目,达到大大提高地址转换的目的。
(2)进程和程序有什么区别和联系?
a)进程是一个动态概念,而程序是一个静态概念,程序是指令的有序集合,无执行含义,进程则强调执行的过程。
b)进程具有并行特征,程序没有。
c)进程是竞争计算机系统资源的基本单位。
d)不同的进程可以包含同一个程序,同一程序也可产生多个进程。
(3)什么是系统调用?简述系统调用的实现过程。
系统调用是操作系统提供给编程人员的唯一接口。
编程人员利用系统调用,在源程序一级动态请求和释放系统资源,调用系统中已有的系统功能来完成那些与机器硬件部分相关的工作以及控制程序的执行速度等。
实现过程:用户在程序中使用系统调用,给出系统调用名和函数后,即产生一条相应的陷入指令,通过陷入处理机制调用服务,引起处理机中断,然后保护处理机现场,取系统调用功能号并寻找子程序入口,通过入口地址表来调用系统子程序,然后返回用户程序继续执行。
1.从资源管理的角度说明操作系统的主要功能.
答:进程管理(或处理器管理),存储管理,文件管理,作业管理和设备管理.
2.什么是操作系统?它的主要功能是什么?
答:操作系统是计算机系统中的一个系统软件,它是这样一些程序模块的集合,是用户与计算机之间的接口——它们能有效地组织和管理计算机系统中的硬件及软件资源,合理地组织计算机工作流程,控制程序的执行,并向用户提供各种服务功能,使得用户能够灵活、方便、有效地使用计算机,并使整个计算机系统能高效地运行。
操作系统的主要功能包括:存储器管理、处理机管理、设备管理、文件管理以及用户接口管理。
3.为什么说批处理多道系统能极大地提高计算机系统的工作效率?
答:①多道作业并行工作,减少了处理器的空闲时间。
②作业调度可以合理选择装入主存储器中的作业,充分利用计算机系统的资源。
③作业执行过程中不再访问低速设备,而直接访问高速的磁盘设备,缩短执行时间。
④作业成批输入,减少了从操作到作业的交接时间。
4.什么是临界区进程进入临界区的调度原则是什么
答:在每个进程中访问临界资源的那段程序叫临界区.
进程进入临界区的调度原则是:
①如果有若干进程要求进入空闲的临界区,一次仅允许一个进程进入.
②任何时候,处于临界区内的进程不可多于一个.如已有进程进入自己的临界区,则
其它所有试图进入临界区的进程必须等待.
③进入临界区的进程要在有限时间内退出,以便其它进程能及时进入自己的临界区.
④如果进程不能进入自己的临界区,则应让出CPU,避免进程出现"忙等"现象.
5.怎样理解“计算机上由于装有操作系统,从而扩展了原计算机功能”?
答:原来的计算机功能很小,只能进行一些基本而又非常简单的数据运算,而自从有了操作系统之后,计算机功能大大增加。
DOS使计算机具有了命令处理、存储器管理、文件管理和设备管理等功能,而后,出现的WINDOWS 各种系统使得计算机不但功能更加齐全,而且系统的工作效率大大提高,更让用户建立了网络,共享网络通信资源!
6.一个具有分时兼批处理功能的操作系统应怎样调度和管理作业
答:1)优先接纳终端作业,仅当终端作业数小于系统可以允许同时工作的作业数时,可以调度批处理作业.
2)允许终端作业和批处理作业混合同时执行.
3)把终端作业的就绪进程排成一个就绪队列,把批处理作业的就绪进程排入另外的就绪队列中.
4)有终端作业进程就绪时,优先让其按"时间片轮转"法先运行.没有终端作业时再按确定算法选批处理作业就绪进程运行.
7.在信号量S上作P、V操作时,S的值发生变化,当S>0、S=0、S<0时,它们的物理意义是什么?
答:S的值表示它代表的物理资源的使用状态:S>0表示还有共享资源可供使用。
S=0表示共享资源正被进程使用但没有进程等待使用资源。
S<0表示资源已被分配完,还有进程等待使用资源。
8.处理机调度分为哪三级?各自的主要任务是什么?
答:作业调度:从一批后备作业中选择一个或几个作业,给它们分配资源,建立进程,挂入就绪队列。
执行完后,回收资源。
进程调度:从就绪进程队列中根据某个策略选取一个进程,使之占用CPU。
交换调度:按照给定的原则和策略,将外存交换区中的进程调入内存,把内存中的非执行进程交换到外存交换区。
9.试比较进程调度与作业调度的不同点.
答:(1)作业调度是宏观调度,它决定了哪一个作业能进入主存.进程调度是微观调度,它决定各作业中的哪一个进程占有中央处理机. (或)作业调度是高级调度,它位于操作系统的作业管理层次.进程调度是低级调度,它位于操作系统分层结构的最内层.
(2)作业调度是选符合条件的收容态作业装入内存.进程调度是从就绪态进程中选一个占用处理机.
10.进程与程序是两个完全不同的概念,但又有密切的联系,试写出两者的区别。
(1)进程是动态,程序是静态的;
(2)进程是独立运行的单位,程序不能作为运行单位;
(3)各进程间在并发执行过程中会产生相互制约关系,而程序由于是静态的,所以不存在异步特征。
11.简述死锁的防止与死锁的避免的区别.
答:死锁的防止是系统预先确定一些资源分配策略,进程按规定申请资源,系统按预先规定的策略进行分配,从而防止死锁的发生.
而死锁的避免是当进程提出资源申请时系统测试资源分配,仅当能确保系统安全时才把资源分配给进程,使系统一直处于安全状态之中,从而避免死锁.
12.试说明资源的静态分配策略能防止死锁的原因.
答:资源静态分配策略要求每个进程在开始执行前申请所需的全部资源,仅在系统为之分配了所需的全部资源后,该进程才开始执行.这样,进程在执行过程中不再申请资源,从而破坏了死锁的四个必要条件之一"
占有并等待条件",从而防止死锁的发生.
13.计算机系统中产生死锁的根本原因是什么一般解决死锁的方法有哪三种
答:计算机系统中产生死锁的根本原因是:资源有限且操作不当.
一般解决死锁的方法有:死锁的预防,死锁的避免,死锁的检测与恢复等三种.
14.什么是死锁?产生死锁的四个必要条件是什么?
死锁:当某进程提出资源申请后,使得系统中一些进程处于无休止的阻塞状态,在无外力作用下,永远不能再继续前进。
产生死锁的必要条件:互斥条件:某段时间内某资源只能由一个进程使用。
不剥夺条件:资源在未使用完前,不能被剥夺,由使用进程释放。
部分分配(请求和保持):进程因请求资源而阻塞时,对已分配给它的资源保持不放。
环路条件:发生死锁时,有向图必构成一环路。
15.进程调度中"可抢占"和"非抢占"两种方式,哪一种系统的开销更大?为什么
答:可抢占式会引起系统的开销更大.
可抢占式调度是严格保证任何时刻,让具有最高优先数(权)的进程占有处理机运行,因此增加了处理机调度的时机,引起为退出处理机的进程保留现场,为占有处理机的进程恢复现场等时间(和空间)开销增大.
16.存储管理的主要功能是什么
答:存储管理的主要功能包括:(1)主存空间的分配和回收;(2)将用户的逻辑地址转换成主存的物理地址,完成重定位;(3)主存空间的共享和保护;(4)使用"虚拟存储器",扩充主存空间.
17.试述分区管理方案的优缺点.
答:优点:算法较简单,实现较容易,内存开销较少,存储保护措施简单.缺点:内存使用不充分,存在较严重的碎片问题.
18.虚拟存储器的基本特征是什么?虚拟存储器的容量主要受到哪两方面的限制?
答:虚拟存储器的基本特征是:
①虚拟扩充,即不是物理上而是逻辑上扩充了内存容量;
②部分装入,即每个作业不是全部一次性地装入内存,而是只装入一部分;
③离散分配,即不必占用连续的内存空间,而是"见缝插针";
④多次对换,即所需的全部程序和数据要分成多次调入内存.
虚拟存储器的容量主要受到指令中表示地址的字长和外存的容量的限制.
19.什么是虚拟存储器,它有什么特点?
答:虚拟存储器是一种存储管理技术,用以完成用小的内存实现在大的虚空间中程序的运行工作。
它是由操作系统提供的一个假想的特大存储器。
但是虚拟存储器的容量并不是无限的,它由计算机的地址结构长度所确定,另外虚存容量的扩大是以牺牲CPU工作时间以及内、外存交换时间为代价的。
20.什么是动态重定位?如何实现?
动态重定位是指在程序执行期间,随着每条指令和数据的访问,自动的、连续的进行映射。
具体实现过程为:当某个进程取得CPU控制权时,OS应负责把该作业程序在主存中的起始地址送入重定位寄存器中之后,每次访问存储器时,重定位寄存区的内容将被自动加到逻辑地址中区,经这样变换后,执行结果是正确的。
21.试简述页式存储管理的优缺点。
答:优点:有效地解决了碎片问题;缺点:程序的最后一页会有浪费空间的现象并且不能应用在分段编写的、非连续存放的大型程序中。
22.影响缺页中断率的因素有哪些?
(1)分配给程序的主存块数;(2)页面的大小;(3)程序编制方法;(4)页面调度算法。
23.什么是快表?它在地址转换中起什么作用?
快表是一个高速、具有并行查询能力的联想存储器,用于存放正运行的进程的当前页号和块号,或者段号和段起始地址。
加入快表后,在地址转换时,首先在快表中查找,若找到就直接进
行地址转换;未找到,则在主存页表继续查找,并把查到的页号和块号放入联想存储器中。
快表的命中率很高,有效地提高了地址转换的速度。
24.主存空间信息保护有哪些措施?
①程序执行时访问属于自己主存区域的信息,允许它既可读,又可写;
②对共享区域中的信息只可读,不可修改;
③对非共享区域或非自己的主存区域中的信息既不可读,也不可写。
25.操作系统为用户提供哪些接口?
答:操作系统为用户提供两种类型的使用接口:
一是操作员级的,它为用户提供控制作业执行的途径;二是程序员级的,它为用户程序提供服务功能。
26.系统调用的执行过程分可分为哪几步?
答:系统调用的执行过程分成以下几步:(1)设置系统调用号和参数;(2)系统调用命令的一般性处理;(3)系统调用命令处理程序做具体处理。
27.目前操作系统采用的目录结构是什么?它具有什么优点?
为了给用户提供对文件的存取控制及保护功能,而按一定规则对系统中的文件名,(亦可包含文件属性)进行组织所形成的表,称为目录表或文件目录。
目前操作系统采用的目录结构是树型目录结构,它的优点有:
有效地提高对目录的检索速度;允许文件重名;便于实现文件共享。
28.试说明和比较几种文件共享的方法
绕弯路法:利用基本文件目录实现文件共享:基于索引节点的共享方法:利用符号链实现文件共享:
29.文件系统要解决哪些问题
答:一般说来,文件系统应具备以下功能:文件管理(如创建/删除文件,对文件的各种操作等),目录管理(创建/删除目录项,权限验证等),文件存
储空间的管理(如外存空间的分配与回收),文件的共享和保护,提供方便的接口(如实现按名存取,文件系统调用等).
30.常用的文件存取控制方式有哪些
答:主要有存取控制矩阵,用户权限表,使用口令,使用密码.
31.UNIX/Linux文件系统的主要特点是什么
答:UNIX/Linux文件系统的主要特点有:(1)UNIX或Linux文件系统的目录组织是一个树形结构;(2)文件本身是无结构的字符流;(3)UNIX 或Linux文件系统把外部设备做成特殊文件,与普通文件一并进行管理.
32.请说明在生产者-消费者问题的描述中,P操作颠倒会产生死锁吗?为什么?
答:如果将生产者执行的两个P操作顺序颠倒,会产生死锁。
因为,在这种情况下,当缓冲区都为满时,生产者仍可顺利执行P(mutex)操作,于是它获得了对缓冲区的存取控制权。
然后,当它执行P(mutex)操作时,由于没有空缓冲区它被挂起。
能够将这个生产者进程释放的唯一途径是消费者从缓冲区取出了一个产品,并执行V(mutex)操作。
但在此时,由于缓冲区已被挂起的生产者所占有,所以没有一个消费者能够取得对缓冲区的存取控制权。
因此,出现了生产者和消费者的互相死等的局面。
33.什么是设备独立性,它是如何实现的?
答:设备独立性即应用程序独立于使用的物理设备,在应用程序中使用逻辑设备名称来请求使用某类设备。
系统在执行时,是使用物理设备名称。
要实现设备独立性必须由设备独立性软件完成,包括执行所有设备的公有操作软件提供统一的接口,其中逻辑设备到物理设备的映射是由逻辑设备表LUT完成的。
34.在设备管理中,按照设备共享特性分成哪几种类型比较合理,并分别举例说明。
答:按照是否可共享,可以分成独占设备和共享设备两类,独占设备不能让多个程序同时使用,共享设备可以同时让多个程序使用。
打印机属于独占设备,如果多个程序同时使用打印机,则打印出来的
数据就可能会随机混合交叉在一起,所以打印机只能让一个程序独占。
而磁盘属于共享设备,多个程序同时在磁盘上打开文件是可以35.实现虚拟设备的硬件条件是什么操作系统应设计哪些功能程序
答:硬件条件是:配置大容量的磁盘,要有中断装置和通道
操作系统应设计好"预输入"程序,"井管理"程序,"缓输出"程序.。