当前位置:文档之家› 计算机操作系统复习资料

计算机操作系统复习资料

第一章操作系统的引论1.计算机系统的主要组成是什么?答案:一个完整的计算机系统是由硬件和软件两大部分组成的。

通常硬件是指计算机物理装置本身;而软件是相对硬件而言的,简单地说,软件是计算机执行的程序。

2.什么是操作系统(O S)?它的主要功能是什么?答:2.操作系统是控制和管理计算机系统内各种硬件和软件资源、有效地组织多道程序运行的系统软件(或程序集合),是用户与计算机之间的接口。

操作系统的主要功能包括:存储器管理,处理机管理,设备管理,文件管理以及用户接口管理。

3. 在计算机系统中操作系统处于什么地位?答: 3.操作系统是裸机之上的第一层软件。

它是整个系统的控制管理中心,既管硬件,又管软件;并为用户和其它软件提供服务。

4. 何谓脱机I/O和联机1/O?答:4.脱机I/O是指输入/输出工作不受主机直接控制,而由卫星机专门负责完成I/O,主机专门完成快速计算任务,从而两者可以并行操作。

联机I/O是指作业的输入、调入内存以及结果输出都在CPU直接控制下进行。

5. 推动操作系统形成和发展的主要动力是什么?答:5.推动操作系统形成和发展的主要动力是硬件技术的发展。

6. 操作系统主要有哪几种基本类型?各有什么特点?答:6.操作系统主要有以下几种类型:多道批处理系统、分时系统、实时系统、个人机系统、网络操作系统和分布式操作系统。

多道批处理系统的特点:·多道·成批分时系统的特点:·同时性·交互性·独立性·及时性实时系统的特点:·交互能力较弱,系统专用·响应时间更严格、及时·可靠性要求更高个人机系统的特点:·个人使用·界面友好·管理方便·适于普及网络操作系统的特点:·分布性·自治性·互连性·可见性分布式操作系统的特点:·透明性·灵活性·可靠性·高性能·可扩充性7.操作系统的基本特征是什么?答:7.操作系统的基本特征是:并发、共享和异步性。

8. 解释以下术语:硬件、软件、多道程序设计、并发、吞吐量、分时、实时。

答:8.硬件:是指计算机物理装置本身,如处理器、内存及各种设备等。

软件:它是与数据处理系统的操作有关的计算机程序、过程、规则以及相关的文档资料的总称,如Windows 98.Windows N T、UNIX以及Word等都属于软件范畴。

简单地说,软件是计算机执行的程序。

多道程序设计:在这种设计技术下,内存中能同时存放多道程序,在管理程序的控制下交替地执行。

这些作业共享CPU和系统中的其它资源。

并发:是指两个或多个活动在同一给定的时间间隔中进行。

是宏观上的概念。

吞吐量:在一段给定的时间内,计算机所能完成的总工作量。

分时:主要是指若干并发程序对CPU时间的共享。

实时:表示"及时"或"即时"。

9. 操作系统一般为用户提供了哪三种界面?各有什么特点?答:9.操作系统一般为用户提供的三种界面是:命令界面、图形界面和系统调用界面。

命令界面--在提示符之后用户从键盘上输入命令,系统提供相应服务。

图形界面--用户利用鼠标、窗口、莱单、图标等图形用户界面工具,可以直观、方便、有效地使用系统服务和各种应用程序及实用工具。

系统调用界面--用户在自己的C程序中使用系统调用,从而获取系统更基层的服务。

第二章进程管理1. 在操作系统中为什么要引入进程概念?它与程序的差别和关系是怎样的?答:1.在操作系统中,由于多道程序并发执行时共事系统资源,共同决定这些资源的状态,因此系统中各程序在执行过程中就出现了相互制约的新关系,程序的执行出现"走走停停"的新状态。

这些都是在程序的动态过程中发生的。

用程序这个静态概念已不能如实反映程序并发执行过程中的这些特征。

为此,人们引人"进程"这一概念来描述程序动态执行过程的性质。

进程与程序的主要区别是:·进程是动态的;程序是静态的。

·进程有独立性,能并发执行;程序不能并发执行。

·二者无一一对应关系。

·进程异步运行,会相互制约;程序不具备此特征。

但进程与程序又有密切的联系:进程不能脱离具体程序而虚设,程序规定了相应进程所要完成的动作。

2、PCB的作用是什么?它是怎样描述进程的动态性质的?答:2. PCB是进程组成中最关键的部分。

每个进程有推一的进程控制块;操作系统根据PCB对进程实施控制和管理,进程的动态、并发等特征是利用PCB表现出来的;PCB是进程存在的唯一标志。

PCB中有表明进程状态的信息:该进程的状态是运行态、就绪态还是阻塞态,利用状态信息来描述进程的动态性质。

3、进程的基本状态有哪几种?试描绘进程状态转换图。

答:3.进程的基本状态有运行态、就绪态和阻塞态(或等待态)。

进程状态转换图见下图。

4、用进程状态转换图(图2-20)能说明有关处理机管理的大量内容。

试回答:(1)什么事件引起每次显著的状态变迁?(2)下述状态变迁因果能否发生?为什么?(A)2→1(B)3→2(C)4→1答:4.(1)就绪-->运行:CPU空闲,就绪态进程被调度程序选中。

运行-->阻塞:运行态进程因某种条件未满足而放弃对CPU的占用,如等待读文件。

阻塞-->就绪:阻塞态进程所等待的事件发生了,例如读数据的操作完成。

运行-->就绪:正在运行的进程用完了本次分配给它的CPU时间片。

(2)下述状态变迁:(A)2-->1:可以。

