操作系统期末考试问答题

第一章:操作系统引论

1.在计算机系统上配置 OS(operating system,操作系统)的目标是什么?作用主要表现在哪几个方面?

【参考答案】在计算机系统上配置OS,主要目标是实现:方便性、有效性、可扩充性和开放性。

OS的作用主要表现在以下3个方面:①OS作为用户与计算机硬件系统之间的接口;②OS作为计算机系统资源的管理者;

③OS实现对计算机资源的抽象。

5.试说明推动分时系统形成和发展的主要动力是什么。

【参考答案】推动分时系统形成和发展的主要动力是“为了更好地满足用户的需要”。其主要表现在:①CPU(central processing unit,中央处理机)的分时使用缩短了作业的平均周转时间;②人机交互功能的提供使用户能方便地直接控制自己的作业;③主机的共享使多个用户(包括远程用户)能同时使用一台计算机独立地、互不干扰地处理各自的作业。

22.什么是微内核 OS ?它具有哪些优点?

【参考答案】微内核OS具有如下4个特征:①足够小的内核;②基于客户/服务器模式;③应用策略与机制分离原则;④采用面向对象技术。

微内核OS的主要优点包括:①提高了系统的可扩展性;②增强了系统的可靠性和可移植性;③提供了对分布式系统的支持;④融入了面向对象技术。

第二章:进程的描述与控制

2.什么是进程? OS 中为什么要引入进程?它会产生什么样的影响?

【参考答案】①进程是一段可并发执行的具有独立功能的程序,是关于某个数据集的一次执行过程,也是OS进行资源分配和保护的基本单位。②在OS中引入进程,是为了实现多个程序的并发执行。传统的程序与其他程序并发执行时,执行结果不可再现,因此,传统的程序不能与其他程序并发执行,只有在为之创建进程后,其才能与其他程序(进程)并发执行。这是因为并发执行的程序“停停走走”地执行,只有在为它创建进程后,在它停下时,方能将其CPU现场信息保存在它的PCB(processing control block,进程控制块)中,待下次被调度执行时再从PCB中恢复CPU现场而继续执行,但传统的程序却无法满足上述要求。③建立进程所带来的好处是多个程序能并发执行,这极大地提高了资源利用率和系统吞吐量。但管理进程也须付出一定的代价,包括PCB及协调各运行机构所占用的内存空间开销,以及为进行进程间的切换、同步与通信等所付出的时间开销。

5.叙述组成进程的基本要素,并说明它们的作用。

【参考答案】每个进程均由PCB、程序块、数据块和堆栈这4个基本要素组成。它们的作用分别描述如下。

(1)PCB:用来存储进程的标志信息、现场信息和控制信息。进程创建时建立PCB,进程撤销时回收PCB,其与进程一一对应。

(2)程序块:即被执行的程序。它规定了进程一次运行应实现的功能,通常是纯代码,其作为一种系统资源可被多个进程共享。

(3)数据块:即程序运行时须加工处理的对象,包括全局变量、局部变量和常量等的存放区以及开辟的工作区,常常为一个进程专用。

(4)堆栈:每个进程都将捆绑一个堆栈,用来存储进程的标志信息、现场信息和控制信息

16.为什么要在 OS 中引入线程?

【参考答案】在OS中引入线程是为了减少进程在并发执行时所付出的时空开销,使OS具有更好的并发性,提高CPU的利用率。进程是分配资源的基本单位,而线程则是系统调度的基本单位。由于进程是资源的拥有者,因此在其创建、撤销、切换操作中需要较大的时空开销,限制了并发程度的进一步提高。为减少进程切换的开销,通常把进程作为资源分配单位和调度单位这两个属性进行分开处理,即进程还是作为资源分配的基本单位,但是不作为调度的基本单位(很少调度或切换),把调度执行与切换的责任交给“线程”。这样做的好处是不但可以提高系统的并发度,还能使系统适应新的对称多处理机环境,充分发挥其性能。

第三章:处理机调度与死锁

1.高级调度与低级调度的主要任务是什么?为什么要引入中级调度?

【参考答案】①高级调度的对象是作业。它的主要任务是根据某种算法,决定将外存上处于后备队列中的哪几个作业调入内存,为它们创建进程、分配必要的资源,并将它们放入就绪队列。

②低级调度的对象是进程(或内核级线程)。它的主要任务是根据某种算法,决定就绪队列中的哪个进程获得处理机,并由分派程序将处理机分配给被选中的进程。

