1计算机操作系统习题原语:由若干多机器指令构成的完成某种特定功能的一段程序,具有不可分割性;即原语的执行必须是连续的,在执行过程中不允许被中断死锁:是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去进程:是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位线程:进程内一个相对独立的、可调度的执行单元,是系统独立调度和分派CPU的基本单位指运行中的程序的调度单位管程:管程(英语:Monitors,也称为监视器)是一种程序结构,结构内的多个子程序(对象或模块)形成的多个工作线程互斥访问共享资源。这些共享资源一般是硬件设备或一群变数链接文件:在文件之间创建链接,实际上是给系统中已有的某个文件指定另外一个可用于访问它的名称文件系统:操作系统用于明确存储设备或分区上的文件的方法和数据结构;即在存储设备上组织文件的方法快表虚拟存储器:作业装入的时候只装入一部分,另一部分放在磁盘上,当需要的时候再装入到主存,用户的逻辑地址空间可以比主存的绝对地址空间要大逻辑地址:是指由程序产生的与段相关的偏移地址部分物理地址:是指出现在CPU外部地址总线上的寻址物理内存的地址信号,是地址变换的最终结果地址驱动程序:是一种可以使计算机和设备通信的特殊程序。相当于硬件的接口,操作系统只有通过这个接口,才能控制硬件设备的工作,假如某设备的驱动程序未能正确安装,便不能正常工作临界区:指的是一个访问共用资源的程序片段,而这些共用资源又无法同时被多个线程访问的特性程序控制块;系统为了管理进程设置的一个专门的数据结构。系统用它来记录进程的外部特征,描述进程的运动变化过程。同时,系统可以利用PCB来控制和管理进程文件控制块:操作系统为管理文件而设置的一组具有固定格式的数据结构,存放了为管理文件所需的所有有属性信息(文件属性或元数据)处理机:处理机包括中央处理器,主存储器,输入-输出接口,加接外围设备就构成完整的计算机系统。处理机是处理计算机系统中存储程序和数据,并按照程序规定的步骤执行指令的部件操作系统:是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行页表:页表是一种特殊的数据结构,放在系统空间的页表区,存放逻辑页与物理页帧的对应关系DMA:直接存储器访问库函数:把函数放到库里,供别人使用的一种方式。.方法是把一些常用到的函数编完放到一个文件里,供不同的人进行调用。调用的时候把它所在的文件名用#include加到里面就可以了2简答题1.OS有哪几大特征?其最基本的特征是什么?并发、共享、虚拟、异步,最基本的是并发和共享2.什么是时分复用技术?举例说明它能提高资源利用率的根本原因是什么?a.时分复用技术:将资源在不同的时间片内分配给各进程以使该资源被重复利用,从而提高资源的利用率。b.如采用时分复用技术的虚拟处理机,能够在不同的时间片内处理多个用户的请求,从而使得用户感觉自己独占主机,而处理机在这期间也被充分的利用。3.为什么要引入实时操作系统?答:实时操作系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。引入实时OS是为了满足应用的需求,更好地满足实时控制领域和实时信息处理领域的需要4.在基于微内核结构的OS中,应用了哪些新技术?采用客户/服务器模式和面向对象的程序设计技术。5.何谓微内核技术?在微内核中通常提供了哪些功能?答:把操作系统中更多的成分和功能放到更高的层次(即用户模式)中去运行,而留下一个尽量小的内核,用它来完成操作系统最基本的核心功能,称这种技术为微内核技术。在微内核中通常提供了进程(线程)管理、低级存储器管理、中断和陷入处理等功能。6.在操作系统中为什么要引入进程的概念?它会产生什么样的影响?为了使程序在多道程序环境下能并发执行,并对并发执行的程序加以控制和描述,在操作系统中引入了进程概念。影响:使程序的并发执行得以实行7.PCB提供了进程管理和进程调度所需要的哪些信息?进程标识符、处理机状态、进程调度信息、进程控制信息。8.何谓操作系统内核?内核的主要功能是什么?操作系统内核是指大多数操作系统的核心部分。它由操作系统中用于管理存储器、文件、外设和系统资源的那些部分组成。操作系统内核通常运行进程,并提供进程间的通信9.为什么要在OS中引入线程?在OS中引入进程的目的,是为了使多个程序能并发执行,以提高资源利用率和系统吞吐量。在OS中再引入线程,则是为了减少程序在并发执行时所付出的时空开销,使OS具有更好的并发性。10.线程控制块TCB中包含了哪些内容?一般TCB中的内容较少,因为有关资源分配等多数信息已经记录于所属进程的PCB中.TCB中的主要信息包括线程标识、线程状态、调度参数、现场、链接指针,其中现场信息主要包括通用寄存器、指令计数器PC以及用户栈指针.对于操作系统支持的线程,TCB中还应包含系统栈指针。311.何谓用户级线程和内核支持线程?答:(1)用户级线程:仅存在于用户空间中的线程,无须内核支持。调度单位:进程(2)内核支持线程:在内核支持下运行的线程。调度单位:线程12.试比较FCFS和SJF两种进程调度算法。相同点:两种调度算法都可以用于作业调度和进程调度。不同点:FCFS调度算法每次都从后备队列中选择一个或多个最先进入该队列的作业,将它们调入内存、分配资源、创建进程、插入到就绪队列。该算法有利于长作业/进程,不利于短作业/进程。SPF算法每次调度都从后备队列中选择一个或若干个估计运行时间最短的作业,调入内存中运行。该算法有利于短作业/进程,不利于长作业/进程。13.在时间片轮转法中,应如何确定时间片的大小?答:时间片应略大于一次典型的交互需要的时间。一般应考虑三个因素:系统对相应时间的要求、就绪队列中进程的数目和系统的处理能力。14.什么是最早截止时间优先调度算法?举例说明之。根据任务的开始截止时间确定的任务优先级调度算法。截止时间越早则优先级越高。该算法要求在系统中保持一个实时任务就绪队列,该队列按各任务截止时间的先后排序。举例:非抢占式调度方式用于非周期实时任务15.什么是最低松弛度优先调度算法?举例说明之。答:该算法是根据任务紧急(或松弛)的程度,来确定任务的优先级。任务的紧急程度愈高,为该任务所赋予的优先级就愈高,以使之优先执行。例如,一个任务在200ms时必须完成,而它本身所需的运行时间就有100ms,因此,调度程序必须在100ms之前调度执行,该任务的紧急程度(松弛程度)为100ms。又如,另一任务在400ms时必须完成,它本身需要运行150ms,则其松弛程度为250ms16.何谓死锁?产生死锁的原因和必要条件是什么?答:死锁是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,它们都将无法再向前推进。产生死锁的原因为竞争资源和进程间推进顺序非法。其必要条件是:互斥条件、请求和保持条件、不剥夺条件、环路等待条件。17.在解决死锁问题的几个方法中,哪种方法最易于实现?哪种方法使资源利用率最高?答:解决死锁的四种方法即预防、避免、检测和解除死锁中,预防死锁最容易实现;解除死锁使资源的利用率最高。18.可采用哪几种方式将程序装入内存?它们分别适用于何种场合?(1)绝对装入方式,只适用于单道程序环境。(2)可重定位装入方式,适用于多道程序环境。(3)动态运行时装入方式,用于多道程序环境;不允许程序运行时在内存中移位置。419.何谓装入时动态链接?装入时动态链接方式有何优点?答:装入时动态链接是指将用户源程序编译后得到的一组目标模块,在装入内存时采用边装入边链接的链接方式。优点:加快程序的装入过程,且可以节省大量内存空间。20.何谓运行时动态链接?运行时动态链接方式有何优点?答:运行时动态链接是将对某些模块的链接推迟到程序执行时才进行链接,也就是,在执行过程中,当发现一个被调用模块尚未装入内存时,立即由OS去找到该模块并将之装入内存,把它链接到调用者模块上。优点:凡是在执行过程中未被用过的目标模块,都不会被调入内存和被链接到装入模块上,这样不仅能加快程序的装入过程,而且可节省大量的内存空间。21.在采用首次适应算法回收内存时,可能出现哪几种情况?应怎样处理这些情况?答:在采用首次适应算法回收内存时可能出现4种情况:(1)回收区前邻空闲区。将回收区与前邻空闲区合并,将前邻空闲区大小修改为两者之和。(2)回收区后邻空闲区。将两区合并,改后邻空闲区始址为回收区始址,大小为两者之和。(3)回收区前后均邻空闲区。将三个分区合并,修改前邻空闲区大小为三者之和。(4)回收区前后均不邻空闲区。为回收区设置空闲区表项,填入回收区始址和大小并插入空闲区队列。22.为什么要引入对换?对换可分为哪几种类型?在多道环境下,一方面,在内存中的某些进程由于某事件尚未发生而被阻塞,但它却占用了大量的内存空间,甚至有时可能出现在内存中所有进程都被阻塞而迫使CPU停止下来等待的情况;另一方面,却又有着许多作业在外存上等待,因无内存而不能进入内存运行的情况。显然这对系统资源是一种严重的浪费,且使系统吞吐量下降。为了解决这一问题,在操作系统中引入了对换(也称交换)技术。可以将整个进程换入、换出,也可以将进程的一部分(页、段)换入、换出。前者主要用于缓解目前系统中内存的不足,后者主要用于实现虚拟存储。23.在以进程为单位进行对换时,每次是否都将整个进程换出?为什么?答:在以进程为单位进行对换时,并非每次都将整个进程换出。这是因为:(1)从结构上讲,进程由程序段、数据段和进程控制块组成的,其中进程控制块总有部分或全部常驻内存,不被换出。(2)程序段和数据段可能正被若干进程共享,此时它们也不能换出。24.什么是页面?什么是物理块?页面的大小应如何确定?答:页面,物理块——分页存储管理方式中的单元。页面:分页存储管理将进程的逻辑地址空间分成若干个页,并为各页加以编号。物理块:相应地,也将内存的物理空间分成若干个物理块,同样为它们加以编号页面大小:既不能太小也不能太大,要起到减少内存碎片总空间的作用,也不能使页表过长,总之要选择适中,且页面大小应5是2的幂,通常为1KB-8KB。25.什么是页表?页表的作用是什么?答:在分页系统中,允许将进程的各个页离散地存储在内存的任一物理块中,为保证进程仍让能够正确地运行,即能在内存中找到每个页面所对应的物理块,系统又为每个进程建立了一张页面映像表,简称页表。页表的作用是实现从页号到物理块号的地址映射。26.具有快表时是如何实现地址变换的?系统将有效地址(逻辑地址)中的页号与页表寄存器中的内容比较,若页号太大,表示访问越界,于是产生越界中断;若未出现越界情况,地址变换机构自动地将页号P送入高速缓存,再确定所需要的页是否在快表(高速缓存)中。若在则直接读出该页所对应的物理块号,并送物理地址寄存器;若在快表中未找到对应的页表项,需再访问内存中页表,找到后,把从页表中读出的页表项存入快表中的一个寄存器单元中,以取代一个老的、已被认为不再需要的页表项。与此同时,再将有效地址寄存器中的页内地址直接送入物理地址寄存器,从而完成了从有效地址(逻辑地址)到物理地址的转换27.虚拟存储器有哪些特征?其中最本质的特征是什么?虚拟存储器有多次性、对换性、虚拟性三大特征。最本质的特征是虚拟性。28.实现虚拟存储器需要哪几个关键技术?答:(1)在分页请求系统中是在分页的基础上,增加了请求调页功能和页面置换功能所形成的页式虚拟存储系统。允许只装入少数页面的程序(及数据),便启动运行。(2)在请求分段系统中是在分段系统的基础上,增加了请求调段及分段置换功能后形成的段式虚拟存储系统。允许只装入少数段(而非所有段)的用户程序和数据,即可启动运行。29.在请求分页系统中,应从何处将所需页面调入内存?答:请求分页系统中的缺页从何处调入内存分三种情况:(1)系统拥有足够对换区空间时,可以全