运行进程用完了本次分配给它的时间片,让出CPU,从就绪队列中选一个过程投入运行。

(B)3-->2:不行。

任何时候一个进程只能处于一种状态,它既然由运行态变为阻塞态,就不能再变为就绪态。

(C)4-->1:可以。

某一阻塞态进程等待的事件出现了,而且此时就绪队列为空,该进程进入就绪队列后马上又被调度运行。

5.PCB表的组织方式主要有哪几种?分别予以简要说明。

答:5.PCB表的组织方式主要有:线性方式、链接方式和索引方式。

线性方式是把所有进程的PCB都放在一个表中。

链接方式按照进程的不同状态把它们分别放在不同的队列中。

索引方式是利用索引表记载相应状态进程的PCB地址。

6、什么是进程的互斥与同步?答:6.进程的互斥:在逻辑上本来完全独立的若干进程,由于竞争同一个资源而产生的相互制约关系。

进程的同步:是进程间共同完成一项任务时直接发生相互作用的关系,也就是说,这些具有伙伴关系的进程在执行时间次序上必须遵循确定的规律。

7、什么是临界区和临界资源?答:7.临界资源:一次仅允许一个过程使用的资源。

临界区:在每个过程中访问临界资源的那段程序。

8、是否所有的共享资源都是临界资源?为什么?答:8.不是所有的共享资源都是临界资源。

因为临界资源是一次仅允许一个过程使用的资源,而系统中有很多资源可以让多个过程同时使用,例如硬盘、正文段等。

9、简述信号量的定义和作用,信号量的物理含义。

P,V操作原语是如何定义的?答:9.信号量一般是由两个成员组成的数据结构,其中一个成员是整型变量,表示该信号量的值,它是与相应资源的使用情况有关的;另一个是指向PCB的指针。

当多个进程都等待同一信号量时,它们就排成一个队列,由信号量的指针项指出该队列的头。

信号量通常可以简单反映出相应资源的使用情况,它与P,V操作原语一起使用可实现过程的同步和互斥。

信号量S的物理含义:信号量的初始值要大于等于零.S>0表示有S个资源可用S=0表示无资源可用S<0则| S |表示S等待队列中的进程个数P,V操作原语的定义:P(S):表示申请一个资源,顺序执行下述两个动作:(1)信号量的值减1,即S= S-1;(2)如果S>0,则该进程继续执行;如果S<0,则把该进程的状态置为阻塞态,把相应的PCB连入该信号量队列的末尾,并放弃处理机,进行等待(直至其它进程在S上执行V操作,把它释放出来为止)。

V(S):表示释放一个资源,顺序执行下述两个动作:(1)S值加1,即S=S+1;(2)如果S>0,则该进程继续运行;如果S<0,则释放信号量队列上的第一个PCB(即信号量指针项所指向的PCB)所对应的进程(把阻塞态改为就绪态),执行V操作的进程继续运行。

10、设系统中只有一台打印机,有三个用户的程序在执行过程中都要使用打印机输出计算结果。

设每个用户程序对应一个进程。

问:这三个进程间有什么样的制约关系?试用P,V操作写出这些进程使用打印机的算法。

答:10.因为打印机是一种临界资源,所以这三个进程只能互斥使用这台打印机,即一个用户的计算结果打印完之后,另一个用户再打印。

设三个进程分别为A、B和c。

设一个互斥信号量mutex,其初值为1。

11、判断下列同步问题的算法是否正确?若有错,请指出错误原因并予以改正。

答:11.(1)这个算法不对。

因为A B两进程共用一个缓冲区Q,如果A先运行,且信息数量足够多,那么缓冲区Q中的信息就会发生后面的冲掉前面的,造成信息丢失,B就不能从Q中读出完整的信息。

改正:AB两进程要同步使用缓冲区Q。

为此,设立两个信号量:empty表示缓冲区Q为空,初值为1;f ull表承缓冲区Q为满,初值为0。

算法框图如图1所示。

(2)这个算法不对。

因为AB两个过程是并发的,它们共享一个临界资源,所以两者应互斥地使用该临界资源,在进入临界区时不存在A先B后的时序关系,而是哪个进程先到一步就先进入自己的临界区。

改正:AB两个过程应互斥地进入临界区。

为此,设立一个信号至:互斥信号至mutex,其初值为1。

算法框图如下图所示。

12、设有一台计算机,有两条I/O通道,分别接一台卡片输入机和一台打印机。

卡片机把一叠卡片逐一输入到缓冲区B1中,加工处理后再搬到缓冲区B2中,并在打印机上印出,问:(1)系统要设几个进程来完成这个任务?各自的工作是什么?(2)这些进程间有什么样的相互制约关系?(3)用P,V操作写出这些进程的同步算法。

答:12.(1)系统可设三个进程来完成这个任务:R进程负责从卡片输入机上读人卡片信息,输入到缓冲区B1中;C进程负责从缓冲区B1中取出信息,进行加工处理,之后将结果送到缓冲区B2中;P进程负责从缓冲区B2中取出信息,并在打印机上印出。

(2)R进程受C进程影响,B1放满信息后R进程要等待C进程将其中信息全部取走,才能继续读人信息;C进程受R进程和P进程的约束:B1中信息放满后C进程才可从中取出它们,且B2被取空后C进程才可将加工结果送入其中;P进程受C进程的约束:B2中信息放满后P进程才可从中取出它们,进行打印。

(3)信号至含义及初值:Blf ull--缓冲区B1满,初值为0;Blempty------缓冲区B1空,初值为0;B2f ull-一缓冲区B2满,初值为0;B2empty------缓冲区B2空,初值为0。

相关主题