引入中级调度的主要目的是提高内存利用率和系统吞吐量。为此,应把那些暂时不能运行的进程调至外存等待,把进程状态改为就绪驻外存状态或挂起状态。当它们已具备运行条件且内存又有空间时,由中级调度来决定把外存上的那些已具备运行条件的就绪进程再重新调入内存,并修改它们的状态为就绪状态,挂在就绪队列上等待。

5.试说明低级调度的主要功能。

【参考答案】低级调度是在就绪队列中选择某个进程,由分派程序把CPU分配给该进程。

低级调度的主要功能有:①保存当前进程的CPU现场信息;②按某种算法选择投入执行的新进程;③恢复新进程的CPU现场,从而将CPU分配给新进程

10.试比较 FCFS 和 SJF 这两种调度算法。

【参考答案】(1)相同点:这两种调度算法都可以用于作业调度和进程调度。(2)不同点:FCFS调度算法每次都从后备队列中选择一个或多个最先进入该队列的作业,将它们调入内存、分配资源、创建进程、插入就绪队列。该算法有利于长作业/长进程,不利于短作业/短进程。SJF调度算法每次调度都从后备队列中选择一个或若干个估计运行时间最短的作业,将其调入内存运行。该算法有利于短作业/短进程,不利于长作业/长进程。

17.(考研真题)什么是死锁?产生死锁的原因和必要条件是什么?如何预防死锁?

【参考答案】死锁是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,它们都将无法向前推进。   产生死锁的原因有:①竞争不可抢占性资源;②竞争可消耗资源;③进程间推进顺序不当。产生死锁必须同时具备4个必要条件:互斥条件、请求和保持条件、不可抢占条件、循环等待条件。

预防死锁是通过破坏产生死锁的4个必要条件中的一个或几个来实现的。其中互斥条件是设备固有属性,不能改变,因此主要破坏产生死锁的其他3个必要条件。①破坏“请求和保持”条件。当一个进程在请求资源时,它不能持有不可抢占性资源。②破坏“不可抢占”条件。当一个已经保持了某些不可抢占性资源的进程提出新的资源请求而不能得到满足时,它必须释放已经保持的所有资源,待以后需要时再重新申请。③破坏“循环等待”条件。对系统所有资源类型进行线性排序,并赋予它们不同的序号,规定每个进程必须按序号递增的方式请求资源

第四章:进程进步

1.什么是临界资源?什么是临界区?

【参考答案】①在计算机中有许多资源一次仅允许一个进程使用,我们把一次仅允许一个进程使用的资源称为临界资源,如打印机和一些共享变量等。②进程中访问临界资源的那段代码称为临界区。

4.如何保证各进程互斥地访问临界资源?

【参考答案】为了互斥地访问临界资源,系统必须保证进程互斥地进入临界区。为此,必须在临界区前增加一段进入区代码,以检查是否有其他进程已进入临界区而在使用临界资源。若有,则进程必须等待;否则,允许进程进入临界区,同时设置标志以表示有进程正在临界区内。同样,在临界区后必须增加一段退出区代码,用于将已有进程进入临界区访问临界资源的标志改为无进程进入临界区使用临界资源。进入区和退出区可用多种同步机制实现,如锁、信号量等。

11.什么是管程?它有哪些特性?

【参考答案】由代表共享资源的数据结构以及由对该共享数据结构实施操作的一组过程所组成的资源管理程序共同构成的一个OS资源管理模块,称为管程。管程是一种程序设计语言结构成分,从语言的角度看,管程主要有以下特性:①模块化,管程是一个基本程序单位,可以单独编译;②抽象数据类型,管程中不仅有数据,而且有针对数据的操作;③信息掩蔽,管程中的数据结构只能被管程中的过程访问,这些过程在管程内部被定义,供管程外的进程调用,而管程中的数据结构以及过程(函数)的具体实现在外部不可见。

第五章:存储器管理

3.(考研真题)请解释什么是重定位?为什么要重定位?

【参考答案】①将用户程序的相对地址(逻辑地址)转换为绝对地址(物理地址)的过程,称为重定位。②由于在多道程序环境下,多个目标模块的起始地址通常是0,程序中的其他地址都是相对于0这一起始地址而言的。采用重定位,可根据内存的当前地址使用情况,将装入模块装入内存的适当位置,并确定装入的物理地址,以保证程序运行时存取指令或数据地址的正确。

8.为什么要引入对换?对换可分为哪几种类型?

