1. 操作系统结构设计应追求的目标是什么?正确性、高效性、维护性、移植性。
2. 在磁盘存储空间管理的位示图法中,确定已知空闲块地址的块号、柱面号的通用公式为:块号=字号×字长+位号柱面号=\[块号/柱面上的块数\]请写出确定空闲块地址的磁头号和扇区号的通用公式。
答案:磁头号=\[(块号mod柱面上的块数)/盘面上的扇区数\]扇区号=(块号mod柱面上的块数)mod盘面上的扇区数3. UNIX系统调用close是如何处理的?清除有关的表项。
检查块设备的缓冲区是否还有信息未写回,若有,则写回设备。
检查是否有其他进程仍打开此设备,若有,则不能关闭此设备。
若无其他进程打开此设备,调用驱动程序中的关闭过程,与设备断开。
4. 什么是线程?简述进程与线程的关系。
线程是进程中可独立执行的子任务。
一个进程中可以有一个或多个线程。
一个进程中的各个线程可以并发执行。
系统为进程分配主存空间,同一进程中的各线程共享该进程的主存空间。
5. 操作系统采用层次结构设计方法有什么优点和难点?主要优点是有利于系统的设计与调试,主要困难在于层次的划分和安排。
6. 目录结构有一级、二级和树形目录结构。
请简单叙述树形目录结构的优点。
解决了重名问题;有利于文件分类;提高检索文件的速度;能进行存取权限的控制。
7. 简述UNIX中系统调用命令OPEN的处理过程。
(1)分配一个活动索引节点,引用计数i_count加1。
(2)在进程打开文件表和系统打开文件表中分配表项。
(3)调用设备驱动程序检查打开的合法性。
(4)初始化驱动程度的数据结构。
(5)建立进程和设备间的联系。
8. 比较进程同步和进程互斥的异同。
答案:同:两者都是对并发进程竞争共享资源的管理。
异:进程互斥——各进程竞争共享资源没有必然的逻辑顺序。
只要无进程在使用共享资源就允许任一进程去使用。
进程同步——对共享资源的使用有一定的逻辑顺序。
9. 某系统有同类资源m个,供n个进程共享,如果每个进程最多申请x(1≤x≤m)个资源,且各进程的最大需求量之和小于(m+n)个资源,证明该系统不会发生死锁。
证:若系统会死锁,则n(x-1)+1≤m一定不成立即n(x-1)+1>m成立(2分)于是nx>m+n-1推得nx≥m+n(1分)与题意nx<m+n矛盾,故系统不会死锁。
10. 为什么要研究操作系统的结构?答案:操作系统是一种程序量大且复杂的系统软件,操作系统是否正确关系到计算机系统的安全,结构良好的操作系统能减少自身的开销且提高计算机系统的效率。
11. 进程与程序有什么区别?为什么要引入进程?进程是一个程序在一个数据集合上的一次执行,是动态的。
而程序是静止的。
从程序的角度无法描述一个程序同时被多个用户调用时的工作状态,而引入进程后,一个程序被多个用户调用时就形成多个进程,它们能正确反映该程序为各用户服务时的动态执行情况。
12. 简述批处理操作系统的作业调度和作业调度选择作业的必要条件。
采用批处理控制方式的计算机一般均提供SPOOL技术,操作员用预输入命令启动预输入程序,将作业信息存放到输入井中。
操作系统按一定算法从输入井中选取若干作业装入主存,使它们有机会获得CPU运行,这项工作称为“作业调度”。
作业调度选取作业的必要条件是系统中现有的资源能满足被选作业的要求。
13. 简述为了降低换进换出的频率并提高系统效率,UNIX 系统的交换进程采用的措施。
换出一个进程时,被其他进程正在共享的正文段不能换出。
当对换区有就绪进程并且内存有足够空间时,立即把它换进。
为了换一个进程而必须换出其他进程时,总是先换出在内存睡眠的进程。
14. 什么是文件的保护?简述实现用户共享文件进行文件保护的方法。
文件的保护是防止文件被破坏和非法访问。
文件可能造成的破坏涉及用户对文件使用权限,具体可有多种方法:①采用树形目录结构,凡能获得某级目录的使用权限的用户,就能使用该级目录的全部目录和文件的规定权限;②存取控制表,列出所有用户对所有文件的使用权限;③文件使用权限,以文件为单位,列出文件主、伙伴和一般用户对该文件的使用权限。
15. 分别叙述无关的并发进程和有交往的并发进程及它们执行时的特征。
无关的并发进程,它们分别在各自的数据集合上操作,且任何一个进程的执行都不依赖其他的进程。
有交往的并发进程,它们一定共享某些资源,且任何一个进程的执行需依赖其他的进程的执行情况。
16. 试述分区存储管理中提高主存利用率的措施。
采用覆盖技术,对换技术(swapping),移动技术。
合理分区(按大小顺序,按作业大小和出现频率,按作业对空间需求)。
合理分配算法(最优、最差适应算法)。
17. 什么叫文件目录?文件目录中应包含哪些基本内容?用来标识文件和记录文件情况的信息集合称文件目录,文件目录中的每个目录项与一个文件对应。
应有如下基本内容:文件的控制信息;文件的结构信息;文件的管理信息。
(或用户名、文件名、存取方式、存取权限;存储结构,存放位置,建立日期,保留期限等)18. 什么叫独占设备?什么叫共享设备?各举一例。
每次只允许一道作业使用的设备称独占设备例如输入机(或打印机)允许几道作业同时使用的设备称共享设备例如只读文件(或磁盘)19. 说明资源的抢夺式分配策略防止死锁的方法。
当一个进程申请的资源尚未被占用时,系统就把资源分配给该进程;进程A申请资源r已被进程B占用,若进程B处于等待另一个资源,那么系统将抢夺进程B占用的r分配给进程A,否则,系统让进程A等待资源r;一个等待资源的进程,只有得到所申请的新资源和所有被抢夺的老资源后,才继续运行。
往往只适用于CPU和主存。
20. 简述Unix系统中文件控制块(FCB)的实现技术和优点。
PCB一分为二,一为16字节的(文件名,ino);另一为inode 节点。
优点:前者很小,故在目录中查找一文件的目录项会较快,提高了效率。
21. 试述能起到扩充主存空间的虚拟存储技术的原理。
作业信息保留在磁盘上,装入时,只将其中一部分先装入主存运行,其他部门仅当要使用时才调入。
(1)虚拟存储器的容量由地址结构决定,n位地址容量可达2n。
(2)利用表格(段表、页表)构造一个用户的虚拟空间。
22. 解释什么是逻辑文件和物理文件,它们各有哪些基本形式?(1)用户按自己的使用要求组成的文件称逻辑文件。
(2)逻辑文件可有流式和记录式两种组织形式。
(3)存放在存储介质上的文件称物理文件。
(4)物理文件可有顺序文件、链接文件、索引文件三种基本形式。
23. 什么叫“驱动调度”?比较“最短寻找时间优先”算法和“电梯调度”算法。
当有多个进程在等待访问磁盘时,系统往往采用一定的调度策略来决定各等待访问者的执行次序,把这项工作称驱动调度。
最短寻找时间优先和电梯调度都是要尽量减少移动臂移动时所花的时间。
但前者不考虑移动臂的移动方向,而后者要考虑臂原移动方向。
24. 说明资源的按序分配策略能防止死锁的原因。
答案:资源按序分配策略把系统中所有资源类给一个不同的编号,并规定系统中任何一个进程申请两个以上资源时,必须先申请编号小的资源,再申请编号大的资源(或必须先申请编号大的资源,再申请编号小的资源),这样破坏了死锁的必要条件“循环等待条件”,从而防止了死锁的发生。
25. 现有一命令行program1|program2,program1和program2为可执行程序,试用重定向机制实现与上述命令同样功能的命令文件。
并写出工作过程。
编辑(如VI)文件,prog(名字可自拟),内容为program1>tmp(1分)program2<tmp(1分)rm tmp(1分)再使prog成为可执行的chmod+xprog(1分)执行prog即可。
26、何谓操作系统的可移植性?怎样才能方便移植?所谓移植性,是指能否方便地把操作系统从一个硬件环境移植到另一个新的硬件环境之中。
为了能方便地移植,在结构设计时,应尽量减少与硬件直接有关的程序量,且将其独立封装。
27、简要说明设计作业调度程序的原则及采用作业调度算法的必要条件。
原则:公平性:对用户公平,不能无故或无限制地拖延一个作业的执行。
平衡资源使用:尽可能地使系统资源都处极大的流量:在单位时间内为尽可能多的作业服务,保证计算机系统的吞吐能力。
必要条件:周转时间和平均周转时间与选用的高度算法。
1. 叙述下列术语并说明他们之间的关系:存储介质、卷、块、文件和记录。
存储介质:可用来记录信息的磁带、硬磁盘组、软磁盘片、卡片等称为存储介质,目前常用的存储介质是磁带和磁盘;卷:把存储介质的物理单位定义为“卷”。
块:存储介质上连续信息所组成的一个区域称为“块”。
块是存储设备与主存储器之间进行信息交换的物理单位,每次总是把一块或几块信息读入主存储器,或把主存储器中的信息写到一块或几块中;文件:是指逻辑上具有完整意义的信息集合;记录:是指文件内信息按逻辑上独立的含义划分的信息单位,每个单位称为一个逻辑记录,简称为记录。
3. 操作系统与硬件是如何配合来实现存储保护的?在连续分配的存储系统中,硬件设置两个寄存器:基址寄存器、限长寄存器,用来限定用户程序执行时可以访问的主存空间范围。
程序执行时,系统对每一个访问主存的地址进行核对:“基址寄存器值≤访问地址≤基址寄存器值+限长寄存器值”成立,则允许访问;否则,不允许访问。
这样就保护了该区域以外的存储信息不受到破坏,一旦程序执行中出错也不会涉及其他程序。
5. SPOOL系统由哪些部分组成?各部分的功能是什么? SPOOL系统即斯普林系统,主要由以下三部分组成:(1)预输入程序:负责把一批组织在一起的作业流中的每个作业的初始信息传送到“输入井”保存以备作业执行时使用;(2)井管理程序:包括井管理读程序和井管理写程序两个功能,井管理读程序负责从输入机上读取文件信息供用户使用,井管理写程序负责把作业执行产生的结果保存到输出井中;(3)缓输出程序:负责查看输出#中是否有待输出的结果信息,若有,则启动打印机把作业的结果文件打印输出。
2. 操作系统怎样提高系统的效率?操作系统是一种系统程序,其目的是提供一个供其他程序执行的良好环境。
配置操作系统可以使得计算机系统能高效地工作;操作系统扩充硬件的功能,使硬件的功能发挥的更好;操作系统使用户合理共享资源,防止各用户间的相互干扰;操作系统以文件形式管理软件资源,保证信息的安全和快速存取。
5. 启动磁盘执行一次输入输出操作花费的时间由哪几部分组成?寻找时间—磁头在移动臂带动下移动到指定柱面所花的时间;延迟时间—指定扇区旋转到磁头位置下所需要的时间;传送时间—由磁头进行读写完成信息传送的时间。
1. 解释进程的顺序性和并发性。
答案:目前使用的计算机基本上是冯?诺依曼(Von Neumann)式结构,其基本特点是处理器顺序执行指令。