操作系统复习资料_操作系统复习资料全
操作系统复习资料由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“操作系统复习资料全”。
第一章P45 ⒉什么是操作系统?操作系统追求的主要目标是什么?
答:操作系统是计算机系统中的一个系统软件,是能有效地组织和管理计算机系统中的硬件和软件资源,合理地组织计算机工作流程,控制程序的执行,并向用户提供各种服务功能,使得用户能够灵活、方便、有效地使用计算机,并使整个计算机系统能高效地运行的一组程序模块的集合。操作系统追求的主要目标包括四个方面,分别是:方便性、有效性、可扩充性、开放性。⒍从资源管理观点看,操作系统具有哪些功能?
答:处理机管理、存储器管理、I/O设备管理、文件管理。⒑什么叫多道程序系统?其主要特性是什么?
答:用户所提交的作业都先存放在外存并排成一个队列,该队列被称为“后备队列”;然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源,以达到提高资源利用率和系统吞吐量的目的,这样的系统称为多道程序系统。主要特征有:多道性、无序性、调度性。
⒒什么叫分时系统?其主要特点是什么? 答:分时系统是指一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户共享主机中的资源,每个用户都可通过自己的终端以交互方式使用计算机。其主要特点是:多路性、独立性、及时性和交互性。⒓什么叫实时系统?主要有哪几大类?
答:实时系统是指系统能及时(或即时)响应外部事件的请求,在规定的时间内完成该事件的处理,并控制所有实时任务协调一致地运行。按任务执行时是否呈现周期性来划分可分为周期性实时系统和非周期性实时系统,按对截止时间的要求来划分可分为强实时系统和弱实时系统。
第二章P61 ⒍系统采用不能移动已在主存储器中作业的可变分区方式管理主存储器,现有供用户使用的主存空间100K,系统配有4台磁带机,有一批作业见表2.6。表2.6 作业序号 进输入井时间 要求计算时间 需要主存量 申请磁带机数 1 l0:00 25分钟 15K 2台 2 10:20 30分钟 60K 1台 3 10:30 10分钟 50K 3台 4 10:35 20分钟 10K 2台 5 10:40 15分钟 30K 2台
该系统采用多道程序设计技术,对磁带机采用静态分配,忽略设备工作时间和系统进行调度所花的时间,请分别写出采用“先来先服务调度算法”、“计算时间短的作业优先算法”和选中作业执行的次序以及各个作业的装入主存时间、开始执行时间、完成时间、周转时间以及它们的平均周转时间。
答:先来先服务调度算法”、“计算时间短的作业优先算法”和选中作业执行的次序以及它们的平均周转时间的结果是一样的:
选中作业的次序:选中作业执行的次序均为1,2,4,5,3。
作业1的周转时间:25分钟;
作业2的周转时间:35分钟;
作业3的周转时间:70分钟;
作业4的周转时间:40分钟;
作业5的周转时间:50分钟;
平均周转时间:(25+35+70+50+40)/5=44分钟
7、在一个批处理单道系统中,采用响应比高者优先的作业调度算法。当一个作业进入系统后就可以开始调度,假定作业都仅是计算,忽略调度花费的时间。现有3个作业,进入系统的时间和需要计算的时间如表2-2所示。
表2-2 进入系统的时间和需要计算的时间表
作业 进入系统时间 需要计算时间 开始时间 完成时间 周转时间 1 9:00 60分钟 — — — 2 9:10 45分钟 — — — 3 9:15 25分钟 — — —
(1)求出每个作业的开始时间、完成时间及周转时间。(2)解答: 先来先服务:
作业 进入系统时间 需要计算时间 开始时间 完成时间 周转时间 1 9:00 60分钟 9:00 10:00 60分钟 2 9:10 45分钟 10:00 10:45 95分钟 3 9:15 25分钟 10:45 11:10 115分钟 响应比高者优先:
作业 进入系统时间 需要计算时间 开始时间 完成时间 周转时间 1 9:00 60分钟 9:00 10:00 60分钟 2 9:10 45分钟 10:25 11:10 120分钟 3 9:15 25分钟 10:00 10:25 70分钟 短作业优先:
作业 进入系统时间 需要计算时间 开始时间 完成时间 周转时间 1 9:00 60分钟 9:00 10:00 60分钟 2 9:10 45分钟 10:25 11:10 120分钟 3 9:15 25分钟 10:00 10:25 70分钟
(2)计算三个作业的平均周转时间应为多少?
解答:
先来先服务:
(60+95+115)/3=90(分钟)响应比高者优先:(60+120+70)/3=83.33(分钟)短作业优先:(60+120+70)/3=83.33(分钟)
第三章P95 ⒈何谓进程,它与程序有哪些异同点?
答:进程是具有独立功能的可并发执行的程序在一个数据集合上的运行过程,是系统进行资源分配和调度的独立单位。或者说,进程是进程实体的运行过程。
①进程是程序的一次执行,它是一个动态的概念,程序是完成某个特定功能的指令的有序序列,它是—个静态的概念。但进程是把程序作为它的运行实体,没有程序,也就没有进程。进程和程序的区别还在于:一个进程可以执行一个或几个程序。反之,同一程序也可能由多个进程同时执行。②进程是系统进行资源分配和调度的一个独立单位;程序则不是。
③程序可以作为一种软件资源长期保存,而进程是程序的一次执行过程,它是临时的,有生命期的。表现在它由创建而产生,完成任务后被撤消。
④进程是具有结构的。为了描述进程的运行变化过程,应为每个进程建立一个结构——进程控制块。从结构上看,进程是由程序、数据和进程控制块三部分组成。⒉进程控制块的作用是什么?它主要包括哪几部分内容?
答:进程控制块的作用是使一个在多道程序环境下不能独立运行的程序(含数据)成为一个能独立运行的基本单位,一个能与其它进程并发执行的进程。也就是说,操作系统是根据进程控制块PCB来对并发执行的进程进行控制和管理的。PCB是进程存在的惟一标志。在进程控制块中,主要包括下述四个方面用于描述和控制进程运行的信息:
⑴ 程表示符信息 ⑵处理机状态信息 ⑶进程调度信息 ⑷进程控制信息
3. 进程有哪几种基本状态?试举出使进程状态发生变化的事件并描绘它的状态转换图。
进程有以下三种基本状态:
① 就绪状态。当进程已分配到除CPU以外所有必要的资源后,只要能再获得处理机便可立即执行,这时的状态称为就绪状态。
② 执行状态。进程已获得处理机,程序正在执行。
③ 阻塞状态。进程因发生某种等待事件(如I/O请求、申请缓冲空间等)而暂停执行时的状态,亦即进程的执行受到阻塞,故称这种状态为阻塞状态,有时也称为“等待”状态或“睡眠”状态。(2)进程状态的转换
进程在运行期间不断地从一个状态转换到另一个状态,进程的各种调度状态依据一定的条件而发生变化,它可以多次处于就绪状态和执行状态,也可多次处于阻塞状态,但可能排在不同的阻塞队列中。进程的三种基本状态及其转换如图3-1所示。
6.有5个进程(A~E)几乎同时到达一计算中心。它们的估计运行时间分别为10、6、2、4和8分钟。其优先数(由外部设定)分别为3、5、2、1和4,其中5设为最高优先级。对于下列每种调度算法,计算其平均进程周转时间,可忽略进程切换的开销。
(1)时间片轮转调度算法(时间片为4)。(2)优先级调度算法。
(3)先来先服务调度算法(按照次序10、6、2、4、8运行)调度算法。(4)最短进程优先调度算法。对(1),假设系统具有多道处理能力,每个进程均获得公平的处理机时间,对(2)~(4)假设任—时刻只有一个作业运行,直到结束。
时间片轮转法的平均周转时间是21 优先级调度的平均周转时间是20 先来先服务的平均周转时间是19 最短作业优先的平均周转时间是14 第四章P148 2什么叫临界资源?什么叫临界区?对临界区的使用应符合哪些规则? 答:临界资源是一种多个进程共享的资源。其属性是:共享临界资源的进程必须互斥得访问它,也就是说,同一时刻只允许一个进程访问的共享资源叫临界资源 在每个进程中访问临界资源的那段代码称为临界区。
每个进程在进入临界区之前应先对欲访问的临界资源进行检查,看它是否正被访问。如果此时临界资源未被访问,该进程便可进入临界区对该资源进行访问,并设置它正被访问的标志;如果此刻该临界资源正被某进程访问,则本进程不能进入临界区。因此,必须在临界区前面增加一段用于进行上述检查的代码。相应地,在临界区后面也要加上一段代码,用于将临界区正被访问的标志恢复为未被访问标志。
2若信号量s表示某一类资源,则对s执行P、v操作的直观含意是什么? p操作(wait)v操作(signal)答:P操作相当于申请一个资源,得不到阻塞;V操作相当于归还一个资源,如有等待该资源的进程,则唤醒。
5当进程对信号量s执行P、V操作时,s的值发生变化,当s>0、s=0和s0时 S表示可使用的资源数或表示可使用资源的进程数; S=0时 S表示无资源可供使用或表示不允许进程再进入临界区;
S
7.有一个阅览室,共有100个座位,读者进入时必须先在一张登记表上登记,该表为每一座位列一表目,包括座号和读者姓名等,读者离开时要消掉登记的信息,试问:(1)为描述读者的动作,应编写几个程序,设置几个进程?(2)试用PV操作描述读者进程之间的同步关系。
答:读者的动作有两个,一是填表进入阅览室,这时要考虑阅览室里是否有座位;一是读者阅读完毕,离开阅览室,这时的操作要考虑阅览室里是否有读者。读者在阅览室读书时,由于没有引起资源的变动,不算动作变化。
算法的信号量有三个:seats——表示阅览室是否有座位(初值为100,代表阅览室的空座位数);readers——表示阅览室里的读者数,初值为0;用于互斥的mutex,初值为1。读者进入阅览室的动作描述getin:
while(TRUE){P(seats);/*没有座位则离开*/ P(mutex)/*进入临界区*/ 填写登记表;进入阅览室读书;V(mutex)/*离开临界区*/ V(readers)
} 读者离开阅览室的动作描述getout:
while(TRUE){P(readers)/*阅览室是否有人读书*/ P(mutex)/*进入临界区 */消掉登记; 离开阅览室;
V(mutex)/*离开临界区*/ V(seats)/*释放一个座位资源*/ }
8、复印室里有一个操作员为顾客复印资料,有5把椅子供顾客休息等待复印。如果没有顾客,则操作员休息。当顾客来到复印室时,如果有空椅子则坐下来,并唤醒复印操作员;如果没有空椅子则必须离开复印室。利用信号量机制解决该同步互斥问题。
设置3个信号量:customers表示正在等待复印的顾客数量(不包括正在复印的顾客);operator记录正在等候顾客的操作员数,只有1和0;mutex用于对变量waiting的互斥访问。1个变量:waiting表示等待的顾客数量。
semaphore customers=0,operator=0,mutex=1;waiting=0;
proce operator()//操作员进程 { while(1){ wait(customers);//等待顾客到来 复印; signal(operator);//通知顾客已经完成复印 } } proce cusotmeri()//顾客进程i { wait(mutex);if(waiting
wait(operator);
wait(mutex);waiting--;signal(mutex);} Else { signal(mutex);离开复印室; } } main(){ cobegin { operator();customeri();} }
12什么是死锁?
答:死锁是指在多道程序系统中,一组进程中的每一个进程均无限期地等待被该组进程中的另一个进程所占有且永远不会释放的资源;这种现象称系统处于死锁状态,简称死锁。13死锁产生的四个必要条件是什么?
答:产生死锁的四个必要条件是:⑴互斥条件 ⑵请求和保持条件 ⑶不剥夺条件 ⑷环路等待条件
16假定系统有4个同类资源和3个进程,进程每次只申请或释放1个资源。每个进程最大资源需求量为2。请问这个系统为什么不会发生死锁?
解:由于每个进程最多需要2个资源,最坏情况下,每个进程获得1个,系统还剩1个。这1个资源,无论分给谁,都能完成。完成进程释放资源后,使剩余进程也完成。故系统不会发生死锁
19一个计算机系统有6个磁带驱动器n个进程。每个进程最多需要两个磁带驱动器。问当n为什么值时,系统不会发生死锁?
方法一:对于3个进程,每个进程能够有两个驱动器。对于4个进程,驱动器可以按照(2,2,1,1)的方法进行分配,使前面两个进程先结束。对于5个进程,可以按照(2,1,1,1,1)的方式进行分发,使一个进程先结束。对于6个进程,每个进程都拥有一个磁带驱动器同时需要另外一个驱动器,产生了死锁。因此,对于n〈6的系统来说是无锁的。
方法二:已知系统中的每个进程需要2个驱动器。那么在最坏的情况下,各进程都占用了其中的一个,而且都在请求自己所需要的另一个。如果此时系统尚有多于一个,那么就可以满足其中一个进程运行完毕。当该进程运行完毕释放出它所有占有的驱动器后,又可进一步满足其他进程。系统不会出现死锁。因此,如果将(6-1)个驱动器机分配给n个进程,满足每个进程一个的话,进程数量n必然小于等于5,此时系统中不会发生死锁。
第五章P192 ⒌可变分区常用的分区算法有哪几种?它们各自的特点是什么?
答:首次适应算法、循环首次适应算法、最佳适应算法、最差适应算法(第二问 略)
⒐简述分页存储管理方式的基本思想和页表的作用。
答:基本思想:在分页存储管理中将作业地址空间和存储空间按相同长度为单位进行等划分。把每个作业的地址空间(逻辑空间)分成一些大小相同的片段,叫做页面或页(Page)。把内存的存储空间也分成大小与页面相同的片段,叫做物理块或页框(Frame)。在分配存储空间时,总是以块为单位,按照作业的页数分配物理块。分配的物理块可以连续也可以不连续 页表的作用:实现从页号到物理块号的地址映射
⒒简述快表的作用。
答:提高了存取速度,使得指令执行速度大大加快
⒓简述段和页的区别。
答:分页和分段有许多相似之处,但是在概念上两者完全不通,主要表现在: ①页是信息的物理单位,分页是为了系统管理内存的方便而进行的,故对用户而言,分页是不可见的,是透明的;段是信息的逻辑单位,分段是作业逻辑上的要求,对用户而言,分段是可见的。②页的大小是固定的,由系统决定;段的大小是不固定的,由用户作业本身决定。
③从用户角度看,分页的地址空间是一维的,而段的地址空间是二维的。
⒔什么叫虚拟存储器?
答:所谓虚拟存储器,是指仅把作业的一部分装入内存便可运行作业的存储器系统。具体地说,所谓虚拟存储器是指具有请求调入功能和置换功能,能从逻辑上对内存容量进行扩充的一种存储器系统。
⒗某虚拟存储区的用户空间共32个页面,每页1KB,主存16KB。假定某时刻系统为用户的第0、1、2、3页分别分配的物理块号为5、10、4、7,将逻辑地址0A5CH和093CH变换为物理地址。答:125CH、113CH
⒘在一个分页虚拟存储管理方式中,采用LRU页面置换算法时,假如一个作业的页面走向为1、3、2、1、1、3、5、1、3、2、1、5,当分配给该作业的物理块数M分别是3和4时,试计算在访问过程中所发生的缺页次数和缺页率,并比较所得结果。
答:M是3时,缺页次数是6,缺页率是50% M是4时,缺页次数是3,缺页率是25%