【参考答案】在多道程序环境下,一方面,在内存中的某些进程会因某事件尚未发生而阻塞,但此时它占用了大量的内存空间,这样,内存中的所有进程都有可能被阻塞,进而发生迫使CPU停止下来等待的情况;另一方面,有许多作业因内存间不足会一直驻留在外存上,而不能进入内存运行。这不仅浪费系统资源,而且会降低系统吞吐量。为了解决这一问题,在OS中引入了对换(也称交换)技术。对换可分为整体对换和部分对换两种类型。整体对换是将整个进程换入/换出,主要用于缓解目前系统中内存不足的这一情况。部分对换是将进程的一部分(页、段)换入/换出,主要用于实现虚拟存储器。

11.提高内存利用率的途径主要有哪些?

【参考答案】内存利用率不高,主要表现为4种形式:①内存中存在大量的、分散的、难以利用的碎片;②暂时或长期不能运行的程序和数据占据了大量的存储空间;③当作业较大时,内存中只能装入少量作业,当它们被阻塞时,将使CPU空闲,从而降低了内存的利用率;④内存中存在着重复的复制。

针对上述问题,可采用下述方法提高内存的利用率:①将连续分配方式改为离散分配方式,以减少内存中的碎片;②增加对换机制,将暂时不能运行的进程或暂时不需要的程序和数据换出至外存,以腾出内存来装入可运行的进程;③引入动态链接机制,当运行中的程序需要调用某段程序时,才将该段程序由外存装入内存;④引入虚拟存储器机制,使更多的作业能装入内存,提高了CPU的利用率,也可避免装入本次运行中不会用到的那部分程序和数据;⑤引入存储器共享机制,允许一个正文段或数据段被若干个进程共享,以减少内存中重复的复制。

第六章:虚拟存储器

2.什么是虚拟存储器?如何实现页式虚拟存储器?

【参考答案】虚拟存储器是具有请求调入功能和置换功能,能从逻辑上对内存容量进行扩充的一种存储系统。从用户观点看,虚拟存储器具有比实际内存大得多的容量,其逻辑容量由逻辑地址结构以及内存和外存容量之和决定,其运行速度接近于内存的存取速度,而每位的成本却又接近于外存。

为实现虚拟存储器,首先需要扩充页表,增加状态位以指出所需页是否在内存中,增加外存起始地址以便调入页面,增加引用位以供置换算法使用,增加修改位以减少换出时写入磁盘的次数。另外,还要使用两种关键技术。①请求调页技术。该项技术是指及时将进程所要访问的不在内存中的页调入内存。该功能是由硬件(缺页中断机构发现缺页)和软件(将所需页调入内存)配合实现的。②置换页技术。该项技术是指当内存中已无足够空间用于装入即将调入的页时,为了保证进程能继续运行,系统必须换出内存中的部分页,以腾出足够的空间。具体的置换操作并不复杂,其关键是确定应将哪些页换出,即采取什么置换算法。

6.试说明在请求分页系统中页面的调入过程。

【参考答案】每当程序所要访问的页面未在内存时(存在位为“0”),便向CPU发出缺页中断,中断处理程序保存CPU现场信息,分析中断原因后,转入缺页中断处理程序。该程序通过查找页表得到该页在外存的物理地址,如果此时内存能容纳新页,则启动磁盘,将所缺页面调入内存,然后修改页表。如果内存已满,则须按照某种置换算法进行页面置换;如果换出页面被修改过(修改位为“1”),则必须将它写回磁盘,再把缺页调入内存,将页表中调入页的存在位改为“1”,并将此页表项写入快表中。利用修改后的页表,形成要访问数据的物理地址,再去访问内存数据。整个页面调入过程对用户是透明的。

10.什么是“抖动”?产生“抖动”的原因是什么?

【参考答案】①“抖动”是指刚被换出的页很快被访问,须重新调入,因此须再选一页调出,而此时被换出的页很快又要被访问,因而又须将它调入,如此频繁地更换页面,使得系统把大部分时间用在了页面的换进/换出上,而几乎不能完成任何有效的工作,我们称这一现象为“抖动”。

②产生“抖动”的根本原因是同时在系统中运行的进程太多,分配给每个进程的物理块数太少,其不能满足进程正常运行的基本要求,致使每个进程在运行时会频繁缺页。

第七章:输出/输入系统

1.试说明 I/O 系统的基本功能。

【参考答案】I/O系统的基本功能主要包括:①隐藏物理设备的细节;②保证OS与设备无关;③提高处理机和I/O设备的利用率;④控制I/O设备;⑤确保对设备的正确共享;⑥处理错误

5.设备中断处理程序通常须完成哪些工作?它对中断进行处理的过程包含哪些步骤?

【参考答案】设备中断处理程序要完成:①唤醒被阻塞的驱动进程;②保存被中断进程的CPU现场信息;③转入相应的设备处理程序;④处理中断;⑤恢复被中断进程的CPU现场。

