长沙理工大学操作系统简答题复习复习进程.docx
《长沙理工大学操作系统简答题复习复习进程.docx》由会员分享,可在线阅读,更多相关《长沙理工大学操作系统简答题复习复习进程.docx(12页珍藏版)》请在冰豆网上搜索。
长沙理工大学操作系统简答题复习复习进程
长沙理工大学操作系统简答题复习
处理机管理有哪些主要功能?
其主要任务是什么?
处理机管理的主要功能是:
进程管理、进程同步、进程通信和处理机调度; 进程管理:
为作业创建进程,撤销已结束进程,控制进程在运行过程中的状态转换。
进程同步:
为多个进程(含线程)的运行进行协调。
进程 通信:
用来实现在相互合作的进程之间的信息交换。
处理机调度:
(1)作业调度。
从后备队里按照一定的算法,选出若干个作业,为他们分配运行所需的资源。
(2)进程调度:
从进程的就绪队列中,按照一定算法选出一个进程,把处理机分配给 它,并设臵运行现场,使进程投入执行。
文件管理有哪些主要功能?
其主要任务是什么?
文件管理主要功能:
文件存储空间的管理、目录管理、文件的读(写)管理和保护。
文件管理的主要任务:
管理用户文件和系统文件,方便用户使用,保证文件安全性。
设备管理有哪些主要功能?
其主要任务是什么?
主要功能有:
缓冲管理、设备分配和设备处理以及虚拟设备等。
主要任务:
完成用户提出的I/O 请求,为用户分配I/O 设备;提高CPU 和I/O 设备的利用率;提高I/O速度;以及方便用户使用I/O设备。
内存管理有哪些主要功能?
其主要任务是什么?
内存管理的主要功能有:
内存分配、内存保护、地址映射和内存扩充。
内存分配:
为每道程序分配内存。
内存保护:
确保每道用户程序都只在自己的内存空间运行,彼此互不干扰。
地址映射:
将地址空间的逻辑地址转换为内存空间与对应的物理地址。
内存扩充:
用于实现请求调用功能,置换功能等。
在操作系统中为什么要引入进程概念?
它会产生什么样的影响?
为了使程序在多道程序环境下能并发执行,并对并发执行的程序加以控制和描述,在操
作系统中引入了进程概念。
影响:
使程序的并发执行得以实行。
试从调度性、并发性、拥有资源性及系统开销方面对进程和线程进行比较。
a. 调度性。
在传统的操作系统中,拥有资源的基本单位和独立调度、分派的基本单位都是进程,在引入线程的OS中,则把线程作为调度和分派的基本单位,而把进程作为资源拥有的基本单位; b. 并发性。
在引入线程的OS中,不仅进程之间可以并发执行,而且在一个进程中的多个线程之间,亦可并发执行,因而使OS具有更好的并发性; c. 拥有资源。
无论是传统的操作系统,还是引入了线程的操作系统,进程始终是拥有资源的一个基本单位,而线程除了拥有一点在运行时必不可少的资源外,本身基本不拥有系统资源,但它可以访问其隶属进程的资源; d. 开销。
由于创建或撤销进程时,系统都要为之分配和回收资源,如内存空间等,进程切换时所要保存和设置的现场信息也要明显地多于线程,因此,操作系统在创建、撤消和切换进程时所付出的开销将显著地大于线程。
试从动态性,并发性和独立性上比较进程和程序?
(1)动态性是进程最基本的特性,表现为由创建而产生,由调度而执行,因得不到资源
而暂停执行,由撤销而消亡。
进程有一定的生命期,而程序只是一组有序的指令集合,是静态实体。
(2)并发性是进程的重要特征,同时也是OS的重要特征。
引入进程的目的正是为了使
其程序能和其它进程的程序并发执行,而程序是不能并发执行的。
(3)独立性是指进程实体是一个能独立运行的基本单位,也是系统中独立获得资源和独
立调度的基本单位。
对于未建立任何进程的程序,不能作为独立单位参加运行。
试说明进程在三个基本状态之间转换的典型原因。
(1)就绪状态→执行状态:
进程分配到CPU资源
(2)执行状态→就绪状态:
时间片用完 (3)执行状态→阻塞状态:
I/O请求 (4)阻塞状态→就绪状态:
I/O完成
何谓操作系统内核?
内核的主要功能是什么?
现代操作系统一般将OS划分为若干层次,再将OS的不同功能分别设置在不同的层次中,通常将一些与硬件紧密相关的模块、各种常用设备的驱动程序以及运行频率较高的模块,都安排在紧靠硬件的软件层次中,将他们常驻内存,即通常被称为的OS内核。
大多数OS内核都包含了一下两大方面的功能:
(1)支撑功能
(2)资源管理功能。
进程控制块的组织方式有哪几种?
目前常用的组织方式有以下三种:
(1)线性方式,即将系统中所有PCB都组织在一张线性表中,将该表的首址存放在内存的一个专用区域中。
(2)链接方式,即把具有相同状态进程的PCB分别通过PCB中的链接字链接成一个队列。
(3)索引方式,即系统根据所有进程状态的不同,建立几张索引表,并把各索引表在内存的首地址记录在内存的一些专用单元中。
试说明PCB的作用?
为什么说PCB是进程存在的唯一标志?
a.PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构。
PCB中记录了操作系统所需的用于描述进程情况及控制进程运行所需的全部信息。
因而它的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能和其它进程并发执行的进程。
b.在进程的整个生命周期中,系统总是通过其PCB对进程进行控制,系统是根据进程的PCB而不是任何别的什么而感知到该进程的存在的,所以说,PCB是进程存在的唯一标志。
请详细说明可通过哪些途径预防死锁。
(1)摈弃“请求和保持”条件,就是如果系统有足够资源,便一次性把进程需要的所
有资源分配给它;
(2)摈弃“不剥夺”条件,就是已经拥有资源的进程,当它提出新资源请求而不能立即
满足时,必须释放它已保持的所有资源,待以后需要时再重新申请;
(3)摈弃“环路等待”条件,就是将所有资源按类型排序标号,所有进程对资源的请求
必须严格按序号递增的
试说明低级调度的主要功能。
(1)保存处理机的现场信息
(2)按某种算法选取进程(3)把处理机分配给进程。
何谓死锁?
产生死锁的原因和必要条件是什么?
死锁是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状
态时,若无外力作用,它们都将无法再向前推进。
产生死锁的原因为竞争资源和进程间推进顺序非法。
其必要条件是:
互斥条件、请求和
保持条件、不剥夺条件、环路等待条件。
为什么说多级反馈队列调度算法能较好地满足各方面用户的需求?
(1)终端型作业用户提交的作业大多属于较小的交互型作业,系统只要使这些作业在第一队列规定的时间片内完成,终端作业用户就会感到满足。
(2)短批处理作业用户,开始时像终端型作业一样,如果在第一队列中执行一个时间片段即可完成,便可获得与终端作业一样的响应时间。
对于稍长作业,通常只需在第二和第三队列各执行一时间片即可完成,其周转时间仍然较短。
(3)长批处理作业,它将依次在第1,2,…,n个队列中运行,然后再按轮转方式运行,用户不必担心其作业长期得不到处理。
所以,多级反馈队列调度算法能满足多用户需求。
试比较FCFS和SPF两种进程调度算法。
相同点:
两种调度算法都可以用于作业调度和进程调度。
不同点:
FCFS调度算法每次都从后备队列中选择一个或多个最先进入该队列的作业,将它们调入内存、分配资源、创建进程、插入到就绪队列。
该算法有利于长作业/进程,不利于短作业/进程。
SPF算法每次调度都从后备队列中选择一个或若干个估计运行时间最短的作业,调入内存中运行。
该算法有利于短作业/进程,不利于长作业/进程。
不安全状态是否必然导致系统进入死锁状态?
不安全状态不一定导致系统进入死锁状态。
因为安全性检查中使用的向量Max是进程执行前提供的,而在实际运行过程中,一进程需要的最大资源量可能小于Max。
例如,一进程对应的程序中有一段进行错误处理的代码,其中需要n个A种资源,若该进程在运行过程中没有碰到相应错误而不需调用该段错误处理代码,则它实际上将完全不会请求这n个A种资源。
为什么要引入高响应比优先调度算法?
它有何优点?
高响应比优先调度算法的基本思想是把CPU分配给就绪队列中响应比最高的进程。
既考虑作业的执行时间也考虑作业的等待时间,综合了先来先服务和最短作业优先两种算法的特点。
该算法中的响应比是指作业等待时间与运行比值,响应比公式定义如下:
响应比 =(等待时间+要求服务时间)/ 要求服务时间,即RR=(w+s)/s=1+w/s,因此响应比一定是大于1的。
短作业与先后次序的兼顾,且不会使长作业长期得不到服务 响应比计算系统开销,增加系统开销适用于批处理系统 。
高级调度与低级调度的主要任务是什么?
为什么要引入中级调度?
高级调度的主要任务是根据某种算法,把外存上处于后备队列中的那些作业调入内存。
低级调度是保存处理机的现场信息,按某种算法先取进程,再把处理器分配给进程。
引入中级调度的主要目的是为了提高内存利用率和系统吞吐量。
使那些暂时不能运行的进程不再占用内存资源,将它们调至外存等待,把进程状态改为就绪驻外存状态或挂起状态。
在选择调度方式和调度算法时,应遵循的准则是什么?
(1)面向用户的准则:
周转时间短、响应时间快、截止时间的保证、优先权准则。
(2)面向系统的准则:
系统吞吐量高、处理机利用率好、各类资源的平衡利用。
什么是页面?
什么是物理块?
页面的大小应如何确定?
页面,物理块——分页存储管理方式中的单元。
页面:
分页存储管理将进程的逻辑地址空间分成若干个页,并为各页加以编号。
物理块:
相应地,也将内存的物理空间分成若干个物理块,同样为它们加以编号 页面大小:
既不能太小也不能太大,要起到减少内存碎片总空间的作用,也不能使页表过长,总之要选择适中,且页面大小应是2的幂,通常为1KB-8KB。
在首次采用适应算法回收内存时,可能出现哪几种情况?
应怎样处理这些情况
1、回收区与插入点的前一个空闲区相邻接,此时应将回收区与插入点的前一分区合并,不必为回收区分配新表项,而只需修改其前一分区的大小。
2、回收区与插入点的后一个空闲区相邻接,此时可将两分区合并,形成新的空闲区,但用回收区的首址作为新空闲区的首址,大小为两者之和。
3、回收区同时与插入点的前、后两个空闲区邻接,此时可将三个分区合并,使用前一个分区的表项和首址,取消后一个分区的表项,大小为三者之和。
4、回收区既不与前一个分区相邻接,也不与后一个分区相邻接,这时应为回收区单独建立一新表项,填写回收区的首址和大小,并根据其首址插入到空闲链中的适应位置。
为什么要引入动态重定位?
如何实现?
在程序执行过程中,每当访问指令或数据时,将要访问的程序或数据的逻辑地址转换成
物理地址,引入了动态重定位;具体实现方法是在系统中增加一个重定位寄存器,用来装入程序在内存中的起始地址,程序执行时,真正访问的内存地址是相对地址与重定位寄存器中的地址相加之和,从而实现动态重定位。
在分页系统中是如何实现地址变换的?
利用地址变换机构实现从逻辑地址到物理地址的转变换,通过页表来实现从页号到物理块号的变换,将逻辑地址中的页号转换为内存中的物理块号。
分区存储管理中常用那些分配策略?
比较它们的优缺点。
分区存储管理中的常用分配策略:
首次适应算法、循环首次适应算法、最佳适应算法、最坏适应算法。
首次适应算法优缺点:
保留了高址部分的大空闲区,有利于后来的大型作业分配;低址部分不断被划分,留下许多难以利用的小空闲区,每次查找都从低址开始增加了系统开销。
循环首次适应算法优缺点:
内存空闲分区分布均匀,减少了查找系统开销;缺乏大空闲分区,导致不能装入大型作业。
最佳适应算法优缺点:
每次分配给文件的都是最适合该文件大小的分区,内存中留下许多难以利用的小空闲区。
最坏适应算法优缺点:
剩下空闲区不太小,产生碎片几率小,对中小型文件分配分区操作有利;存储器中缺乏大空闲区,对大型文件分区分配不利。
什么是基于顺序搜索的动态分区分配算法?
它可分为哪几种?
为了实现动态分区式分配,将系统中的空闲分区组织成空闲分区表或空闲分区链。
所谓顺序搜索,是指按表或链的组织顺序,检索表或链上记录的空闲分区,去寻找一个最符合算法的、大小能满足要求的分区。
分区存储管理中常采用的分配策略有:
首次适应算法、循环首次适应算法、最佳适应算法、最坏适应算法。
在系统中引入对换后可带来哪些好处?
交换技术将暂不需要的作业移到外存,让出内存空间以调入其它作业,交换到外存的作业也可以被再次调入。
目的是解决内存紧张问题,带来的好处是进一步提高了内存利用率和系统吞吐量。
在具有块表的段页式存储管理方式中,如何实现地址变换?
在CPU给出有效地址后,由地址变换机构自动将页号P送入高速缓冲寄存器,并将此页号与高速缓存中的所有页号比较,若找到匹配页号,表示要访问的页表项在快表中。
可直接从快表读出该页对应物理块号,送到物理地址寄存器中。
如快表中没有对应页表项,则再访问内存页表,找到后,把从页表项中读出物理快号送地址寄存器;同时修改快表,将此页表项存入快表。
但若寄存器已满,则OS必须找到合适的页表项换出。
什么是页表?
页表的作用是什么?
在分页系统中,允许将进程的各个页离散地存储在内存的任一物理块中,为保证进程仍让能够正确地运行,即能在内存中找到每个页面所对应的物理块,系统又为每个进程建立了一张页面映像表,简称页表。
页表的作用是实现从页号到物理块号的地址映射。
实现虚拟存储器需要哪几个关键技术?
(1)在分页请求系统中是在分页的基础上,增加了请求调页功能和页面置换功能所形成的页式虚拟存储系统。
允许只装入少数页面的程序(及数据),便启动运行。
(2)在请求分段系统中是在分段系统的基础上,增加了请求调段及分段置换功能后形成的段式虚拟存储系统。
允许只装入少数段(而非所有段)的用户程序和数据,即可启动运行。
实现虚拟存储器需要哪些硬件支持?
(1)请求分页(段)的页(段)表机制
(2)缺页(段)中断机构
(3)地址变换机构
虚拟存储器有哪些特征?
其中最本质的特征是什么?
虚拟存储器有多次性、对换性、虚拟性三大特征。
最本质的特征是虚拟性。
常规存储器管理方式具有哪两大特征?
它对系统性能有何影响?
一次性:
进程必须全部装入内存,对空间浪费非常大;
驻留性:
在程序运行过程中,进程全部驻留在内存,暂时不用的数据无法释放。
在请求分页系统中,应从何处将所需页面调入内存?
请求分页系统中的缺页从何处调入内存分三种情况:
(1)系统拥有足够对换区空间时,可以全部从对换区调入所需页面,提高调页速度。
在进程运行前将与该进程有关的文件从文件区拷贝到对换区。
(2)系统缺少足够对换区空间时,不被修改的文件直接从文件区调入;当换出这些页面时,未被修改的不必换出,再调入时,仍从文件区直接调入。
对于可能修改的,在换出时便调到对换区,以后需要时再从对换区调入。
(3)UNIX方式。
未运行页面从文件区调入。
曾经运行过但被换出页面,下次从对换区调入。
UNIX系统允许页面共享,某进程请求的页面有可能已调入内存,直接使用不再调入。
与设备无关性的基本含义是什么?
为什么要设置该层?
为了提高OS的可适应性和可扩展性,在现代OS中都毫无例外地实现了设备独立性,也称设备无关性。
基本含义:
应用程序独立于具体使用的物理设备。
为了实现设备独立性而引入了逻辑设备和物理设备两概念。
在应用程序中,使用逻辑设备名称来请求使用某类设备;而系统在实际执行时,还必须使用物理设备名称。
优点:
1.设备分配时的灵活性2.易于实现I/O重定向(用于I/O操作的设备可以更换(即重定向),而不必改变应用程序。
引入缓冲的主要原因是什么?
缓和CPU与I/O设备之间速度不匹配的矛盾;减少对CPU的中断频率;放宽对中断响应时间的限制;解决数据力度不匹配的问题;提高CPU和I/O设备之间的并行性。
试说明DMA的工作流程。
以从磁盘读入数据为例,说明DMA的工作流程。
当CPU要从磁盘读入数据块时,先向磁盘控制器发送一条读命令。
该命令被送到命令寄存器CR中。
同时还发送本次要读入数据的内存起始目标地址,送入内存地址寄存器MAR;本次要读数据的字节数送入数据计数器DC,将磁盘中的源地址直接送DMA控制器的I/O控制逻辑上。
然后启动DMA控制器传送数据,以后CPU便处理其它任务。
整个数据传送过程由DMA控制器控制。
试说明I/O系统的基本功能。
(1)隐藏物理设备的细节
(2)与设备的无关性(3)提高处理机和I/O设备的利用率(4)对I/O设备进行控制(5)确保对设备的正确共享(6)错误处理
为了实现CPU与设备控制器之间的通信,设备控制器应该具备哪些功能?
基本功能:
接收和识别命令;数据交换;标识和报告设备的状态;地址识别;数据缓冲;差错控制。
简要说明中断处理程序对中断进行处理的几个步骤。
(1)测定是否有未响应的中断信号
(2)保护被中断进程的CPU环境
(3)转入相应的设备处理程序(4)中断处理(5)恢复CPU的现场并退出中断
有哪几种I/O控制方式?
各适用于何种场合?
I/O控制方式:
程序I/O方式、中断驱动I/O控制方式、DMAI/O控制方式、I/O通道控制方式。
程序I/O方式适用于早期的计算机系统中,并且是无中断的计算机系统;中断驱动I/O控制方式是普遍用于现代的计算机系统中;DMAI/O控制方式适用于I/O设备为块设备时在和主机进行数据交换的一种I/O控制方式;当I/O设备和主机进行数据交换是一组数据块时通常采用I/O通道控制方式,但此时要求系统必须配置相应的通道及通道控制器。
文件系统的模型可分为三层,试说明其每一层所包含的基本内容。
第一层:
对象及其属性说明(文件、目录、硬盘或磁带存储空间);
第二层:
对对象操纵和管理的软件集合(I/O控制层即设备驱动程序、基本文件系统即物理I/O层、基本I/O管理程序或文件组织模块层、逻辑文件系统层) 第三层:
文件系统接口(命令接口/图形化用户接口与程序接口)。
与文件系统有关的软件可分为哪几个层次?
一般地,把与文件系统有关的软件分为四个层次:
(1)I/O控制层,是文件系统的最低层,主要由磁盘驱动程序等组成,也可成为设备驱动程序层
(2)基本文件系统层,主要用于处理内存与磁盘之间数据块的交换。
(3)基本I/O管理程序,该层用于完成与磁盘I/O有关的事务,如将文件逻辑块号转换为物理块号,管理磁盘中的空闲盘块,I/O缓冲的指定等。
(4)逻辑文件系统,用于处理与记录和文件相关的操作,如允许用户和应用程序使用符号文件名访问文件及记录,实现对文件的记录和保护等。
按文件的组织方式可将文件分为哪几种类型?
按文件的组织方式,可以将有结构的文件分为三类:
(1) 顺序文件,指由一系列记录按某种顺序排列所形成的文件,其中的记录可以是定长记录或变长记录;
(2) 索引文件,指为变长记录建立一张索引表,为每个记录设置一个表项,以加快对记录检索的速度。
(3) 索引顺序文件,这是顺序文件和索引文件相结合的产物。
这里,在为每个文件建立一张索引表时,并不是为每一个记录简历一个索引表项,而是为一组记录中的第一个记录建立一个索引表项。