对中断进行处理的过程为:①测定是否有未响应的中断信号;②保护被中断进程的CPU现场;③转入相应的设备处理程序;④处理中断;⑤恢复CPU现场并退出中断。

8.请说明中断驱动 I/O 方式和 DMA(direct memory access,直接存储器访问)方式有什么不同。

【参考答案】它们主要在以下两个方面有不同。

(1)I/O中断频率。在中断驱动I/O方式中,每当输入数据缓冲寄存器中装满输入数据或将输出数据缓冲寄存器中的数据输出之后,设备控制器就会发生一次中断,由于设备控制器中配置的数据缓冲寄存器通常较小,如1个字节或1个字,因此中断比较频繁。而在DMA方式中,在DMA控制器的控制下,一次能完成一批连续数据的传输,并在整批数据传送完成后才发生一次中断,因此可大大减少CPU处理I/O中断的时间。

(2)数据的传送方式。在中断驱动I/O方式中,由CPU直接将输出数据写入控制器的数据缓冲寄存器中以供设备输出,或在中断发生后直接从数据缓冲寄存器中取出输入数据以供进程处理,即数据的传送必须经过CPU;而在DMA方式中,数据传送是在DMA控制器控制下直接在内存和I/O设备间进行的,CPU只须将磁盘地址、内存地址和字节数传给DMA控制器即可

第八章:文件管理

1.何谓数据项、记录和文件?

【参考答案】①数据项是最低级的数据组织形式,可分为基本数据项和组合数据项。基本数据项是描述一个对象某种属性的字符集,是数据组织中可以命名的最小逻辑数据单位,又称为数据元素或字段。组合数据项是若干个基本数据项所构成的数据项。②记录是一组相关数据项的集合,用于描述一个对象某方面的属性。③文件是由创建者定义的、具有文件名的一组相关信息的集合。

4.什么是文件的逻辑结构?逻辑文件有哪几种组织形式?

【参考答案】①文件的逻辑结构是指从用户的角度出发所观察到的文件组织形式,也就是用户可以直接处理的数据及其结构。

②逻辑文件根据其结构可分为两种:一种是无结构的流式文件,是指文件信息由一串字符流构成;另一种是有结构的记录式文件,是指将文件信息按照在逻辑上独立的含义划分为信息单位,每个信息单位称为一个逻辑记录(简称记录)。

8.目前广泛采用的目录结构是哪种?它有什么优点?

【参考答案】目前广泛采用的目录结构是多级树形目录,它具有以下优点。

(1)能有效提高对目录的检索速度。假定文件系统中有N个文件,在单级目录中,最多要检索N个目录项;但对于i级树形目录,在目录中每检索一个指定的文件,最多可能要检索i× N^1/t 项。

(2)允许文件重名。在树形结构的文件系统中,不仅允许每个用户在自己的分目录中使用与其他用户的文件相同的名字,而且允许同一个用户的不同分目录中的文件重名。

(3)便于实现文件共享。在树形目录中,用户可通过路径名共享他人的文件;也可将共享文件链接到自己的目录下实现共享,实现方式是系统在用户目录中增设一个目录项,并在其中填上用户赋予共享文件的新文件名,以及该共享文件的唯一标识符(或索引节点编号)。

(4)能更有效地进行文件的管理和保护。在多级目录中,用户可按文件性质的不同,将它们存放到不同的子目录中,并且可以赋予各目录不同的存取权限,因此,能更有效地管理和保护文件。

第九章:磁盘存储器管理

1.文件物理结构是指一个文件在外存上的存储组织形式,主要有连续结构、链接结构和索引结构这3种,请分别简述它们的优缺点。

【参考答案】(1)连续结构。优点: ①存储管理简单,容易实现②支持顺序存取和随机存取③顺序访问速度快。缺点:①要求为每个文件分配连续的存储空间②必须事先知道文件的长度,要求能灵活地插入和删除记录③不利于文件的动态增长

(2)链接结构。优点:①消除了磁盘的外部碎片,提高了磁盘空间的利用率②能适应文件的动态增长③方便插入,修改和删除记录。缺点:①存取速度较慢,不适合随机存取②物理块间的链接指针错误造成数据丢失,可靠性差③需要较多的寻到次数和较长的寻到时间④链接指针会占空间,降低了空间利用率

(3)索引结构。优点:①既能顺序存取又能随机存取②能适应文件的动态增长③方便插入,修改和删除记录。缺点:①需要较多的寻到次数和较长的寻到时间②索引表增加了系统的开销包括内存空间和存取时间。

  • 26
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值