首页 > 精品范文库 > 14号文库
计算机操作系统 课后习题答案 张尧学
编辑:紫云飞舞 识别码:23-802957 14号文库 发布时间: 2023-11-19 12:58:30 来源:网络

第一篇:计算机操作系统 课后习题答案 张尧学

第一章 绪论

1.什么是操作系统的基本功能?

答:操作系统的职能是管理和控制汁算机系统中的所有硬、软件资源,合理地组织计算

机工作流程,并为用户提供一个良好的工作环境和友好的接口。操作系统的基本功能包括:

处理机管理、存储管理、设备管理、信息管理(文件系统管理)和用户接口等。

2.什么是批处理、分时和实时系统?各有什么特征?

答:批处理系统(batchprocessingsystem):操作员把用户提交的作业分类,把一批作业编成一个作业执行序列,由专门编制的监督程序(monitor)自动依次处理。其主要特征是:用户脱机使用计算机、成批处理、多道程序运行。

分时系统(timesharingoperationsystem):把处理机的运行时间分成很短的时间片,按时间片轮转的方式,把处理机分配给各进程使用。其主要特征是:交互性、多用户同时性、独立性。

实时系统(realtimesystem):在被控对象允许时间范围内作出响应。其主要特征是:对实时信息分析处理速度要比进入系统快、要求安全可靠、资源利用率低。

3.多道程序(multiprogramming)和多重处理(multiprocessing)有何区别?

答;多道程序(multiprogramming)是作业之间自动调度执行、共享系统资源,并不是真正地同时值行多个作业;而多重处理(multiprocessing)系统配置多个CPU,能真正同时执行多道程序。要有效使用多重处理,必须采用多道程序设计技术,而多道程序设计原则上 不一定要求多重处理系统的支持。

6.设计计算机操作系统时与那些硬件器件有关

运算器、控制器、存储器、输入设备、输出设备

第二章 作业管理和用户接口

2. 作业由哪几部分组成?各有什么功能?

答:作业由三部分组成:程序、数据和作业说明书。程序和数据完成用户所要求的业务处理工作,作业说明书则体现用户的控制意图。

3.作业的输入方式有哪几种?各有何特点

答:作业的输入方式有5种:联机输入方式、脱机输入方式、直接耦合方式、SPOOLING

(Simultaneous Peripheral OperationsOnline)系统和网络输入方式,各有如下特点:

(1)联机输入方式:用户和系统通过交互式会话来输入作业。

(2)脱机输入方式:又称预输入方式,利用低档个人计算机作为外围处理机进行输入处理,存储在后备存储器上,然后将此后援存储器连接到高速外围设备上和主机相连,从而在较短的时间内完成作业的输入工作。

(3)直接耦合方式:把主机和外围低档机通过一个公用的大容量外存直接耦合起来,从而省去了在脱机输入中那种依靠人工干预宋传递后援存储器的过程。

(4)SPOOLING系统:可译为外围设备同时联机操作。在SPOOLING系统中,多台外围设备通过通道或DMA器件和主机与外存连接起来,作业的输入输出过程由主机中的操作系统控制。

(5)网络输入方式:网络输入方式以上述几种输入方式为基础,当用户需要把在计算机网络中某一台主机上输入的信息传送到同一网中另一台主机上进行操作或执行时,就构成了网络输入方式。4.试述spooling系统的工作原理

6.操作系统为用户提供哪些接口?它们的区别是什么?

答:操作系统为用户提供两个接口,一个是系统为用户提供的各种命令接口,用户利用这些操作命令来组织和控制作业的执行或管理计算机系统。另一个接口是系统调用,编程人员使用系统调用来请求操作系统提供服务,例如申请和释放外设等类资源、控制程序的执行速度等。

8.什么是系统调用?系统调用与一般用户程序有什么区别?与库函数和实用程序又有什么区别?

答:系统调用是操作系统提供给编程人员的唯一接口。编程人员利用系统调用,在源程序一级动态请求和释放系统资源,调用系统中已有的系统功能 来完成那些与机器硬件部分相关的工作以及控制程序的执行速度等。因此,系统调用像一个黑箱子那样,对用户屏蔽了操作系统的具体动作而只提供有关的功能。它 与一般用户程序、库函数和实用程序的区别是:系统调用程序是在核心态执行,调用它们需要一个类似于硬件中断处理的中断处理机制来提供系统服务。

9.简述系统调用的实现过程。

答;用户在程序中使用系统调用,给出系统凋用名和函数后,即产生一条相应的陷入指令,通过陷入处理机制调用服务,引起处理机中断,然后保护处理机现场,取系统调用功能号并寻找子程序入口,通过入口地址表来调用系统子程序,然后返回用户程序继续执行。

第三章 用户管理和配置管理

2.试比较进程和程序的区别。

答:(1)进程是一个动态概念,而程序是一个静态概念,程序是指令的有序集合,无执行含义,进程则强调执行的过程。

(2)进程具有并行特征(独立性,异步性),程序则没有。

(3)不同的进程可以包含同一个程序,同一程序在执行中也可以产生多个进程。

4.试比较作业和进程的区别。

答:一个进程是一个程序对某个数据集的执行过程,是分配资源的基本单位。作业是用于需要计算机完成某项任务,而要求计算机所做工作的集合。一个作业的完成要经过作业提交,作业收容、作业执行和作业完成4个阶段。而进程是已提交完毕的程序所执行过程的描述,足资源分配的基本单位。其主要区别关 系如下:

(1)作业是用户向计算机提交任务的任务实体。在用户向计算机提交作业之后,系统将存储在外存中的作业等待队列中等待执行。而进程则是完成用户任务的执行实体,是向系统申请分配资源的基本单位。任一进程,只要它被创建,总有相应的部分存在于内存中。

(2)一个作业可由多个进程组成。且必须至少由一个进程组成,但反过来不成立。

(3)作业的概念主要用在批处理系统中。像Unix这样的分时系统中,则没有作业概念。而进程的概念则用在几乎所有的多道程序系统中。

6.什么是临界区?试举一临界区的例子。

答:临界区是指不允许多个并发进程交叉执行的一段程序。它是由于不同并发进程的程序段共享公用数据或公用数据变量而引起的。所以它又被称为访问公用数据的那段程序。

例如:

getspace:

Begin local g

top=top-1

End

release(ad):

Begin

top’top十1

stack[top]=ad

End

8.什么是进程间的互斥?什么是进程间同步? 3

答:进程间的互斥是指:一组并发进程中的一个或多个程序段,因共享某一公有资源而导致它们必须以一个不许交叉执行的单位执行,即不允许两个以上的共享该资源的并发进程同时进入临界区。

进程间的同步是指:异步环境下的一组并发进程因直接制约互相发送消息而进行互相合作、互相等待,各进程按一定的速度执行的过程。

15.什么是线程?试述线程与进程的区别,答;线程是在进程内用于调度和占有处理机的基本单位,它由线程控制表、存储线程上下文的用户栈以及核心栈组成。线程可分为用户级线程、核心级线程以及用户/核心混合型线程等类型。其中用户级线程在用户态下执行,CPU调度算法和各线程优先级都由用户设置,与操作系统内核无关。核心级线程的调度算法及线程优先级的控制权在操作系统内核。混合型线程的控制权则在用户和操作系统内核二者。线程与进程的主要区别有:

(1)进程是资源管理的基本单位,它拥有自己的地址空间和各种资源,例如内存空间、外部设备等;线程只是处理机调度的基本单位,它只和其他线程一起共享进程资源,但自己没有任何资源。

(2)以进程为单位进行处理机切换和调度时,由于涉及到资源转移以及现场保护等问题,将导致处理机切换时间变长,资源利用率降低。以线程为单位进行处理机切换和调度时,由于不发生资源变化,特别是地址空间的变化,处理机切换的时间较短,从而处理机效率也较高。

(3)对用户来说,多线程可减少用户的等待时间。提高系统的响应速度。例如,当一个进程需要对两个不同的服务器进行远程过程凋用时,对于无线程系统的操作系统来说需要顺序等待两个不同调用返回结果后才能继续执行,且在等待中容易发生进程调度。对于多线程系统而言,则可以在同一进程中使用不同的线程同时进行远程过程调用,从而缩短进程的等待时间。

(4)线程和进程一样,都有自己的状态.也有相应的同步机制,不过,由于线程没有单独的数据和程序空间,因此,线程不能像进程的数据与程序那样,交换到外存存储空间。从而线程没有挂起状态。

(5)进程的调度、同步等控制大多由操作系统内核完成,而线程的控制既可以由操作系统内核进行,也可以由用户控制进行。第四章 进程管理

2.试述作业调度的主要功能。

答: 作业调度的主要功能是:按一定的原则对外存输入井上的大量后备作业进行选择,给选出的作业分配内存、输入输出设备等必要的资源,并建立相应进程,使该作业的相关进程获得竞争处理机的权利。另外,当作业执行完

毕时,还负责回收系统资源。3.作业调度的性能评价标准有哪些?这些性能评价标准在任何情况下都能反映调度策略的优劣吗? 答:对于批处理系统,由于主要用于计算,因而对于作业的周转时间要求较高。从而作业的平均周转时间或平均带权周转时间被用来衡量调度程序的优劣。但对于分时系统来说,平均响应时间又被用来衡量调度策略的优劣。对于分时系统,除了要保证系统吞吐量大、资源利用率高之外,还应保证用户能够容忍的响应时间。因此,在分时系统中,仅仅用周转时间或带权周转时间来衡量调度性能是不够的。对于实时系统,衡量调度算法优劣的主要标志则是满足用户要求的时限时间。

4.进程调度的功能有哪些?

答:进程调度的功能有:

(1)记录和保存系统中所有进程的执行情况;

(2)选择占有处理机的进程;

(3)进行进程上下文切换。5.进程调度的时机有哪几种?

答:进程调度的时机有:

(1)正在执行的进程执行完毕。这时如果不选择新的就绪进程执行,将浪费处理机资源。

(2)执行中进程自己调用阻塞原语将自己阻塞起来进入睡眠等待状态。

(3)执行中进程调用了P原语操作,从而因资源不足而被阻塞:或调用了V原语操作激活了等待资源的进程队列。

(4)执行中进程提出I/O请求后被阻塞。

(5)在分时系统中时间片已经用完。

(6)在执行完系统调用等系统程序后返回用户程序时,可看做系统进程执行完毕,从而调度选择一新的用户进程执行。

(7)在CPU执行方式是可剥夺时,还有:就绪队列中的某进程的优先级变得高于当前执行进程的优先级,从而也将引发进 程调度。

6.进程上下文切换由哪几部分组成?描述进程上下文切换过程。

答:进程上下文切换由以下4个步骤组成;

(1)决定是否作上下文切换以及是否允许作上下文切换。包括对进程调度原因的检查分析,以及当前执行进程的资格和CPU执行方式的检查等。在操作系统中,上下文切换程序并不是每时每刻都在检查和分析是否可作上下文切换,它们设置有适当的时机。

(2)保存当前执行进程的上下文。这里所说的当前执行进程,实际上是指调用上下文切换程序之前的执行进程。如果上下文切换不是被那个当前执行进程所调用,且不属于该进程,则所保存的上下文应是先前执行进程的上下文,或称为“老”进程上下文。显然,上下文切换程序不能破坏“老”进程的上下文结构。(3)使用进程调度算法,选择一处于就绪状态的进程。

(4)恢复或装配所选进程的上下文,将CPU控制权交到所选进程手中。

第五章 处理器管理

2.什么是虚拟存储器?其特点是什么? 答:由进程中的目标代码、数据等的虚拟地址组成的虚拟空间称为虚拟存储器。虚拟存储器不考虑物理存储器的大小和信息存放的实际位置,只规定每个进程中相互关联信息的相对位置。每个进程都拥有自己的虚拟存储器,且虚拟存储

器的容量是由计算机的地址结构和寻址方式来确定。实现虚拟存储器要求有相应的地址转换机构,以便把指令的虚拟地址变换为实际物理地址;另外,由于内存空间较小,进程只有部分内容存放于内存中,待执行时根据需要再调指令入内存。3.实现地址重定位的方法有哪几类?

答:实现地址重定位的方法有两种:静态地址重定位和动态地址重定位。

(1)静态地址重定位是在虚空间程序执行之前由装配程序完成地址映射工作。静态重定位的优点是不需要硬件支持,但是用静态地址重定位方法进行地址变换无法实现虚拟存储器。静态重定位的另一个缺点是必须占用连续的内存空间和难以做到程序和数据的共享。

(2)动态地址重定位是在程序执行过程中,在CPU访问内存之前由硬件地址变换机构将要访问的程序或数据地址转换成内存地址。动态地址重定位的主要优点有:

①可以对内存进行非连续分配。

②动态重定位提供了实现虚拟存储器的基础。

③动态重定位有利于程序段的共享。

形式化描述:略。

6.动态分区式管理的常用内存分配算法有哪几种?比较它们各自的优缺点。

答:动态分区式管理的常用内存分配算法有最先适应法(FF)、最佳适应法(BF)和最坏适应法(WF)。

优缺点比较:

①从搜索速度上看最先适应法最佳,最佳适应法和最坏适应法都要求把不同大小的空闲区按大小进行排队。

②从回收过程来看,最先适应法也是最佳,因为最佳适应法和最坏适应法都必须重新调整空闲区的位置。

③最佳适应法找到的空闲区是最佳的,但是会造成内存碎片较多,影响了内存利用率,而最坏适应法的内存碎片最少,但是对内存的请求较多的进程有可能分配失败。

总之,三种算法各有所长,针对不同的请求队列,它们的效率和功能是不一样的7.5.3节讨论的分区式管理可以实现虚存吗?如果不能,需要怎样修改?试设计一个分区式管理实现虚存的程序流程图。如果能,试说明理由。

答:5.3节讨论的分区式管理不能实现虚存。如果要实现虚存,可以在分区的基础之上对每个分区内部进行请求调页式管理。

8.简述什么是覆盖?什么是交换?覆盖和交换的区别是什么? 答:将程序划分为若干个功能上相对独立的程序段,按照程序的逻辑结构让那些不会同时执行的程序段共享同一块内存区的内存扩充技术就是覆盖。交换是指先将内存某部分的程序或数据写入外存交换区,再从外存交换区中调入指定的程序或数据到内存中来,并让其执行的一种内存扩充技术。与覆盖技术相比,交换不要求程序员给出程序段之间的覆盖结构,而且,交换主要是在进程或作业之间进行,而覆盖则主要在同一个作业或同一个进程内进行。另外,覆盖只能覆盖那 些与覆盖程序段无关的程序段。

9.什么是页式管理?静态页式管理可以实现虚存吗? 答:页式管理就是把各进程的虚拟空间划分为若干长度相等的页面,把指令按页面大小划分后存放在内存中执行或只在内存中存放那些经常被执行或即将被执行的页面,而那些不被经常执行以及在近期内不可能被执行的页面则存放于外存中,按一定规则调入的一种内存管理方式。

静态页式管理不能实现虚存,这是因为静态页式管理要求进程或作业在执行前全部被装入内存,作业或进程的大小仍受内存可用页面数的限制。

11.请求页式管理中有哪几种常用的页面置换算法?试比较它们的优缺点。

答:比较常用的页面置换算法有:

(1)随机淘汰算法(randomglongram)。即随机地选择某个用户页面并将其换出。

(2)轮转法RR(roundrobin)。轮转法循回换出内存可用区内一个可以被换出的页,无论该页是刚被换进或已经换进内存很长时间。

(3)先进先出法FIFO(firstinfirstout)。FIFO算法选择在内存驻留时间最长的一页将其淘汰。

(4)最近最久未使用页面置换算法I.RU(1east recently unused)。该算法的基本思想是:当需要淘汰某一页时,选择离当前时间最近的一段时间内最久没有使用过的页面先淘汰。

(5)理想型淘汰算法OPT(optimalreplacementalgorithm)。该算法淘汰在访问串中将来再也不出现的或是在离当前最远的位置上出现的页面。15.段式管理可以实现虚存吗?如果可以,简述实现方法。

答:段式管理可以实现虚存。

段式管理把程序按照内容或过程(函数)关系分成段,每段拥有自己的名字。一个用户作业或进程所包含的段对应于—个二维线性虚拟空间(段号s与段内相对地址w),也就是一个二维虚拟存储器。段式管理以段为单位分配内存,然后通过地址映射机构把段式虚拟地址转换成实际的内存物理地址。只把那些经常访问的段驻留内存,而把那些在将来一段时间内不被访问的段放入外存,待需要时产生缺段中断,自动调入。

18.段页式管理的主要缺点是什么?有什么改进办法? 答:段页式管理的主要缺点是对内存中指令或数据进行存取时,至少需要对内存进行三次以上的访问。第一次是由段表地址寄存器取段表始址后访问段表,由此取出对应段的页表在内存中的地址。第二次则是访问页表得到所要访问的指令或数据的物理地址。只有在访问了段表和页表之后,第三次才能访问真正需要访问的物理单元。显然。这将大大降低CPU执行指令的速度。改进办法是设置快速联想寄存器。在快速联想寄存器中.存放当前最常用的段号s,页号p和对应的内存页面地址与其他控制项。当需要访问内存空间某一单元时,可在通过段表、页表进行内存地址查找的同时,根据快速联想寄存器查找其段号和页号。如果所要访问的段或页的地址在快速联想寄存器中,则系统不再访问内存中的段表、页表而直接把快速联想寄存器中的值与页内相对地址d拼接起来得到内存地址。

19.什么是局部性原理?什么是抖动?你有什么办法减少系统的抖动现象? 答:局部性原理是指在几乎所有程序的执行过程中,在一段时间内,CPU总是集中地访问程序中的某—个部分而不是对程序的所有部分具有平均的访问概率。抖动是指当给进程分配的内存小于所要求的工作区时,由于内存外存之间交换频繁,访问外存的时间和输入输出处理时间大大增加,反而造成CPU因等待数据而空转,使得整个系统性能大大下降。在物理系统中,为防止抖动的产生,在进行淘汰或替换时,—般总是把缺页进程锁住,不让其换出,从而防止抖动发生。防止抖动发生的另一个办法是设置较大的内存工作区。

第八章 文件系统

1.什么是文件、文件系统?文件系统有哪些功能?

答:在计算机系统中,文件被解释为一组赋名的相关字符流的集合,或者是相关记录的集合。

文件系统是操作系统中与管理文件有关的软件和数据。

文件系统的功能是用户建立文件,撤销、读写修改和复制文件,以及完成对文件的按名存取和进行存取控制。

2.文件系统一般按什么分类?可以分为哪几类?

答:文件系统一般按性质、用途、组织形式、文件中的信息流向或文件的保护级别等分类。

按文件的性质与用途可以分为系统文件、库文件和用户文件。按文件的组织形式可以分为普通文件、目录文件和特殊文件。按文件中的信息流向可以分为输入文件、输出文件和输入/输出文件。按文件的保护级别可以分为只读文件、读写文件、可执行文件和不保护文件。3.什么是文件的逻辑结构?什么是记录?

答:文件的逻辑结构就是用户可见的结构,可分为字符流式的无结构文件和记录式的有结构文件两大类。

记录是一个具有特定意义的信息单位,它由该记录在文件中的逻辑地址(相对地址)与记录名所对应的一组关键字、属性及其属性值所组成。

7.文件的物理结构有哪几种?为什么说串联文件结构不适于随机存取?

答:文件的物理结构是指文件在存储设备上的存放方法。常用的文件物理结构有连续文件、串联文件和索引文件3种。串联文件结构用非连续的物理块来存放文件信息,这些非连续的物理块之间没有顺序关系,链接成一个串联队列,搜索时只能按队列中的串联指针顺序搜索,存取方法应该是顺序存取的。否则,为了读取某个信息块而造成的磁头大幅度移动将花去较多的时间。因此,串联文件结构不适于随机存取 11.什么是文件目录?文件目录中包含哪些信息?

答:一个文件的文件名和对该文件实施控制管理的说明信息称为该文件的说明信息,又称为该文件的目录。

文件目录中包含文件名、与文件名相对应的文件内部标识以及文件信息在文件存储设备上第一个物理块的地址等信息。另外还可能包含关于文件逻辑结构、物理结构、存取控制和管理等信息。第九章 外部设备管理

1.设备管理的目标和功能是什么? 答:设备管理的目标是:选择和分配输入/输出设备以便进行数据传输操作;控制输入/输出设备和CPU(或内存)之间交换数据,为用户提供一个友好的透明接口,提高设备和设备之间、CPU和设备之间,以及进程和进程之间的并行操作,以使操作系统获得最佳效率。设备管理的功能是:提供和进程管理系统的接口;进行设备分配;实现设备和设备、设备和CPU等之间的并行操作;进行缓冲区管理。

4. 什么是中断?什么叫中断处理?什么叫中断响应?

答: 中断是指计算机在执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的事件处理程序,待处理 完毕后又返回原来被中断处继续执行的过程。CPU转去执行相应的事件处理程序的过程称为中断处理。CPU收到中断请求后转到相应的事件处理程序称为中断响 应。

5.什么叫关中断?什么叫开中断?什么叫中断屏蔽?

答:把CPU内部的处理机状态字PSW的中断允许位清除从而不允许CPU响应中断叫做关中断。设置CPU内部的处理机状态字PSW的中断允许位从而允许CPU响应中断叫做开中断。

中断屏蔽是指在中断请求产生之后,系统用软件方式有选择地封锁部分中断而允许其余部分的中断仍能得到响应。

6.什么是陷阱?什么是软中断?试述中断、陷阱和软中断之间异同。

答:陷阱指处理机和内存内部产生的中断,它包括程序运算引起的各种错误,如地址非法、校验错、页面失效。存取访问控制错、从用户态到核心态的切换等都是陷阱的例子。软中断是通信进程之间用来模拟硬中断的一种信号通信方式。

7.描述中断控制方式时的CPU动作过程。答:(1)首先,CPU检查响应中断的条件是否满足。如果中断响应条件不满足,则中断处理无法进行。

(2)如果CPU响应中断,则CPU关中断。(3)保存被中断进程现场。(4)分析中断原因,调用中断处理子程序。(5)执行中断处理子程序。(6)退出中断,恢复被中断进程的现场或调度新进程占据处理机。(7)开中断,CPU继续执行。8.什么是缓冲?为什么要引入缓冲? 答:缓冲即是使用专用硬件缓冲器或在内存中划出一个区域用来暂时存放输入输出数据的器件。引入缓冲是为了匹配外设和CPU之间的处理速度,减少中断次数和CPU的中断处理时间,同时解决DMA或通道方式时的数据传输瓶颈问题。

第二篇:张尧学-操作系统课后题答案

第一章 绪论

1.什么是操作系统的基本功能?

答:操作系统的职能是管理和控制汁算机系统中的所有硬、软件资源,合理地组织计算

机工作流程,并为用户提供一个良好的工作环境和友好的接口。操作系统的基本功能包括:

处理机管理、存储管理、设备管理、信息管理(文件系统管理)和用户接口等。

2.什么是批处理、分时和实时系统?各有什么特征?

答:批处理系统(batchprocessingsystem):操作员把用户提交的作业分类,把一批作业编成一个作业执行序列,由专门编制的监督程序(monitor)自动依次处理。其主要特征是:用户脱机使用计算机、成批处理、多道程序运行。

分时系统(timesharingoperationsystem):把处理机的运行时间分成很短的时间片,按时间片轮转的方式,把处理机分配给各进程使用。其主要特征是:交互性、多用户同时性、独立性。

实时系统(realtimesystem):在被控对象允许时间范围内作出响应。其主要特征是:对实时信息分析处理速度要比进入系统快、要求安全可靠、资源利用率低。

3.多道程序(multiprogramming)和多重处理(multiprocessing)有何区别?

答;多道程序(multiprogramming)是作业之间自动调度执行、共享系统资源,并不是真正地同时值行多个作业;而多重处理(multiprocessing)系统配置多个CPU,能真正同时执行多道程序。要有效使用多重处理,必须采用多道程序设计技术,而多道程序设计原则上 不一定要求多重处理系统的支持。

6。设计计算机操作系统时与那些硬件器件有关

运算器、控制器、存储器、输入设备、输出设备

第二章 作业管理和用户接口

2. 作业由哪几部分组成?各有什么功能?

答:作业由三部分组成:程序、数据和作业说明书。程序和数据完成用户所要求的业务处理工作,作业说明书则体现用户的控制意图。

3.作业的输入方式有哪几种?各有何特点

答:作业的输入方式有5种:联机输入方式、脱机输入方式、直接耦合方式、SPOOLING

(Simultaneous Peripheral OperationsOnline)系统和网络输入方式,各有如下特点:

(1)联机输入方式:用户和系统通过交互式会话来输入作业。

(2)脱机输入方式:又称预输入方式,利用低档个人计算机作为外围处理机进行输入处理,存储在后备存储器上,然后将此后援存储器连接到高速外围设备上和主机相连,从而在较短的时间内完成作业的输入工作。

(3)直接耦合方式:把主机和外围低档机通过一个公用的大容量外存直接耦合起来,从而省去了在脱机输入中那种依靠人工干预宋传递后援存储器的过程。

(4)SPOOLING系统:可译为外围设备同时联机操作。在SPOOLING系统中,多台外围设备通过通道或DMA器件和主机与外存连接起来,作业的输入输出过程由主机中的操作系统控制。

(5)网络输入方式:网络输入方式以上述几种输入方式为基础,当用户需要把在计算机网络中某一台主机上输入的信息传送到同一网中另一台主机上进行操作或执行时,就构成了网络输入方式。

6.操作系统为用户提供哪些接口?它们的区别是什么?

答:操作系统为用户提供两个接口,一个是系统为用户提供的各种命令接口,用户利用这些操作命令来组织和控制作业的执行或管理计算机系统。另一个接口是系统调用,编程人员使用系统调用来请求操作系统提供服务,例如申请和释放外设等类资源、控制程序的执行速度等。

8.什么是系统调用?系统调用与一般用户程序有什么区别?与库函数和实用程序又有什么区别?

答:系统调用是操作系统提供给编程人员的唯一接口。编程人员利用系统调用,在源程序一级动态请求和释放系统资源,调用系统中已有的系统功能 来完成那些与机器硬件部分相关的工作以及控制程序的执行速度等。因此,系统调用像一个黑箱子那样,对用户屏蔽了操作系统的具体动作而只提供有关的功能。它 与一般用户程序、库函数和实用程序的区别是:系统调用程序是在核心态执行,调用它们需要一个类似于硬件中断处理的中断处理机制来提供系统服务。

9.简述系统调用的实现过程。

答;用户在程序中使用系统调用,给出系统凋用名和函数后,即产生一条相应的陷入指令,通过陷入处理机制调用服务,引起处理机中断,然后保护处理机现场,取系统调用功能号并寻找子程序入口,通过入口地址表来调用系统子程序,然后返回用户程序继续执行。

第三章 用户管理和配置管理

2.试比较进程和程序的区别。

答:(1)进程是一个动态概念,而程序是一个静态概念,程序是指令的有序集合,无执行含义,进程则强调执行的过程。

(2)进程具有并行特征(独立性,异步性),程序则没有。

(3)不同的进程可以包含同一个程序,同一程序在执行中也可以产生多个进程。

4.试比较作业和进程的区别。

答:一个进程是一个程序对某个数据集的执行过程,是分配资源的基本单位。作业是用于需要计算机完成某项任务,而要求计算机所做工作的集合。一个作业的完成要经过作业提交,作业收容、作业执行和作业完成4个阶段。而进程是已提交完毕的程序所执行过程的描述,足资源分配的基本单位。其主要区别关 系如下:

(1)作业是用户向计算机提交任务的任务实体。在用户向计算机提交作业之后,系统将存储在外存中的作业等待队列中等待执行。而进程则是完成用户任务的执行实体,是向系统申请分配资源的基本单位。任一进程,只要它被创建,总有相应的部分存在于内存中。

(2)一个作业可由多个进程组成。且必须至少由一个进程组成,但反过来不成立。

(3)作业的概念主要用在批处理系统中。像Unix这样的分时系统中,则没有作业概念。而进程的概念则用在几乎所有的多道程序系统中。

6.什么是临界区?试举一临界区的例子。

答:临界区是指不允许多个并发进程交叉执行的一段程序。它是由于不同并发进程的程序段共享公用数据或公用数据变量而引起的。所以它又被称为访问公用数据的那段程序。

例如:

getspace:

Begin local g

top=top-1

End

release(ad):

Begin

top’top十1

stack[top]=ad

End

8.什么是进程间的互斥?什么是进程间同步?

答:进程间的互斥是指:一组并发进程中的一个或多个程序段,因共享某一公有资源而导致它们必须以一个不许交叉执行的单位执行,即不允许两个以上的共享该资源的并发进程同时进入临界区。

进程间的同步是指:异步环境下的一组并发进程因直接制约互相发送消息而进行互相合作、互相等待,各进程按一定的速度执行的过程。

第四章 进程管理

4.进程调度的功能有哪些?

答:进程调度的功能有:

(1)记录和保存系统中所有进程的执行情况;

(2)选择占有处理机的进程;

(3)进行进程上下文切换。

5.进程调度的时机有哪几种?

答:进程调度的时机有:

(1)正在执行的进程执行完毕。这时如果不选择新的就绪进程执行,将浪费处理机资源。

(2)执行中进程自己调用阻塞原语将自己阻塞起来进入睡眠等待状态。

(3)执行中进程调用了P原语操作,从而因资源不足而被阻塞:或调用了V原语操作激活了等待资源的进程队列。

(4)执行中进程提出I/O请求后被阻塞。

(5)在分时系统中时间片已经用完。

(6)在执行完系统调用等系统程序后返回用户程序时,可看做系统进程执行完毕,从而调度选择一新的用户进程执行。

(7)在CPU执行方式是可剥夺时,还有:就绪队列中的某进程的优先级变得高于当前执行进程的优先级,从而也将引发进 程调度。

第五章 处理器管理

3.实现地址重定位的方法有哪几类?

答:实现地址重定位的方法有两种:静态地址重定位和动态地址重定位。

(1)静态地址重定位是在虚空间程序执行之前由装配程序完成地址映射工作。静态重定位的优点是不需要硬件支持,但是用静态地址重定位方法进行地址变换无法实现虚拟存储器。静态重定位的另一个缺点是必须占用连续的内存空间和难以做到程序和数据的共享。

(2)动态地址重定位是在程序执行过程中,在CPU访问内存之前由硬件地址变换机构将要访问的程序或数据地址转换成内存地址。动态地址重定位的主要优点有:

①可以对内存进行非连续分配。

②动态重定位提供了实现虚拟存储器的基础。

③动态重定位有利于程序段的共享。

形式化描述:略。

6.动态分区式管理的常用内存分配算法有哪几种?比较它们各自的优缺点。

答:动态分区式管理的常用内存分配算法有最先适应法(FF)、最佳适应法(BF)和最坏适应法(WF)。

优缺点比较:

①从搜索速度上看最先适应法最佳,最佳适应法和最坏适应法都要求把不同大小的空闲区按大小进行排队。

②从回收过程来看,最先适应法也是最佳,因为最佳适应法和最坏适应法都必须重新调整空闲区的位置。

③最佳适应法找到的空闲区是最佳的,但是会造成内存碎片较多,影响了内存利用率,而最坏适应法的内存碎片最少,但是对内存的请求较多的进程有可能分配失败。

总之,三种算法各有所长,针对不同的请求队列,它们的效率和功能是不一样的。

8.简述什么是覆盖?什么是交换?覆盖和交换的区别是什么?

答:将程序划分为若干个功能上相对独立的程序段,按照程序的逻辑结构让那些不会同时执行的程序段共享同一块内存区的内存扩充技术就是覆盖。交换是指先将内存某部分的程序或数据写入外存交换区,再从外存交换区中调入指定的程序或数据到内存中来,并让其执行的一种内存扩充技术。与覆盖技术相比,交换不要求程序员给出程序段之间的覆盖结构,而且,交换主要是在进程或作业之间进行,而覆盖则主要在同一个作业或同一个进程内进行。另外,覆盖只能覆盖那 些与覆盖程序段无关的程序段。

11.请求页式管理中有哪几种常用的页面置换算法?试比较它们的优缺点。

答:比较常用的页面置换算法有:

(1)随机淘汰算法(randomglongram)。即随机地选择某个用户页面并将其换出。

(2)轮转法RR(roundrobin)。轮转法循回换出内存可用区内一个可以被换出的页,无论该页是刚被换进或已经换进内存很长时间。

(3)先进先出法FIFO(firstinfirstout)。FIFO算法选择在内存驻留时间最长的一页将其淘汰。

(4)最近最久未使用页面置换算法I.RU(1east recently unused)。该算法的基本思想是:当需要淘汰某一页时,选择离当前时间最近的一段时间内最久没有使用过的页面先淘汰。

(5)理想型淘汰算法OPT(optimalreplacementalgorithm)。该算法淘汰在访问串中将来再也不出现的或是在离当前最远的位置上出现的页面。

第九章 外部设备管理

4. 什么是中断?什么叫中断处理?什么叫中断响应?

答: 中断是指计算机在执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的事件处理程序,待处理 完毕后又返回原来被中断处继续执行的过程。CPU转去执行相应的事件处理程序的过程称为中断处理。CPU收到中断请求后转到相应的事件处理程序称为中断响 应。

5.什么叫关中断?什么叫开中断?什么叫中断屏蔽?

答:把CPU内部的处理机状态字PSW的中断允许位清除从而不允许CPU响应中断叫做关中断。设置CPU内部的处理机状态字PSW的中断允许位从而允许CPU响应中断叫做开中断。

中断屏蔽是指在中断请求产生之后,系统用软件方式有选择地封锁部分中断而允许其余部分的中断仍能得到响应。

7.描述中断控制方式时的CPU动作过程。

答:(1)首先,CPU检查响应中断的条件是否满足。如果中断响应条件不满足,则中断处理无法进行。

(2)如果CPU响应中断,则CPU关中断。

(3)保存被中断进程现场。

(4)分析中断原因,调用中断处理子程序。

(5)执行中断处理子程序。

(6)退出中断,恢复被中断进程的现场或调度新进程占据处理机。

(7)开中断,CPU继续执行。

第三篇:操作系统习题解答 (张尧学)

第一章

1.什么是操作系统的基本功能? 答:操作系统的职能是管理和控制计算机系统中的所有硬、软件资源,合理地组织计算机工作流程,并为用户提供一个良好的工作环境和友好的接口。操作系统的基本功能包括:处理机管理、存储管理、设备管理、信息管理(文件系统管理)和用户接口等。

2.什么是批处理、分时和实时系统?各有什么特征? 答:批处理系统(batch processingsystem):操作员把用户提交的作业分类,把一批作业编成一个作业执行序列,由专门编制的监督程序(monitor)自动依次处理。其主要特征是:用户脱机使用计算机、成批处理、多道程序运行。

分时系统(time sharing operation system):把处理机的运行时间分成很短的时间片,按时间片轮转的方式,把处理机分配给各进程使用。其主要特征是:交互性、多用户同时性、独立性。

实时系统(real time system):在被控对象允许时间范围内作出响应。其主要特征是:对实时信息分析处理速度要比进入系统快、要求安全可靠、资源利用率低。

3. 多道程序设计和多重处理有何区别? 答;多道程序(multiprogramming)是作业之间自动调度执行、共享系统资源,并不是真正地同时执行多个作业;而多重处理(multiprocessing)系统配置多个CPU,能真正同时执行多道程序。要有效使用多重处理,必须采用多道程序设计技术,而多道程序设计原则上不一定要求多重处理系统的支持。

4. 讨论操作系统可以从哪些角度出发,如何把它们统一起来?

答;讨论操作系统可以从以下角度出发:(1)操作系统是计算机资源的管理者;(2)操作系统为用户提供使用计算机及界面;(3)用进程管理观点研究操作系统,即围绕进程运行过程来讨论操作系统。

上述这些观点彼此并不矛盾,分别代表了从不同角度对同一事物(操作系统)的观点。每种观点都有助于理解、分析和设计操作系统。

6. 设计计算机操作系统与哪些硬件器件有关? 答;计算机操作系统的重要功能之一是对硬件资源的管理。因此设计计算机操作系统时应考虑下述计算机硬件资源:(1)CPU与指令的长度与执行方式;(2)内存、缓存和高速缓存等存储装置;(3)各类寄存器,包括各种通用寄存器、控制寄存器和状态寄存器;(4)中断机构;(5)外部设备与I/O控制装置;(6)内部总线与外部总线;(7)对硬件进行操作的指令集。第二章

1.什么是作业?作业步? 答:把在一次应用业务处理过程中,从输入开始到输出结束,用户要求计算机所做的有关该次业务处理的全部工作称为一个作业。作业由不同的顺序相连的作业步组成。作业步是在一个作业的处理过程中,计算机所做的相对独立的工作。如,编辑输入是一个作业步,它产生源程序文件;编译也是一个作业步,它产生目标代码文件。

2.作业由哪几部分组成? 各有什么功能? 答:作业由三部分组成:程序、数据和作业说明书。程序和数据完成用户所要求的业务处理工作,作业说明书则体现用户的控制意图。

3.作业的输入方式有哪几种?各有何特点

答:作业的输入方式有5种:联机输入方式、脱机输入方式、直接耦合方式、SPOOLING(Simultaneous Peripheral Operations Online)系统和网络输入方式,各有如下特点:

(1)联机输入方式:用户和系统通过交互式会话来输入作业。(2)脱机输入方式:又称预输入方式,利用低档个人计算机作为外围处理机进行输入处理,存储在后备存储器上,然后将此后援存储器连接到高速外围设备上和主机相连,从而在较短的时间内完成作业的输入工作。(3)直接耦合方式:把主机和外围低档机通过一个公用的大容量外存直接耦合起来,从而省去了在脱机输入中那种依靠人工干预来传递后援存储器的过程。(4)SPOOLING系统:可译为外围设备同时联机操作。在SPOOLING系统中,多台外围设备通过通道或DMA器件和主机与外存连接起来,作业的输入输出过程由主机中的操作系统控制。(5)网络输入方式:网络输入方式以上述几种输入方式为基础,当用户需要把在计算机网络中某一台主机上输入的信息传送到同一网中另一台主机上进行操作或执行时,就构成了网络输入方式。

4.试述SPOOLING系统的工作原理。

答:在SPOOLING系统中,多台外围设备通过通道或DMA器件和主机与外存连接起来,作业的输入输出过程由主机中的操作系统控制。操作系统中的输入程序包含两个独立的过程,一个过程负责从外部设备把信息读入缓冲区,另一个过程是写过程,负责把缓冲区中的信息送入到外存输入井中。

在系统输入模块收到作业输入请求后,输入管理模块中的读过程负责将信息从输入装置读入缓冲区。当缓冲区满时,由写过程将信息从缓冲区写到外存输入井中。读过程和写过程反复循环,直到一个作业输入完毕。当读过程读到一个硬件结束标志后,系统再次驱动写过程把最后一批信息写入外存并调用中断处理程序结束该次输入。然后,系统为该作业建立作业控制块JCB,从而使输入井中的作业进入作业等待队列,等待作业调度程序选中后进入内存。5.操作系统为用户提供哪些接口?它们的区别是什么? 答:操作系统为用户提供两个接口,一个是系统为用户提供的各种命令接口,用户利用这些操作命令来组织和控制作业的执行或管理计算机系统。另一个接口是系统调用,编程人员使用系统调用来请求操作系统提供服务,例如申请和释放外设等类资源、控制程序的执行速度等。

6.作业控制方式有哪几种?调查你周围的计算机的作业控制方式。

答:作业控制的主要方式有两种:脱机方式和联机方式。脱机控制方式利用作业控制语言来编写表示用户控制意图的作业控制程序,也就是作业说明书。作业控制语言的语句就是作业控制命令。不同的批处理系统提供不同的作业控制语言。

联机控制方式不同于脱机控制方式,它不要求用户填写作业说明书,系统只为用户提供一组键盘或其他操作方式的命令。用户使用操作系统提供的操作命令和系统会话,交互地控制程序执行和管理计算机系统。

7.什么是系统调用?系统调用与一般用户程序有什么区别?与库函数和实用程序又有什么区别? 答:系统调用是操作系统提供给编程人员的唯一接口。编程人员利用系统调用,在源程序一级动态请求和释放系统资源,调用系统中已有的系统功能来完成那些与机器硬件部分相关的工作以及控制程序的执行速度等。因此,系统调用像一个黑箱子那样,对用户屏蔽了操作系统的具体动作而只提供有关的功能。

系统调用与一般用户程序、库函数和实用程序的区别是:系统调用程序是在核心态执行,调用它们需要一个类似于硬件中断处理的中断处理机制来提供系统服务。

8.简述系统调用的实现过程。

答:用户在程序中使用系统调用,给出系统调用名和函数后,即产生一条相应的陷入指令,通过陷入处理机制调用服务,引起处理机中断,然后保护处理机现场,取系统调用功能号并寻找子程序入口,通过入口地址表来调用系统子程序,然后返回用户程序继续执行。

9.为什么说分时系统没有作业的概念?

答:因为咋分时系统中,每个用户得到的时间片有限,用户的程序和数据信息直接输入到内存工作区中和其它程序一起抢占系统资源投入执行,而不必进入外存输入井等待作业调度程序选择。因此,分时系统没有作业控制表,也没有作业调度程序。第三章

1.有人说,一个进程是由伪处理机执行的一个程序,这话对吗?为什么?

答:对。因为伪处理机的概念只有在执行时才存在,它表示多个进程在单处理机上并发执行的一个调度单位。因此,尽管进程是动态概念,是程序的执行过程,但是,在多个进程并发执行时,仍然只有一个进程占据处理机执行,而其它并发进程则处于就绪或等待状态。这些并发进程就相当于由伪处理机执行的程序。

2.试比较进程和程序的区别。

答:(1)进程是一个动态概念,而程序是一个静态概念,程序是指令的有序集合,无执行含义,进程则强调执行的过程。

(2)进程具有并行特征(独立性,异步性),程序则没有。(3)不同的进程可以包含同一个程序,同一程序在执行中也可以产生多个进程。

4.试比较作业和进程的区别。答:并非对所有的程序均成立。例如: begin local x x:=10 print(x)end 上述程序中x是内部变量,不可能被外部程序访问,因此这段程序的运行不会受外界环境影响。

4.试比较作业和进程的区别。

答:一个进程是一个程序对某个数据集的执行过程,是分配资源的基本单位。作业是用于需要计算机完成某项任务,而要求计算机所做工作的集合。一个作业的完成要经过作业提交,作业收容、作业执行和作业完成4个阶段。而进程是已提交完毕的程序所执行过程的描述,是资源分配的基本单位。其主要区别关系如下:

(1)作业是用户向计算机提交任务的任务实体。在用户向计算机提交作业之后,系统将存储在外存中的作业等待队列中等待执行。而进程则是完成用户任务的执行实体,是向系统申请分配资源的基本单位。任一进程,只要它被创建,总有相应的部分存在于内存中。

(2)一个作业可由多个进程组成。且必须至少由一个进程组成,但反过来不成立。

(3)作业的概念主要用在批处理系统中。像Unix这样的分时系统中,则没有作业概念。而进程的概念则用在几乎所有的多道程序系统中。

6.什么是临界区?试举一临界区的例子。

答:临界区是指不允许多个并发进程交叉执行的一段程序。它是由于不同并发进程的程序段共享公用数据或公用数据变量而引起的。所以它又被称为访问公用数据的那段程序。

例如:

getspace: begin local g g=stact[top]

top=top-1 End release(ad): Begin top=top+1 stack[top]=ad End

7.并发进程间的制约有哪两种?引起制约的原因是什么? 答:并发进程所受的制约有两种:直接制约和间接制约。直接制约是由并发进程互相共享对方的私有资源所引起的。间接制约是由竞争共有资源而引起的。

8.什么是进程间的互斥?什么是进程间同步? 答:进程间的互斥是指:一组并发进程中的一个或多个程序段,因共享某一公有资源而导致它们必须以一个不许交叉执行的单位执行,即不允许两个以上的共享该资源的并发进程同时进入临界区。

进程间的同步是指:异步环境下的一组并发进程因直接制约互相发送消息而进行互相合作、互相等待,使得各进程按一定的速度执行的过程。

9.试比较P,V原语法和加锁法实现进程间互斥的区别。

答:互斥的加锁实现是这样的:当某个进程进入临界区之后,它将锁上临界区,直到它退出临界区时为止。并发进程在申请进入临界区时,首先测试该临界区是否是上锁的,如果该临界区已被锁住,则该进程要等到该临界区开锁之后才有可能获得临界区。

加锁法存在如下弊端:(1)循环测试锁定位将损耗较多的CPU计算时间;(2)产生不公平现象。

P,V原语法采用信号量管理相应临界区的公有资源,信号量的数值仅能由P,V原语操作改变,而P,V原语执行期间不允许中断发生。其过程是这样的:当某个进程正在临界区内执行时,其他进程如果执行了P原语,则该进程并不像lock时那样因进不了临界区而返回到lock的起点,等以后重新执行测试,而是在等待队列中等待由其他进程做V原语操作释放资源后,进入临界区,这时P原语才算真正结束。若有多个进程做P原语操作而进入等待状态之后,一旦有V原语释放资源,则等待进程中的一个进入临界区,其余的继续等待。

总之,加锁法是采用反复测试lock而实现互斥的,存在CPU浪费和不公平现像,P,V原语使用了信号量,克服了加锁法的弊端。

10.答:设第I块缓冲区的公有信号量为metex[I],保证生产者进程和消费者进程对同一块缓冲区操作的互斥,初值为1;

设信号量avail为生产者进程的私有信号量,初值为m; 设信号量full为消费者进程的私有信号量,初值为0。用信号量和P、V操作描述发送过程deposit(data)和接收过程remove(data)如下:

deposit(data):

begin

P(avail)

选择一个空缓冲区i

P(mutex[i])

送数据入缓冲区i

V(mutex[i])

V(full)

End

P(full)

选择一个满缓冲区i P(mutex[i])

取缓冲区i中的数据

V(mutex[i])V(avail)12.

答:定义数组buf[0],buf[1]。

设bufempty[0],buffull[1]是Pa的公有信号量;设bufempty[1],buffull[0]是Pb的公有信号量;初值为: bufempty[0]= bufempty[1]=n buffull[0]= buffull[1]=0 用信号量和P、V操作描述发送过程send(i,m)和接收过程receive(i,m)如下:

send(i,m):

begin

local x

P(bufempty[i])

按FIFO选择一个空缓冲区buf[i](x)buf[i](x)=m buf[i](x)置满标记

V(buffull[i])

End receive(i,m):

begin

local x

P(buffull[i])

按FIFO选择一个满缓冲区buf[i](x)m=buf[i](x)buf[i](x)置空标记

V(bufempty[i])

End Pa调用send(0,m)和receive(1,m)Pb调用send(1,m)和receive(0,m)14.

答:设信号量c[i],初值为1;i=0,1,2,3,4。i表示第i号筷子。(1)第i个哲学家要吃饭: eat(i):

begin

P(c[i])remove(data):

begin

End

P(c[i+1 mod 5])

吃饭

V(c[i+1 mod 5])

V(c[i])

End 该过程能保证两个邻座不同时吃饭,但有可能出现每人只拿到一支筷子,谁也吃不上饭的情况。

(1)为解决上述情况,让奇数号的哲学家先取右手边的筷子,偶数号的哲学家先取左手边的筷子。这样只要有一个哲学家拿到了一支筷子,就阻止了邻座的哲学家吃法的企图,从而不会死锁,除非某哲学家永远吃下去。

算法描述如下: eat(i):

begin if i mod 2 == 0 then

{ P(c[i])

P(c[i+1 mod 5])

吃饭

V(c[i+1 mod 5])

V(c[i])

}

else

{

P(c[i+1 mod 5])P(c[i])

吃饭

V(c[i])

V(c[i+1 mod 5])

} End 另解:最多只允许4个哲学家同时要求进餐,这样至少有一位哲学家能取到两只筷子并可以进餐,进餐后释放两只筷子,其他哲学家可以陆续进餐。

设哲学家进餐信号量sm=4;筷子信号量c[i]=1(i=0,1,2,3,4)eat(i):

begin P(sm)

P(c[i])

P(c[i+1 mod 5])

吃饭

V(c[i+1 mod 5])

V(c[i])V(sm)

End 15.什么是线程? 试述线程与进程的区别。答;线程是在进程内用于调度和占有处理机的基本单位,它由线程控制表、存储线程上下文的用户栈以及核心栈组成。线程可分为用户级线程、核心级线程以及用户/核心混合型线程等类型。其中用户级线程在用户态下执行,CPU调度算法和各线程优先级都由用户设置,与操作系统内核无关。核心级线程的调度算法及线程优先级的控制权在操作系统内核。混合型线程的控制权则在用户和操作系统内核二者。

线程与进程的主要区别有:

(1)进程是资源管理的基本单位,它拥有自己的地址空间和各种资源,例如内存空间、外部设备等;线程只是处理机调度的基本单位,它只和其他线程一起共享进程资源,但自己没有任何资源。

(2)以进程为单位进行处理机切换和调度时,由于涉及到资源转移以及现场保护等问题,将导致处理机切换时间变长,资源利用率降低。以线程为单位进行处理机切换和调度时,由于不发生资源变化,特别是地址空间的变化,处理机切换的时间较短,从而处理机效率也较高。

(3)对用户来说,多线程可减少用户的等待时间。提高系统的响应速度。例如,当一个进程需要对两个不同的服务器进行远程过程凋用时,对于无线程系统的操作系统来说需要顺序等待两个不同调用返回结果后才能继续执行,且在等待中容易发生进程调度。对于多线程系统而言,则可以在同一进程中使用不同的线程同时进行远程过程调用,从而缩短进程的等待时间。

(4)线程和进程一样,都有自己的状态.也有相应的同步机制,不过,由于线程没有单独的数据和程序空间,因此,线程不能像进程的数据与程序那样,交换到外存存储空间。从而线程没有挂起状态。

(5)进程的调度、同步等控制大多由操作系统内核完成,而线程的控制既可以由操作系统内核进行,也可以由用户控制进行。思考题:读者与写者关系问题(读者优先)。

答:设写者互斥信号量wm=1;读者计数器readcount=0;互斥操作readcount的信号量rm=1;reader()begin P(rm)Readcount:=readcount+1 If readcount==1 then P(wm)V(rm)读数据 P(rm)Readcount:=readcount-1 If readcount==0 then V(wm)V(rm)end writer()begin P(wm)写数据 V(wm)end 第四章

1.什么是分级调度?分时系统中有作业调度的概念吗?如果没有,为什么? P86 答:处理机调度问题实际上也是处理机的分配问题。显然只有那些参与竞争处理及所必需的资源都已得到满足的进程才能享有竞争处理机的资格。这时它们处于内存就绪状态。这些必需的资源包括内存、外设及有关数据结构等。从而,在进程有资格竞争处理机之前,作业调度程序必须先调用存储管理、外设管理程序,并按一定的选择顺序和策略从输入井中选择出几个处于后备状态的作业,为它们分配资源和创建进程,使它们获得竞争处理机的资格。

另外,由于处于执行状态下的作业一般包括多个进程,而在单机系统中,每一时刻只能有一个进程占有处理机,这样,在外存中,除了处于后备状态的作业外,还存在处于就绪状态而等待得到内存的作业。我们需要有一定的方法和策略为这部分作业分配空间。因此处理机调度需要分级。

一般来说,处理机调度可分为4级:

(1)作业调度: 又称宏观调度,或高级调度。

(2)交换调度:又称中级调度。其主要任务是按照给定的原则和策略,将处于外存交换区中的就绪状态或等待状态的进程调入内存,或处于内存就绪状态或等待状态的进程交换到外存交换区。交换调度主要涉及到内存管理与扩充。

(3)进程调度:又称微观调度或低级调度。其主要任务是按照某种策略和方法选取一个处于就绪状态的进程占用处理机。在确立了占用处理机的进程之后,系统必须进行进程上下文切换以建立与占用处理机进程相适应的执行环境。

(4)线程调度:进程中相关堆栈和控制表等的调度。

2.试述作业调度的主要功能。P88 答: 作业调度的主要功能是:(1)记录系统中各作业的状况。

(2)按一定的原则对外存输入井上的大量后备作业进行选择。

(3)给选出的作业分配内存、输入输出设备等必要的资源,并建立相应进程,使该作业的相关进程获得竞争处理机的权利。

(4)当作业执行完毕时,还负责回收系统资源。

3.作业调度的性能评价标准有哪些?这些性能评价标准在任何情况下都能反映调度策略的优劣吗? 答:调度的性能评价标准:

(1)对所有作业应该是公平合理的;(2)应使设备有高的利用率;(3)每天执行尽可能多的作业;(4)有快的响应时间。

不能。对于批处理系统,由于主要用于计算,因而对于作业的周转时间要求较高。从而作业的平均周转时间或平均带权周转时间被用来衡量调度程序的优劣。但对于分时系统来说,平均响应时间又被用来衡量调度策略的优劣。对于分时系统,除了要保证系统吞吐量大、资源利用率高之外,还应保证用户能够容忍的响应时间。因此,在分时系统中,仅仅用周转时间或带权周转时间来衡量调度性能是不够的。

对于实时系统,衡量调度算法优劣的主要标志则是满足用户要求的时限时间。

4.进程调度的功能有哪些? P91 答:进程调度的功能有:

(1)记录和保存系统中所有进程的执行情况;(2)选择占有处理机的进程;(3)进行进程上下文切换。

5.进程调度的时机有哪几种? P92 答:进程调度的时机有:

(1)正在执行的进程执行完毕。这时如果不选择新的就绪进程执行,将浪费处理机资源。

(2)执行中进程自己调用阻塞原语将自己阻塞起来进入睡眠等待状态。(3)执行中进程调用了P原语操作,从而因资源不足而被阻塞:或调用了V原语操作激活了等待资源的进程队列。

(4)执行中进程提出I/O请求后被阻塞。(5)在分时系统中时间片已经用完。

(6)在执行完系统调用等系统程序后返回用户程序时,可看做系统进程执行完毕,从而调度选择一新的用户进程执行。

(7)在CPU执行方式是可剥夺时,还有:就绪队列中的某进程的优先级变得高于当前执行进程的优先级,从而也将引发进 程调度。

6.假设有4道作业,它们的提交时间及执行时间由下表给出:

作业号

提交时刻(时)执行时间(小时)1 10:00 2 2 10:20 1 3 10:40 0.5 4 10:50 0.3 计算在单道程序环境下,采用先来先服务调度算法和最短作业优先调度算法时的平均周转时间和平均带权周转时间,并指出它们的调度顺序。

答:(1)先来先服务调度: 调度顺序: 1、2、3、4 1 Ts1:10:00 Te1:12:00 Tr1:2 Tw1: 0 2 Ts2:10:20 Te2:13:00 Tr2:1 Tw2: 1.7 3 Ts3:10:40 Te3:13:30 Tr3: 0.5 Tw3:2.3 4 Ts4:10:50 Te4:13:50 Tr4: 0.3 Tw4:2.7

T=0.25*(2+2.7+2.8+3)=2.625(h)W=0.25*(4+0+1.7/1+2.3/0.5+2.7/0.3)=4.825

(2)最短作业优先调度: 调度顺序: 4、3、2、1 1 Ts4: 10:50 Te4:11:10 Tr4:0.3 Tw4:0 2 Ts3:10:40 Te3:11:40 Tr3: 0.5 Tw3:0.5 3 Ts2;10:20 Te2:12:40 Tr2: 1 Tw2: 1.3 4 Ts1:10:00 Te1: 14:40 Tr1:2 Tw1:2.7 T:0.25*(0.3+1+2.3+4.7)= 2.075(h)W: 0.25*(4+0+1+1.3+2.7/2)=1.9125 以上是4个作业提交完后的调度情况(提交过程中运行其它作业)。如果边提交边调度,又如何? 第五章

1.存储管理的主要功能是什么? P109 5.1节

答:存储管理的主要功能包括以下几点:

(1)在硬件的支持下完成统一管理内存和外存之间数据和程序段自动交换的虚拟存储。

(2)将多个虚存的一维线性空间或多维线性空间变换到内存的唯一的一维物理线性地址。

(3)控制内外存之间的数据传输。(4)实现内存的分配和回收。

(5)实现内存信息的共享与保护。

2. 什么是虚拟存储器?其特点是什么? P110 答:由进程中的目标代码、数据等的虚拟地址组成的虚拟空间称为虚拟存储器。虚拟存储器不考虑物理存储器的大小和信息存放的实际位置,只规定每个进程中相互关联信息的相对位置。每个进程都拥有自己的虚拟存储器,且虚拟存储器的容量是由计算机的地址结构和寻址方式来确定。

实现虚拟存储器要求有相应的地址变换机构,以便把指令的虚拟地址变换为实际物理地址;另外,由于内存空间较小,进程只有部分内容存放于内存中,待执行时根据需要再调入内存。

3.实现地址重定位的方法有哪几类? P111 答:实现地址重定位的方法有两种:静态地址重定位和动态地址重定位。

(1)静态地址重定位是在虚空间程序执行之前由装配程序完成地址映射工作。静态重定位的优点是不需要硬件支持,但是用静态地址重定位方法进行地址变换无法实现虚拟存储器。静 态重定位的另一个缺点是必须占用连续的内存空间和难以做到程序和数据的共享。

(2)动态地址重定位是在程序执行过程中,在CPU访问内存之前由硬件地址变换机构将要访问的程序或数据地址转换成内存地址。动态地址重定位的主要优点有:

① 可以对内存进行非连续分配。

② 动态重定位提供了实现虚拟存储器的基础。③ 动态重定位有利于程序段的共享。

4.常用的内存信息保护方法有哪几种?它们各自的特点是什么? P113 答:常用的内存保护方法有硬件法、软件法和软硬件结合保护法三种。上下界保护法是一种常用的硬件保护法。上下界存储保护技术要求为每个进程设置对上下界寄存器。上下界寄存器中装有被保护程序和数据段的起始地址和终止地址。在程序执行过程 中,在对内存进行访问操作时首先进行访问地址合法性检查,即检查经过重定位之后的内存地址是否在上、下界寄存器所规定的范围之内。若在规定的范围之内,则访问是合法的;否则是非法的,并产生访问越界中断。

保护键法也是一种常用的软件存储保护法。保护键法为每—个被保护存储块分配一个单独的保护键。在程序状态字中则设置相应的保护键开关字段,对不同的进程赋予不同的开关代码 以和被保护的存储块中的保护键匹配。保护键可以设置成对读写同时保护的或只对读写进行单项保护的。如果开关字段与保护键匹配或存储块未受到保护,则访问该存储块是允许的,否则将产生访问出错中断。

另外一种常用的硬软件内存保护方式是:界限存储器与CPU的用户态,核心态相结合的保护方式。在这种保护方式下,用户态进程只能访问那些在界限寄存器所规定范围内的内存部分,而核心态进程则可以访问整个内存地址空间。

6.动态分区式管理的常用内存分配算法有哪几种?比较它们各自的优缺点。P118 答:动态分区式管理的常用内存分配算法有最先适应法(FF)、最佳适应法(BF)和最坏适应法(WF)。

优缺点比较:

① 从搜索速度上看最先适应法最佳,最佳适应法和最坏适应法都要求把不同大小的空闲区按大小进行排队。

② 从回收过程来看,最先适应法也是最佳,因为最佳适应法和最坏适应法都必须重新调整空闲区的位置。

③ 最佳适应法找到的空闲区是最佳的,但是会造成内存碎片较多,影响了内存利用率,而最坏适应法的内存碎片最少,但是对内存的请求较多的进程有可能分配失败。

总之,三种算法各有所长,针对不同的请求队列,它们的效率和功能是不一样的。

8.简述什么是覆盖?什么是交换?覆盖和交换的区别是什么? P121 答:将程序划分为若干个功能上相对独立的程序段,按照程序的逻辑结构让那些不会同时执行的程序段共享同一块内存区的内存扩充技术就是覆盖。交换是指先将内存某部分的程序或数据写入外存交换区,再从外存交换区中调入指定的程序或数据到内存中来,并让其执行的一种内存扩充技术。与覆盖技术相比,交换不要求程序员给出程序段之间的覆盖结构,而且,交换主要是在进程或作业之间进行,而覆盖则主要在同一个作业或同一个进程内进行。另外,覆盖只能覆盖那些与覆盖程序段无关的程序段。

9.什么是页式管理?静态页式管理可以实现虚存吗? P123 答:页式管理就是把各进程的虚拟空间划分为若干长度相等的页,把指令按页面大小划分后存放在内存中执行或只在内存中存放那些经常被执行或即将被执行的页,而那些不被经常执行以及在近期内不可能被执行的页则存放于外存中,按一定规则调入的一种内存管理方式。静态页式管理不能实现虚存,这是因为静态页式管理要求进程或作业在执行前全部被装入内存,作业或进程的大小仍受内存可用页面数的限制。

10.什么是请求页式管理? P127 答:请求页式管理是动态页式内存管理的一种,它在作业或进程开始执行之前,不把作业或进程的程序段和数据段一次性的全部装入内存,而只装入被认为是经常反复执行和调用的工作区部分。其他部分则在执行过程中动态装入。

请求页式管理的调入方式是,当需要执行某条指令而又发现它不在内存时,或当执行某条指令需要访问其他数据或指令时,而这些指令和数据又不在内存中,从而发生缺页中断,系统将外存中相应的页调入内存。

11.请求页式管理中有哪几种常用的页面置换算法?试比较它们的优缺点。P129 答:比较常用的页面置换算法有:

(1)随机淘汰算法(randomglongram)。即随机地选择某个用户页面并将其换出。

(2)轮转法RR(roundrobin)。轮转法循回换出内存可用区内一个可以被换出的页,无论该页是刚被换进或已经换进内存很长时间。

(3)先进先出法FIFO(firstinfirstout)。FIFO算法选择在内存驻留时间最长的一页将其淘汰。

(4)最近最久未使用页面置换算法LRU(1east recently unused)。该算法的基本思想是:当需要淘汰某一页时,选择离当前时间最近的一段时间内最久没有使用过的页面先淘汰。

该算法很难实现,比较常用的近似算法:最不经常使用页面淘汰算法LFU、最近没有使用页面淘汰算法NUR。

(5)理想型淘汰算法OPT(optimalreplacementalgorithm)。该算法淘汰在访问串中将来再也不出现的或是在离当前最远的位置上出现的页面。

12.什么是Belady现象?找出一个Belady现象的例子。P131 答:使用FIFO算法时,在未给进程或作业分配足它所要求的页面数时,有时会出现分配的页面数增多,缺页次数反而增加的奇怪现象。这种现象称为Belady现象。

假设进程P共有5个页,访问顺序是:1,2,3,4,1,2,5,1,2,3,4,5的缺页情况。

分配3个页面,缺页9次:缺页率9/12=75%

分配4个页面,缺页10次:缺页率10/12=83.3%

此例就出现分配的页面数增多,缺页次数反而增加的奇怪现象,即Belady现象。

14.什么是段式管理?它与页式管理有何区别? P133 答:段式管理就是将程序按照内容或过程(函数)关系分成段,每段拥有自己的名字。一个用户作业或进程所包含的段对应于一个二维线性虚拟空间,也就是一个二维虚拟存储器。段式管理程序以段为单位分配内存,然后通过地址映射机构把段式虚拟地址转换成实际的内存物理地址。同页式管理时一样,段式管理也采用只把那些经常访问的段驻留内存,而把那些在将来一段时间内不被访问的段放入外存,待需要时自动调入相关段的方法实现二维虚拟存储器。

段式管理和页式管理的主要区别有:

(1)页式管理中源程序进行编译链接时是将主程序、子程序、数据区等按照线性空间的一维地址顺序排列起来。段式管理则是将程序按照内容或过程(函数)关系分成段,每段拥有自己的名字。一个用户作业或进程所包含的段对应于一个二维线性虚拟空间,也就是一个二维虚拟存储器。

(2)同动态页式管理一样,段式管理也提供了内外存统一管理的虚存实现。与页式管理不同的是:段式虚存每次交换的是一段有意义的信息,而不是像页式虚存管理那样只交换固定大小的页,从而需要多次的缺页中断才能把所需信息完整地调入内存。

(3)在段式管理中,段长可根据需要动态增长。这对那些需要不断增加或改变新数据或子程序的段来说,将是非常有好处的。

(4)段式管理便于对具有完整逻辑功能的信息段进行共享。

(5)段式管理便于进行动态链接,而页式管理进行动态链接的过程非常复杂。

15.段式管理可以实现虚存吗?如果可以,简述实现方法。P133 答:段式管理可以实现虚存。

段式管理把程序按照内容或过程(函数)关系分成段,每段拥有自己的名字。一个用户作业或进程所包含的段对应于一个二维线性虚拟空间(段号s与段内相对地址w),也就是一个二维虚拟存储器。段式管理以段为单位分配内存,然后通过地址映射机构把段式虚拟地址转换成实际的内存物理地址。只把那些经常访问的段驻留内存,而把那些在将来一段时间内不被访问的段放入外存,待需要时产生缺段中断,自动调入。

16.为什么要提出段页式管理?它与段式管理及页式管理有何区别? P138 答:因为段式管理和页式管理各有所长。段式管理为用户提供了一个二维的虚拟地址空间,反映了程序的逻辑结构,有利于段的动态增长以及共享和内存保护等,这极大地方便了用户。而分页系统则有效地克服了碎片,提高了存储器的利用效率。从存储管理的目的来讲,主要是方便用户的程序设计和提高内存的利用率。所以人们提出了将段式管理和页式管理结合起来让其互相取长补短的段页式管理。段页式管理与段式和页式管理相比,其访问时间较长。因此,执行效率低。

17.为什么说段页式管理时的虚拟地址仍是二维的? 答:因为在段页式内存管理中,对每一段内的地址空间进行分页式管理只是为了克服在内存分配过程中产生的大量碎片,从而提高存储器的利用效率,它并没有改变段内地址空间的一维结构,所以段页式内存管理中的虚拟地址仍然和段式内存管理中的虚拟地址一样,是二维结构的。

18.段页式管理的主要缺点是什么?有什么改进办法? 答:段页式管理的主要缺点是对内存中指令或数据进行存取时,至少需要对内存进行三次以上的访问。第一次是由段表地址寄存器取段表始址后访问段表,由此取出对应段的页表在内存中的地址。第二次则是访问页表得到所要访问的指令或数据的物理地址。只有在访问了段表和页表之后,第三次才能访问真正需要访问的物理单元。显然。这将大大降低CPU执行指令的速度。

改进办法是设置快速联想寄存器。在快速联想寄存器中.存放当前最常用的段号s,页号p和对应的内存页面地址与其他控制项。当需要访问内存空间某一单元时,可在通过段表、页表进行内存地址查找的同时,根据快速联想寄存器查找其段号和页号。如果所要访问的段或页的地址在快速联想寄存器中,则系统不再访问内存中的段表、页表而直接把快速联想寄存器中的值与页内相对地址d拼接起来得到内存地址。

19.什么是局部性原理?什么是抖动?你有什么办法减少系统的抖动现象? P140 答:局部性原理是指在几乎所有程序的执行过程中,在一段时间内,CPU总是集中地访问程序中的某一个部分而不是对程序的所有部分具有平均的访问概率。

抖动是指当给进程分配的内存小于所要求的工作区时,由于内存外存之间交换频繁,访问外存的时间和输入输出处理时间大大增加,反而造成CPU因等待数据而空转,使得整个系统性能大大下降。

在物理系统中,为防止抖动的产生,在进行淘汰或替换时,一般总是把缺页进程锁住,不让其换出,从而防止抖动发生。防止抖动发生的另一个办法是设置较大的内存工作区。

第六章

1.简述Linux系统进程的概念? 答:P148 2.Linux进程上下文由哪几部分组成?为什么说核心程序不是进程上下文上午一部分?进程页表也在核心区,它们也不是进程上下文上午一部分吗?

答:进程上下文由task_struct结构、用户栈和核心栈的内容、用户地址空间的征文段、数据段、硬件寄存器的内容以及页表等组成。

核心页表被所有进程共享,所以不是进程上下文的一部分。而进程页表是进程上下文的一部分。

4.Linux的调度策略是什么? 调度时应该封锁中断吗?如果不封锁,会发生什么问题?

答:Linux使用三种调度策略,动态优先数调度SCHED_OTHER,先来先服务调度SCHED_FIFO和轮转法调度SCHED_RR。其中动态优先级调度策略用于普通进程,后两种调度策略用于实时进程。

在调度时应封锁中断,否则在调度过程中由于中断会使进程上下文的切换出现错误。

6. Linux在哪几种情况下发生调度? 答:两种情况:一是进程自动放弃处理机时主动装入调度过程,二是在由核心态转入用户态时,系统设置了高优先级就绪进程的强迫调度标识need_resched时发生调度。

8.什么是软中断? 答:P162 13.Linux存储管理策略中交换和请求调页方式有何区别? 答:P171

第八章

1.什么是文件、文件系统?文件系统有哪些功能? P198 答:在计算机系统中,文件被解释为一组赋名的相关字符流的集合,或者是相关纪录的集合。

文件系统是操作系统中与管理文件有关的软件和数据。

文件系统的功能是为用户建立文件、撤销、读写、修改和复制文件,以及完成对文件的按名存取和进行存取控制。

2、文件一般按什么分类?可以分为哪几类? P199 答:文件一般按性质、用途、组织形式、文件中的信息流向或文件的保护级别等分类。

按性质和用途可分为系统文件、库文件和用户文件。按文件的组织形式可分为普通文件、目录文件和特殊文件。

按文件中的信息流向可分为输入文件、输出文件和输入/输出文件。按文件的保护级别可分为只读文件、读写文件、可执行文件和不保护文件。

3、什么是文件的逻辑结构?什么是纪录?P200 答:文件的逻辑结构就是用户可见的结构,可分为字符流式的 无结构文件和记录式的有结构文件两大类。

记录是一个具有特定意义的信息单位,他由该纪录在文件中的逻辑地址(相对位置)与记录名所对应的一组关键字、属性及其属性值所组成。

7、文件的物理结构有哪几种?为什么说串联文件结构不适于随机存取?P205 答:文件的物理结构是指文件在存储设备上的存取方法。常用的文件的物理结构有连续文件、串联文件和索引文件三种。

串联文件结构用非连续的物理块来存取文件信息。这些非连续的物理块之间没有顺序关系,链接成一个串联队列。搜索时只能按队列中的串联指针顺序搜索,存取方法应该是顺序存取的。否则,为了读取某个信息块而造成的磁头大幅度移动将花去较多的时间。因此,串联文件结构不适于随机存取。

9、常用的文件存储设备的管理方法有哪些?试述主要优缺点。P209 答:文件存储设备的管理实质上是一个空闲块的组织和管理问题。有3种不同的空闲块管理方法,即空闲文件目录、空闲块链和位示图。

空闲文件目录管理方法就是把文件存储设备中的空闲块的块号统一放在一个称为空闲文件目录的物理块中,其中空闲文件目录的每个表项对应一个由多个空闲块构成的空闲区。该方法实现简单,适于连续文件结构的文件存储区的分配与回收。但是由于回收时不进行合并,所以使用该方法容易产生大量的小块空闲区。

空闲块链法把文件存储设备上的所有空闲块链接在一起,从链头分配空闲块,把回收的空闲块插入到链尾。该方法不占用额外的空间,但实现复杂。

位示图法是从内存中划出若干字节,每个比特位对应一个物理块的使用情况。如果该位为0表示对应的块是空闲的,为1表示对应的物理块已分配出去。位示图法在查找空闲块时无需启动外设,但要占用内存空间。

11、什么是文件目录?文件目录中包含哪些信息?P211 答:一个文件的文件名和对该文件实施控制管理的说明信息成为该文件的说明信息,又称为该文件的文件控制块(FCB)。把所有的FCB组织在一起,就构成了文件目录,即文件控制块的有序集合。

文件目录中包含文件名、与文件名相对应的文件内部标识以及文件信息在文件存储设备上的第一个物理块的地址等信息。另外还可能包含关于文件的逻辑结构、物理结构、存取控制信息和管理等信息。

13、文件存取控制方式有哪几种?试比较它们各自的优缺点。P216 答:文件存取控制方式一般有存取控制矩阵、存取控制表、口令和密码术4种方式。存取控制矩阵方式以一个二维矩阵来进行存取控制。而且矩阵的一维是所有的用户。另一维是所有的文件。对应的矩阵元素则是用户对文件的存取控制权。存取控制矩阵的方法在概念上比较简单,但是当用户和文件较多时,存取控制矩阵将变得非常庞大,从而时间和空间的开销都很大。

存取控制表以文件为单位,把用户按某种关系划分为若干组,同时规定每组的存取限制。这样所有用户组对文件权限的集合就形成了该文件的存取控制表。存取控制表方法占用空间较小,搜索效率也较高,但要对用户分组,引入了额外的开销。

口令方式有两种。一种是当用户进入系统时,为建立终端进程时获得系统使用权的口令。另一种方式是,每个用户在创建文件时,为每个创建的文件设置一个口令,且将其置于文件说明中。当任一用户想使用该文件时,都必须首先提供口令。口令方式比较简单,占用的内存单元以及验证口令所费时间都非常少。不过,相对来说,口令方式保密性能比较差。

密码术方式在用户创建源文件并写入存储设备时对文件进行编码加密,在读出文件时对文件进行译码解密。加密方式具有保密性强的优点。但是,由于加密解密工作要耗费大量的处理时间,因此,加密技术是以牺牲系统开销为代价的。

第九章

1.设备管理的目标和功能是什么? 答:设备管理的目标是:

(1)选择和分配输入/输出设备以便进行数据传输操作;(2)控制输入/输出设备和CPU(或内存)之间交换数据;(3)为用户提供一个友好的透明接口;(4)提高设备和设备之间、CPU和设备之间,以及进程和进程之间的并行操作,以使操作系统获得最佳效率。

设备管理的功能是:

(1)提供和进程管理系统的接口;(2)进行设备分配;

(3)实现设备和设备、设备和CPU等之间的并行操作;(4)进行缓冲区管理。

2.数据传送控制方式有哪几种?试比较它们各自的优缺点。

答:数据传送控制方式有程序直接控制方式、中断控制方式、DMA方式和通道方式4种。

程序直接控制方式就是由用户进程来直接控制内存或CPU和外围设备之间的数据传送。它的优点是控制简单,也不需要多少硬件支持。它的缺点是CPU和外围设备只能串行工作;设备之间只能串行工作,无法发现和处理由于设备或其他硬件所产生的错误。

中断控制方式是利用向CPU发送中断的方式控制外围设备和CPU之间的数据传送。它的优点是大大提高了CPU的利用率且能支持多道程序和设备的并行操作。它的缺点是由于数据缓冲寄存器比较小,如果中断次数较多,仍然占用了大量CPU时间;在外围设备较多时,由于中断次数的急剧增加,可能造成CPU无法响应中断而出现中断丢失的现象;如果外围设备速度比较快,可能会出现CPU来不及从数据缓冲寄存器中取走数据而丢失数据的情况。DMA方式是在外围设备和内存之间开辟直接的数据交换通路进行数据传送。它的优点是除了在数据块传送开始时需要CPU的启动指令,在整个数据块传送结束时需要发中断通知CPU进行中断处理之外,不需要CPU的频繁干涉。它的缺点是在外围设备越来越 多的情况下,多个DMA控制器的同时使用,会引起内存地址的冲突并使得控制过程进一步复杂化。

通道方式是使用通道来控制内存或CPU和外围设备之间的数据传送。通道是一个独立与CPU的专管输入/输出控制的机构,它控制设备与内存直接进行数据交换。它有自己的通道指令,这些指令受CPU启动,并在操作结束时向CPU发中断信号。该方式的优点是进一步减轻了CPU的工作负担,增加了计算机系统的并行工作程度。缺点是增加了额外的硬件,造价昂贵。

3.什么是通道?试画出通道控制方式时的CPU、通道和设备的工作流程图。

答:通道是一个独立与CPU的专管输入/输出控制的机构,它控制设备与内存直接进行数据交换。它有自己的通道指令,这些指令受CPU启动,并在操作结束时向CPU发中断信号。

4.什么是中断?什么叫中断处理?什么叫中断响应? 答: 中断是指计算机在执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的事件处理程序,待处理完毕后又返回原来被中断处继续执行的过程。

CPU转去执行相应的事件处理程序的过程称为中断处理。CPU收到中断请求后转到相应的事件处理程序称为中断响应。

5.什么叫关中断?什么叫开中断?什么叫中断屏蔽? 答:把CPU内部的处理机状态字PSW的中断允许位清除从而不允许CPU响应中断叫做关中断。设置CPU内部的处理机状态字PSW的中断允许位从而允许CPU响应中断叫做开中断。

中断屏蔽是指在中断请求产生之后,系统用软件方式有选择地封锁部分中断而允许其余部分的中断仍能得到响应。

6.什么是陷阱?什么是软中断?试述中断、陷阱和软中断之间异同。

答:陷阱指处理机和内存内部产生的中断,它包括程序运算引起的各种错误,如地址非法、校验错、页面失效。存取访问控制错、从用户态到核心态的切换等都是陷阱的例子。软中断是通信进程之间用来模拟硬中断的一种信号通信方式。

8.什么是缓冲?为什么要引入缓冲?

答:缓冲即是使用专用硬件缓冲器或在内存中划出一个区域用来暂时存放输入输出数据的器件。

引入缓冲是为了匹配外设和CPU之间的处理速度,减少中断次数和CPU的中断处理时间,同时解决DMA或通道方式时的数据传输瓶颈问题。

13.什么是I/O控制?它的主要任务是什么? 答:I/O控制是指从用户进程的输入输出请求开始,给用户进程分配设备和启动有关设备进行I/O操作,并在I/O操作完成之后响应中断,直至善后处理为止的整个系统控制过程。

15.设备驱动程序是什么?为什么要有设备驱动程序?用户进程怎样使用驱动程序? 答:设备驱动程序是驱动外部物理设备和相应DMA控制器或I/O控制器等器件,使之可以直接和内存进行I/O操作的子程序的集合。它们负责设置相应设备有关寄存器的值,启动设备进行I/O操作,指定操作的类型和数据流向等。

设备驱动程序屏蔽了直接对硬件操作的细节,为编程者提供操纵设备的友好接口。

用户进程通过调用设备驱动程序提供的接口来使用设备驱动程序。

第四篇:计算机操作系统教程_第三版_(张尧学_张高_史美林_著)_清华大学出版社_课后答案

第一章绪论

I.什么是操作系统的幕本功能? 答:操作系统的职能是管理和控制汁算机系统中的所有硬、软们资源,合理地组织计算 机工作流程,并为用户提供一个良好的工作环境和友好的接u.操作系统的基本功能包括: 处理机管理、存储管理、设备管理、信息管理(文们骡统管理)和用户接Ii等.2.什么是批处理、分时和实时系统?各有什么特征? 答:批处理系统(batchprocessingsystem):操作员把用户提交的作收分类.把一批作收编成一 个作业执行序列,由专门编制的监督程序(monitor)自动依次处理.其主要特征是:用户脱机 使用计算机、成批处理、多道程序运行.分时系统(timcsharingopcrationsystcm):把处理机的运行时(fnJ分成很短的时fFIJ片,按I<“t fnJ片轮

转的方式,把处理机分配给各进程使用.其主要特征是:交互性、多用户同时性、独立性。实时系统(rcaltimcsystcm):在被控对象允许时间范围内作出响应.其主要特征是:对实时信 息分析处理速度要比进入系统快、要求安全可靠、资源利用率低。3.多道程序(multiprogramming)和多爪处理(multiprocessing)有何区别? 答:多道程序(multiprogramming)是作收之间自动调度执行、共享系统资源.并不是真正地 同时俏行多个作业:而多熏处W..(multiprocessing)系统配置多个CPU,能真正同时执行多道 程序。要有效使用多重处理,必须采用多道程序设计技术,而多道程序设计原则上不一定要 求多重处理系统的支持.第二章作业管理和用户接口

1.什么是作业?.作业步?

答:把在一次应用业务处理过程中,从输入开始到输出结束,用户要求计算机所做的有关该次业务的处理的全部工作称为一个作业。作业由不同的顺序相连的作业步组成。作业步是在一个作业的处理过程中,计算机所做的相对独立的工作。如.编辑愉入是一个作业步.它产生源程序文件:编译也是一个作业步.它产生目标代码文件.2.作业山几部分组成?各有什么功能? 荞:作业山三部分组成:程序、数据和作业说明书.程序和数据完成用户所要求的业务处理 工作.作业说明书则体现用户的控制愈图.3.作业的愉入方式有哪JL种?各有何特点

谷:作业的输入方式有5种:联机输入方式、脱机袖入方式、直接棍合方式、SPOOLING(Simultancous Peripheral OperationsOnlinc)系统和网络愉入方式.各有如卜特点:

(1)联机输入方式:用户和系统通过交互式会话来怕入作业.(2)脱机输入方式,又称预输入方式,利用低档个人计甘机作为外幽处理极进行钧入处理,存储在后备存储器I:.然后将此后援存储器连接到高速外围设备1二和上机相连。从而在较短 的时间内完成作业的愉入工作。

(3)直接祸合方式:把上机和外围低档机通过一个公用的人容量外存六接祸合起来,从而省去了在脱机愉入中那种依靠人工干预末传递后援存储雄的过程.(4)SPOOLING系统nl译为外田设备同时联机摊作。在SPOOLING系统中.多台外团设备通好道或DMA 器件和主机与外存连接起来作业的愉入愉出过程由土机中的掩作系统控 翻。

(5)网络怕入方式:网络愉入方式以上述几仲泊入方式为赞拙.当用户需要把在计算机网络中某一台主机上输入的信息传送到同一网中另台主机上进行摊作成执行时.就构成了网络输入方式。

4.试述SPOOLING系统的_I-作原理。

答:在s阳OLIN6系统巾,多台外围设备通过通逝或DMA器件和主机与外存连接起来,作业的输入输出过程由主机中的操作系统控制.操作系统中的输入程序包一含两个独立的过 程,一个过程负责从外部设备把信息读入缓冲区,另一个过程是写过程,负责把缓冲区中的 信息送入到外存输入井巾。在系统输入模块收到作业输入请求后,输入管理模块中的读过积 负责将信息从愉入装置读入缓冲区。当缓冲V满时,由写过程将信息从缓冲区写到外存输入

井中。读过程和写过程反复循环.直到一个作业愉入完毕。当读过程读到一个硬件结束标志 后,系统再次驱动写过程把最后一批信息写入外存并调用中断处理程序结束该次输入。然后 系统为该作业建立作业控制块JCB,从而使输入井中的作业进入作业等待队列,等待作业调 度程序选中后进入内存。

5.作业说明书和作业控制块有何异同? 答:作业说明书主要包含三方面内容:作业的基本描述、作业控制描述和资源要求描述.作 业基本描述主要包括用户名、作业名、使用的编程语言名、允许的最大处理时间等,而作业 控制描述则大致包括作业在执行过程中的控制方式,例如是脱机控制还是联机控制、各作业 步的操作顺序以及作业不能正常执行时的处理等.资源要求描述包括要求内存大小、外设种类和台数、处理机优先级、所需处理时间、所需库A数或实用程序等.而作业控制块是作业 说明书在系统中生成的一张表格,该表格迁记该作业所要求的资源情况、预计执行时间和执 行优先级等。从而,操作系统通过该表了解到作业要求,并分配资源和控制作业中R序和数 据的编译、链接、装入和执行等.6.操作系统为用户提供哪些接门?它们的区别是什么? 答:操作系统为用户提供两个接l],一个是系统为用户提供的各种命令接口.用户利用这些 操作命令来组织和控制作业的执行或管理计算机系统,另一个接门是系统调用,编程人员使 用系统调用来请求a作系统提供服务。例如申请和释放外设等类资源、控制程序的执行速度 等.。

7.作业控制方式有哪几种?调查你周围的计算机的作业控制方式。

答:作业控制的主要方式有两种:脱机方式和联机方式。

脱机控制方式利用作业控制语言来编写表示用户控制意图的作业控制程序,也就是作业说明 书。作业控制语言的语句就是作业控制命令。不同的批处理系统提供不同的作业控制语言。联机控制方式不同于脱机控制方式,它不要求用户填写作业说明书,系统只为用户提供一组 键盘或其他操作方式的命令。用户使用操作系统提供的操作命令和系统会话,交互地控制程 序执行和管理计算机系统。

8.什么是系统调用?系统调用与一般用户程序有什么区别?与库函数和实用程序又有什么区 别? 答:系统调用是操作系统提供给编程人员的唯一接口。编程人员利用系统调用,在源程序一 级动态请求和释放系统资源,调用系统中己有的系统功能来完成那些与机器硬件部分相关的 工作以及控制程序的执行速度等。因此,系统调用像一个黑箱子那样,对用户屏蔽了操作系 统的具体动作而只提供有关的功能。它与一般用户程序、库函数和实用程序的区别是:系统 调用程序是在核心态执行,调用它们需要一个类似于硬件中断处理的I一卜断处理机制来提供系统服务。

9.简述系统调用的实现过程。

答:用户在程序中使用系统调用,给出系统凋用名和函数后,即产生一条相应的陷入指令,通过陷入处理机制调用服务,引起处理机中断,然后保护处理机现场,取系统调用功能号并 寻找子程序入口,通过入口地址表来调用系统子程序,然后返回用户程序继续执行。10.为什么说分时系统没有作业的概念? 答:因为在分时系统中,每个用户得到的时问片有限,用户的程序和数据信息直接输入到内 存工作区中和其他程序一起抢占系统资源投入执行,而不必i 序选择.因此,分时系统没有作业控制表,也没有作业调度 存输入并等待作业调度程 11.试述UNIX的主要特点.答:UNIX的主要特点是:(1)UNIX系统是一个可供多用户同时操作的交互式分时操作系统,(2)为了向用厂’提供交互式功能和使得用)”可以利用UNIX系统的功能,UNIX系统向用户提

供了两种友好的界面或接口:系统调用和命令;(3)UNIX系统具有一个可装卸的分层树型结构文件系统,该文件系统使用方便、搜索简单,(4)UNIX系统把所有外部设备都当成文件,并分别赋予它们对应的文件名。从而,用厂’可以

像使用文件那样使用任一设备而不必了解该设备的内部特性,这既简化了系统设计,又方便 了用)”,(5)UNIX系统核心程序的绝大部分源代码和系统_L的支持软件都用C语言编写。且UNIX 系统是一个开放式系统,即具有统一的用户接口,使得UNIX用户的应用程序可在不同的执 行环境下运行。

正是由于UNIX具有.上述这些特点,使得UNIX系统得到了广泛的应用和发展.12.UNIX操作系统为用户提供哪些接口?试举例说明.答;UNIX系统为用户提供两个接口,即面向操作命令的接口Shell和面向编程用户的接口: 系统调用。常见的Shell命令如:login, logout, vi, ernacs.印,rm, Is, cc,link,adducer,chown, dbx, date等;常见的系统调用如:ioctl, read, write, open, close, crest, excel, flock, stat, mount, fork, wait, exit, socket等.13·在你周围装有UNIX系统的计算机上,练习使用后台命令,管道命令等Shell的基木命 令。吞甘k,二

答:例1:用Shell谱言编制一Shell程序.该程序在用户输入年、月之后,自动打印输出该 年该月的日历: echo”Please input the month:” read month echo'Please input the year:” read year 第三章用户V理和配置份理

1.有A说,一个进程是山伪处理机执行的一个程序,这话对吗?为什么? 答:对。

因为伪处理机的概念只有在执行时刁存在,它表示多个进程在单处理机上并发执行的二个调 度单位。因此,尽V进程是动态概念,是程序的执行过程,但是,在多个进程并行执行时,仍然只有一个进程占据处理机执行,而其他并发进程则处于就绪或等待状态。这些并发进程 就相当干由伪处理机执行的程序。

2.试比较进程和程序的区别。

答:(1)进程是一个动态概念。而程序是一个静态概念.积序是指令的有序集介.无执行含 义.进程则强调执行的过程(2)进程具有并行特征(独立性,异步性).程序则没有.(3)不同的进程可以包含同一个程序,同一程序在执行中也可以产生多个进程。

3.我们说程序的并发执行将导致最终结果失去封闭性广这话对所有的程序都成立吗?举例说 明.答:并非所有程序均成立。如: Begin local“ Z K::10 print(x)End 上述程序中x是内部变量,不可能被外部程序访问,因此这段程序的运行不会受外部环境影 晌.4.试比较作业和进程的区别。

答:一个进程是一个程序对某个数据集的执行过程,是分配资源的摹本单位。作业是用于需 要计算机完成某项任务,而要求计算机所做工作的集合。一个作业的完成要经过作业提交,作业收容、作业执行和作业完成4个阶段。而进程是己提交完毕的程序所执行过程的描述,足资源分配的4本单位.其主要区别关系如下:(I)作业是用户向计算机提交任务的任务实体.在用户向计算机提交作业之后,系统将存储 在外存中的作业等待队列中等待执行。而进程则是完成用户任务的执行实体,是向系统申请 分配资源的基本单位。任一进积.只要它被创建,总有相应的部分存在于内存巾(2)一个作业可由多个进程组成.且必须至少由一个进积组成.但反过来不成立.(3)作业的概念主要用在批处理系统中.像Unix这样的分时系统中,则没有作」日 而进

程的概念则用在几乎所有的多道程序系统巾。

5.UNIXSystcm V中.系统程序所对应的正文段未被考虑成进程一上下文的一部分,为什么? 答:因为系统程序的代码被用户程序所共享,因此如果每个进程在保存进程I下文时,都将 系统程序代码放到其进程上下文中.则大大浪费了资源.因此系统程序的代码不放在进程上 下文中,而是统一放在核心程序所处的内存中.6.什么是临界区?试举一临界区的例子.答:临界区是指不允许多个并发进程交叉执行的一段程序。它是由于不同并发进程的程序段 共享公用数据或公用数据变量而引起的.所以它又被称为访问公用数据的那段程序。例如: getspace: Begin local g top=top-I End release(ad): Begin top-top+1 stack[top]=ad End 7.并发进程间的制约有哪两种?引起制约的原因是什么? 答:并发进程所受的制约有两种:直接制约和间接制约。直接制约是由并发进程互相共享对方的私有资源所引起的。

间接制约是由竞争共有资源而引起的。8.什么是进程间的互斥?什么是进程间同步? 答:进程间的互斥是指:一组并发进程中的一个或多个程序段,因共享某一公有资源而导致 它们必须以一个不许交叉执行的单位执行,即不允许两个以_L的共李该资源的并发进程同时

进入临界区。

进程间的同步是指:异jIIJF境下的一组并发进程因直接制约互相发送消息而进行互相合作、互相等待,各进程按一定的速度执行的过程。9.试比较P, V原语法和加锁法实现进程间互斥的区别。

答:互斥的加锁实现是这样的:当某个进程进入临界X之后,它将锁土临界区,直到它退出 临界区时为止。并发进程在申请进入临界区时.首先测试该临界区是否是I几锁的.如果该临 界区已被锁住.则该进V要等到该临界区开锁之后才有可能获得临界区。但是加锁法存在如 下弊端:(1)循环测试锁定位将报耗较多的CPU计算时间:(2)产生不公平现象.为此,P, V原语法采用信号量管理相应临界区的公有资源.信号量的数值仅能由PI V原语操作改变 而P, V原语执行期间不允许中断发生。其过程是这样的:当某个进程正在临界区内执行时.其他进程如果执行了P原语.则该进程并不像lock时那样因进不了临界区而返回到lock的 起点.等以后重新执行测试,而是在等待队列中等待山其他进程做V原语操作释放资源后,进入临界V,这时P原语才算真正结束。若有多个进程做P原语操作而进入等待状态之后 一旦有V原语释放资源,则等待进程中的一个进入临界区,其余的继续等待。

总之,加锁法是采用反堑测试lock而实现互斥的。存在CPU浪费和不公平现像,P.V原 语使用了信号量,克服了加锁法的弊端·r,14.设有5个哲学家.共享一张放有五把椅子的桌子,每人分得一把椅子。

但是.’桌子总共只有5支筷子,在每人两边分开各放一支。哲学家们在肚子饥饿时才试图分两次从两边抬

起筷子就餐。条件:(I)只有拿到两支筷子时,哲学家才能吃饭.(2)如果筷子己在他人手上,则该哲学家必须等待到他人吃完之后才能拿到筷子。(3)任,哲学家在自己未拿到两支筷子吃饭之前,决不放下自己手中的筷子。试

(1)描述一个保证不会出现两个邻座同时要求吃饭的通信算法.(2)描述一个既没有两邻座同时吃饭.又没有人饿死(永远拿不到筷子)的算法.(3)在什么情况下.5个哲学家全部吃不上饭? 解答:(l)、设信号量c[Ol-c[41.初始值均为1.分别表示i号筷子被拿(i=O.I.2.3.4).send(i):第i个哲学家要吃饭 begin P(c[il);P(c[i+l mod 5]): eat;V(cfi+I mod 51);V(c[i]): End;该过程能保证两邻座不同时吃饭.但会出规5个哲学家一人拿一只筷子.谁也吃不.1几饭的死倾

情况。

(2).解决的思路如下:让奇数号的哲学家先取右手边的筷子,让偶数号的哲学家先取左手边 的筷子.这样,任何一个哲学家拿到一只筷子之后,就己经阻止了他邻座的一个哲学家吃饭的

企图,除非某个哲学家一直吃下去,否则不会有人会饿死.send(i):第i个哲学家要吃饭 Begin If i mod 2==0 then ]P(c[i]),P(c[i+1]mod5))eat;V(c[i],c[i+l mod 5])} Else 考

P(c[i+1 mod 5])P(c[i])Eat V(c[i+l mod 5])V(c[iI)} End 15.什么是线程?试述线程与进程的区别,答:线程是在进程内用于调度和占有处理机的笨本单位.它山线程控制表、存储线程上下文 的用户栈以及核心栈组成.线程可分为用户级线程、核心级线程以及用户,/核心混合型线程 等类型。其巾用户级线程在用户态下执行,CPU调度算法和各线程优先级都由用户设置,与操作系统内核无关。核心级线程的调度算法及线程优先级的控制权在操作系统内核。混合 型线程的控制权则在用户和操作系统内核二者。线程与进程的主要区别有:(1)进程是资源管理的基本单位,它拥有自己的地址空间和各种资源,例如内存空间、外部 没备等了线程只是处理机调度的基本单位,它只和其他线程一起共享进程资源,胆自己没有 任何资源。

(2)以进积为单位进行处理机切换和调度时,山于涉及到资源转移以及现场保护等问题,将 导致处理机切换时间变长,资源利用率降低。以线程为单位进行处理机切换和调度时,由于 不发生资源变化,特别是地)II空H7的变化,处理机切换的时间较短,从而处理机效率也较高。

(3)对用户米说,多线程可减少用户的等待时间。提高系统的响应速度。例如,当一个进程 需要对两个不同的服务器进行远程过程调用时,对一无线程系统的操作系统米说AWN序等 待两个不同调用返回结果后才能继续执行,月.在等待巾容易发生进程调度.对于多线程系统 而言,则可以在同一进程中使用不同的线程同时进行远程过程调用,从而缩短进程的等待时 间。

(4)线程和进程一样,都有自己的状态.也有相应的同步机制,不过,由于线程没有单独的 数据和程序空间,因此,线程不能像进程的数据与程序那样.交换到外存存储空间.从而线 程没有挂起状态。

(5)进程的调度、同步等控制大多山操作系统内核完成,而线程的控制既可以Ill操作系 统内核进行,也可以山用户控制进行.第四章进程管理

1什么是分级调度?分时系统中有作业调度的概念吗?如果没有,为什么? 答:处理机调度问趣实际上也是处理机的分配问题。显然只有那些参与竞争处理及所必需的 资源都己得到满足的进程才能享有竞争处理机的资格。这时它们处于内存就绪状态.这些必 需的资源包括内存、外设及有关数据结构等。从而,在进程有资格竞争处理机之前,作业调 1变程序必须先调用存储管理、外设管理程序,并按一定的选择顺序和策略从输入井中选择出

几个处于后备状态的作业.为它们分配资源和创建进程.使它们获得竞争处理机的资格.另 外,由于处于执行状态下的作业一般包括多个进程,而在单机系统中.每一时刻只能有一个 进程占有处理机.这样,在外存中,除了处于后备状态的作业外,还存在处于就绪状态而等 待得到内存的作业。我们需要有一定的方法和策略为这部分作业分配空间。因此处理机调度 需要分级.一般来说.处理机调度可分为4级:(I)作业调度:又称宏观调度,或高级调度。

(2)交换调度:又称中级调度.其主要任务是按照给定的原则和策略,将处于外存交换区中 的就绪态或等待状态或内存等待状态的进程交换到外存交换区。交换调度主要涉及到内存管 理与扩充。因此在有些书本中也把它归入内存管理部分。

(3)进程调度:又称微观调度或低级调度.共主要任务是按照某种策略和方法选取一个处干 就绪状态的进程占用处理机。在确立了占用处理机的进程之后,系统必须进行进程上下文切 换以建立与占用处理机进程相适应的执行环境。(4)线程调度:进积中相关堆找和控制表等的调度.在分时系统中,一般不存在作业调度,而只有线程调度、进程调度和交换调度。这是因为在 分时系统中,为了缩短响应时间,作业不是建立在外存.而是直接建立在内存中.在分时系 统中,一旦用户和系统的交互开始,用户马上要进行控制。因此,分时系鱿g,没有作业提交

状态和后备状态。分时系统的输入信息经过终端缓冲区为系统直接接收,或立即处理,或经 交换调度暂存外存中.2.试述作业调度的主要功能。

答:作业调度的主要功能是:按一定的原则对外存输入井上的大量后备作业进行选择.给选 出的作业分配内存、输入输出设备等必要的资源,并建立相应进程,使该作业的相关进程获 褥竟争处理机的权利。“另外,当作业执行完毕时,还负责回收系统资源.3.作业调度的性能评价标准有哪些?这些性能评价标准在任何悄况下都能反映调度策略的优 劣吗? 答:对于批处理系统.山于主要用于计算,因而对于作业的周转时间要求较高。从而作业的平均周转时间或平均带权周转时间被用来衡量调度程序的优劣。但对于分时系统米说,平均 响应时间又被用来衡量调度策略的优劣.对于分时系统,除了要保证系统吞吐量大、资源 利用率高之外,还应保证用户能够容忍的响应时间.因此,在分时系统中.仅仅用周转时间 或带权周转时间来衡量调度性能是不够的。

对于实时系统,衡量调度算法优劣的主要标志则是满足用户要求的时限时间。4.进积调度的功能有哪些? 答:进程调度的功能有:(1)tid nRR4系统中所有进程的执行情况;(2)选择占有处理机的进程;

(3)进行进程_L下文切换。5.进V调度的时机有哪几种? 答:进程调度的时机有:(1)正在执行的进程执行完毕.这时如果不选择新的就绪进程执行,将浪费处理机资源.(2)执行中进程自己调用阻塞原语将自己阻塞起来进入睡眠等待状态.(3)执行中进程调用了P原语操作.从而因资源不足而被阻塞:或调用了V原语操作激活了 等待资源的进程队列。

(4)执行中进程提出I/O请求后被阻塞.(5)在分时系统中时间片己经用完。

(6)在执行完系统调用等系统程序后返回用户程序时,可看做系统进程执行完毕,从而调度 选择一新的用户进积执行。

(7)在CPU执行方式是可剥夺时,还有:就绪队列巾的某进程的优先级变得高于当前执行进 程的优先级,从而也将引发进程调度.6.进积上下文切换山哪几部分组成?描述进程上下文切换过程。答:进49上下文切换.I{以下4-7步骤组成:(1)决定是否作上下文切换以及是否允许作上下文切换.包括对进程调度原因的检六分析,以及当前执行进程的资格和CPU执行方式的检查等.在操作系统中,上下文切换程序并不 是每时侮刻都在检查和分析是否可作上下文切换,它们设置有适当的时机。

(2)保存当前执行进程的上下文.这里所说的当前执行进程,实际上是指调用一L下文切换程 序之前的执行进程。如果_L下文切换不是被那个当前执行进程所调用.且不属于该进程.则 所保存的上下文应是先前执行进程的上下文.或称为“老”进程上下文。显然.上下文切换程 序不能破坏,.老”进程的_L下文结构。

(3)使用进程调度算法,选择一处于就绪状态的进程。

(4)恢父或装配所选进程的上下文.将CPU控制权交到所选进程手中。

7.为什么说在进程上下文切换过程巾.上下文切换程序不能破坏“老”进程的上下文结构? :因为如果在进程上下文切换中破坏了老的进程上下文,等到CPU调度到该老进程执行,就不能正确地恢复其停止执行前的状态了。

第五章处理器管理

1.存储管理的主要功能是什么? 答:存储管理的主要功能包括以下几点:(1)在硬件的支持下完成统一管理内存和外存之间数据和程序段自动交换的虚拟存储(2)将多个虚存的一维线性空间或多维线性空间变换到内存的唯一的一维物理线性地(3)控制内外存之间的数据传输。(4)实现内存的分配和回收.(5)实现内存信息的共享与保护.2.什么是虚拟存储器?其特点是什么? 答:进程中的目标代码、数据等的虚拟地址组成的虚拟空间称为虚拟存储器。虚拟存储器 不考虑物理存储器的大小和信息存放的实际位置.只规定每个进n中相互关联信息的相对位 置。每个进程都拥有自己的虚拟存储器.且虚拟存储器的容量是山计算机的地址结构和寻址 方式来确定。实现虚拟存储器要求有相应的地址转换机构,以便把指令的虚拟地址变换为实 际物理地址:另外,由于内存空间较小,进程只有部分内容存放于内存中,待执行时根据需 要再调抬令入内存。3.实现地址重定位的方法有哪几类? 答:实现地址重定位的方法有两种:静态地址重定位和动态地址重定位。

(1)静态地址重定位是在虚空间程序执行之前!Li装配程序完成地址映射工作。静态重定位的 优点是不需要硬件支持,但是Q静态地址重定位方法进行地址变换无法实现虚拟存储器。静

态重定位的另一个缺点是必须占用连续的内存空间和难以做到程序和数据的共享。

(2)动态地址重定位是在程序执行过程中,在CPU访问内存之前山硬件地址变换机构将要访 问的程序或数据地址转换成内存地址。动态地址重定位的主要优点有: ①可以对内存进行非连续分配.②动态重定位提供了实现虚拟存储器的基础.③动态重定位有利于程序段的共享。形式化描述:略。

4.常用的内存信怠保护方法有哪几种?它们各自的特点是什么? 答:常用的内存保护方法有硬件法、软件法和软硬件结合保护法三种.上下界保护法是一种常用的硬件保护法。上下界存储保护技术要求为每个进程设置对上下界 寄存器.上下界寄存器巾装有被保护程序和数据段的起始地址和终止地址.在程序执行过积 中,在对内存进行访问操作时首先进行访问地址合法性检介,即检卉经过重定位之后的内存 地址是否在上、下界寄存器所规定的范围之内。若在规定的范围之内,则访问是合法的:否 则是非法的,并产生访问越界中断。

保护键法也是一种常用的软件存储保护法。保护键法为每一个被保护存储块分配一个单独的 保护键.在程序状态字中则设置相应的保护键开关字段.对不同的进程赋予不同的开关代码 以和被保护的存储块中的保护键匹配。保护键可以没臂成对读写同时保护的或只对读写进行 单项保护的。如果开关字段与保护键匹配或存储块未受到保护。则访问该存储块是允许的,否则将产生访问出错中断。

另外一种常用的硬软件内存保护方式是:界限存储器与CPU的用户态,核心态相结合的保 护方式.在这种保护方式下,用户态进程只能访问那些在界限寄存器所规定范困内的内存部 分.而核心态进程则可以访问整个内存地址空间。

5·如果把DOS的执行模式改为保护模式,起码应做怎样的修改?,答:如果要把DOS的执行模式改成保护模式,起码要为每一个进程设置一对上下界寄存器._L下界寄存器中装有被保护程序和数据段的起始地址和终止地址。在程序执行过程中,在对

内存进行访问操作时首先进行访问地址合法性检查.即检查经过重定位之后的内存地址是否 在上、下界寄存器所规定的范围之内。若在规定的范围之内,则访问是合法的;否则是非法 的,并产生访问越界中断。另外,还应该把指令的访问内存模式由访问实际物理地址改为山 逻粗地址变换为物理地址的方式。

6.动态分区式管理的常用内存分配算法有哪几种?比较它们各自的优缺点。

答;动态分区式竹理的常用内存分配算法有最先适应法(FF).最佳适应法((BF)和最坏适应法(wf)。(WF).优缺点比较: ①从搜索速度上看最先适应法最佳,最佳活应法和最坏适应法都要求把不同大小的空闲区按 大小进行排队.②从回收过程来看,最先适应法也是最佳,因为最佳适应法和最坏适应法都必须重新调整空 闲区的位置。③最佳适应法找到的空闲仪是最佳的,但是会造成内存碎片较多,影响了内存利用率,而最 坏适应法的内存碎片最少,但是对内存的请求较多的进程有可能分配失败。总之.三种算法各有所长,针对不同的请求队列,它们的效率和功能是不一样的.7.5.3节讨论的分伏式管理可以实现虚存吗?如果不能,需要怎样修改?试设计一个分区式管 理实现虚存的程序流程图.如果能,试说明理I妇.答:53节讨论的分区式管理不能实现虚存。如果要实现虚存,可以在分区的基础之上对每 个分区内部进行请求调页式管理。

程序流程图:略。

8.简述什么是N盖?什么是交换?攫盖和交换的区别是什么? 答:将程序划分为若干个功能_卜相对独立的程序段,按照程序的逻辫结构让那些不会同时执行的程序段共享同一块内存区的内存扩充技术就是拟盖。交换是折先将内存某部分的程序或 数据写入外存交换区,再从外存交换伙中调入指定的程序或数据到内存中来,并让其执行的 一种内存扩充技术。与蓬盖技术相比,交换不要求程序员给出程序段之间的菠盖结构.而且,交换主要是在进程或作业之间进行.而俊盖则主要在同一个作业或同一个进程内进行。另外 R盖只能投盖那些与理盖程序段无关的程序段。9.什么是页式管理?静态页式管理可以实现虚存吗? 答:页式管J吧妹是把各进程的虚拟空间划分为若干长度相等的页面,把指令按页面大小划分

后存放在内存中执行或只在内存中存放那些经常被执行或即将被执行的页面,而那些不被经 常执行以及在近期内不可能被执行的页面则存放于外存中.按一定规则调入的一种内存管理 方式。

静态页式管理不能实现虚存,这是因为静态页式管理要求进程或作业在执行前全部被装入内 存,作业或进程的大小仍受内存可用页面数的限制.l0.什么是请求页式管理?试设计和描述一个请求页式管理时的内存页面分配和回收算法(包 括缺页处理部分).答:请求页式管理是动态页式内存管理的一种,它在作业或进程开始执行之前,不把作业或 进程的程序段和数据段一次性的全部装入内存,而只装入被认为是经常反复执行和调用的工 作区部分。其他部分则在执行过程巾动态装入。请求页式管理的调入方式足,当需要执行某 条折令而又发现它不在内存时.或当执行某条指令需要访问其他数据或指令时,而这些指令 和数据又不在内存中.从而发生缺页中断,系统将外存中相应的页面调入内存。请求页式种 理的内存页面分配和回收算法: 略。

II请求页式管理中有哪几种常用的页面置换算法?试比较它们的优 答:比较常用的页面置换算法有: 立丁

(1)随机淘汰算法《randomglongram)。即随机地选择某个用户页面并将其换出。(2)轮转法RR(roundrobin).轮转法循同换出内存可用区内一个可以被换出的页.无论该页是 刚被梅讲或己多换讲内存很长时间。

(3)先进先出法FIFO(firstinfirstout), FIFO算法选择在内存驻留时间最长的一页将其淘汰。(4)最近最久未使用页面I换算法1.RU(least recently unused).该算法的推本思想是:当需 要淘汰某一页时,选扦离当前时间最近的一段时间内级久没有使用过的页面先淘汰。(5)RE淘汰算法OPT(optimalrcplaccmcntalgorithm)。该算法淘汰在访(ill串中将来再也不出 现的耀在离当前最远的位置上出现的页面。-14.什么是段式管理?它与页式管理有何区别? 答:段式管理就是将程序按照内容或过程(iii数)关系分成段,每段拥有自己的名字。一个用 户作业或进程所包含的段对应于一个二维线性虚拟空间,也就是一个二维虚拟存储器。段式 管理程序以段为单位分配内存,然后通过地址映射机构把段式虚拟地址转换成实际的内存物 理地址。【司页式管理时—样.段式管理也采用只把那些经常访问的段驻留内存.而把那 些在将来,—段时间内不被访问的段放入外存.待需要时自动调入相关段的方法实现二维 虚拟存储器。段式竹理和页式竹理的主要区别有:(1)页式管理中源程序进行编译链接时是将主程序、子程序、数据伙等按照线性空间的一维 地址顺序排列起来.段式管理则是将程序按照内容或过积(FJ数)关系分成段,每段拥有自己 的名字。一一个用户作业或进程所包含的段对应于一个二:维线性虚拟空间,也就是一个二 维虚拟存储器.(2)同动态页式管理一样,段式管理也提供了内外存统—管理的虚存实现.与页式管理不 同的是:段式虚存每次交换的是一段有惫义的信息,而不是像页式虚存管理那样只交换固定 大小的页,从而需要多次的缺页中断才能把所需信息完整地调入内存.(3)在段式针理中,段长可根据需要动态增长.这对那些需要不断增加或改变新数据或子程 序的段来说,将是非常有好处的.(4)段式管理便于对具有完整逻辑功能的信息段进行共享。

(5)段式管理便于进行动态链接,而页式管理进行动态链接的过程非常k杂。15.段式管理可以实现虚存吗?如央可以.简述实现方法。答:段式怜理可以实现虚存。

段式管理把程序按照内容或过程(函数)关系分成段,每段拥有自己的名字。一个用户作业或 进程所包含的段对应于一个二维线性虚拟空间(段号s与段内相对地址w),也就是一个二维 虚拟存储器。段式管理以段为单位分配内存,然后通过地址映射机构把段式虚拟地址转换成 实际的内存物理地址。只把那些经常访问的段驻留内存.而把那些在将来一段时间内不被访 问的段放入外存.待需要时产生缺段中断,自动调入.16.为什么要提出段页式管理?它与段式管理及页式管理有何区别? 答:因为段式管理和页式管理各有所长。段式管理为用户提供了一个二维的虚拟地址空间,反映了程序的逻辑结构,有利于段的动态增长以及共享和内存保护等,这极大地方便了用户。而分页系统则Ti效地克服了碎片,提高了存储器的利用效率。从存储管理的日的来讲,主要

是方便用户的程序设计和提高内存的利用率。所以人们提出了将段式管理和页式管理结合起 来让其互相取长补短的段页式管理。段页式管理与段式和页式管理相比,其访问时间较长 因此.执行效率低。

17.为什么说段页式管理时的虚拟地址仍是二维的?.答:因为在段页式内存管理中,对每一一段内的地址空间进行分页式管理只是为了克服在内 存分配过程中产:生的大量碎片,从而提高存储器的利用效率.它并没有改变段内地址空间 的一维结构,所以段页式内存管理中的A拟地址仍然和段式内存管理中的虚拟地址山样,是二维结构的。

18.段页式怜理的主要缺点是什么?有什么改进办法? 答:段页式管理的主要缺点是对内存中指令或数据进行存取时,至少需要对内存进行三次以 上的访问:第一次是山段表地址寄存器取段表始址后访问段表,山此取出对应段的页表在内 存中的地址.第三次则是访问灭表得到所要访问的指令或数据的物理地址.只有在访问了段 表和页表之后.第三次才能访问真正需要访问的物理单元.显然.这将大大降低CPU执行

折令的速度。改进办法是设置快速联想寄存器。在快速联想寄存器中.存放当前最常用的段 号s,页号p和对应的内存页面地址与其他控制项.当需要访问内存空间某一单元时,可在 通过段表、页表进行内存地址六找的同时,根据快速联想寄存器六找其段号和页号。如果所 要访问的段或页的地址在快速联想寄存器中.则系统不再访问内存中的段表、页表而直接把 快速联想寄存器中的值与页内相对地址d拼接起来得到内存地址.19.什么是局部性原理?什么是抖动州娜1什么办法减少系统的抖动现象? 答:局部性原理是指在几乎所有程序的执行过程中,在一段时间内,CPU总是集中地访问 程序中的某一个部分而不是对程序的所有部分具有平均的访问概率。抖动是指当给进程分配 的内存小于所要求的工作IX时,由于内存外存之间交换频繁,访问外存的时间和输入输出处

理时间大大增加.反而造成CPU因等待数据而空转,使得整个系统性能大大下降.在物理 系统中,为防止抖动的产生,在进行淘汰或科换时,一般总是把缺页进程锁住,不让其换出,从而防止抖动发生。防止抖动发生的另一个办法是设置较大的内存工作区。

第八章文件系统

1.什么是文件、文件系统?文件系统有哪些功能? 签:在计算机系统中.文件被解释为一组赋名的相关宇符流的集合.或者是相关记录的 集合.文件系统是操作系统中与管理文件有关的软件和数据.文件系统的功能是为用户建立文件.数销、读写修改和复制文件.以及完成对文件的按 名存取和进行存取控制。

2文件件系跳一般按什么分类?可以今为哪几类? 签.文件系统一般按性质,用途,组织形式.文件中的信息流向或文件的保护级别等 分类。

一按文件的性质与用途可以分为系统文件.库文件和用户文件。按文件的组织形式可以分 为普通文件,目录文件和特殊文件。按文件中的信息流向可以分为输入文件.抽出文件和佑 入/输出文件.按文件的保护级别可以分为只读文件.读写文件,可执行文件和不保护文件。3.什么是文件的逻样结构宁什么是记录? 答:文件的逻辑结构是用户可见的结钩,可分为字符流式的无结构文件和记录式的 有结构文件两大类.记录是一个其有特定意义的信息单位,幼该记录在文件中的逻辑地址(相对位置)与 记录名所对应的一组关键字,属性及其属性值所组成。

第九章外部设备管理

1.设备竹理的日标和功能是什么? 答:设备管理的目标是:选择和分配输入/输出设备以便进行数据传输操作:控制输入/箱

出设备和CPU(或内存)之间交换数据,为用户提供一个友好的透明接is,提高设备和设备之 间、CPU和设备之间。以及进积和进程之间的并行操作,以使操作系统获得最佳效率。设 备竹理的功能是:提供和进程竹理系统的接n:进行设备分配:实现设备和设备、设备和 CPU等之间的并行操作:进行缓冲区管理。

2.数据传送控$f]方式有哪几种?试比较它们各自的优缺点.答:数据传送控制方式有积序直接控制方式、中断控制方式、DMA方式和通道方式4种。程序直接控制方式就是由用户进程来直接控制内存或CPU和外围设备之间的数据传送。它 的优点是控制简单,也不需要多少硬件支持.它的缺点是CPU和外I*1设备只能串行-I_作;设备之间只能串行工作,无法发现和处理山于设备或其他硬件所产生的错误。中断控制方式是利用向CPU发送中断的方式控制外围设备和CPU之间的数据传送。它的优 点是大大提高了CPU的利用率且能支持多道程序和设备的并行操作。它的缺点是山于数据 缓冲寄存器比较小,如果中 山于中断次数的急剧增加,数较多,仍然占用了大量CPU时间:在外围设备较多时.造成CPU无法响应中断而出现中断丢失的现象:如果外闲

设备速度比较快,可能会出现CPU来不及从数据缓冲寄存器中取走数据而丢失数据的情况.DMA方式是在外围设备和内存之间开辟直接的数据交换通路进行数据传送。它的优点是除 了在数据块传送开始时需要CPU的启动指令,在整个数据块传送结束时需要发中断通知 CPU进行中断处理之外,不需要CPU的频繁千涉.它的缺点是在外困设备越来越多的情 况下.多个DMA控制器的同时使用,会引起内存地址的冲突并使得控制过程进一步复杂化 通道方式是使用通道米控制内存或CPU和外围设备之间的数据传送。通道是一个独立与 CPU的专管愉入/输出拄制的机构.它控制设备与内存直接进行数据交换.它有白己的通 道拓令。这些指令受CPU启动.并在操作结束时向CPU发中断信号.该方式的优点是进一 步减轻了CPU的工作负担,增加了计算机系统的并行i作程度.缺点是增加了额外的硬件,造价昂贵。-.3.什么是通道?试画出通道控制方式时的CPU.通道和设备的工作流程图。

答:通道是一个独立与CPU的专竹输入/愉出控制的机构.它控制设备与内存直接进行数 据交换。它有自己的通道指令.这些指令受CPU启动,并在操作结束时向CPU发中断信号.4.什么是中断什么叫中断处理咐么叫中断响应?”

答:中断是指计算机在执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得 CPU哲时中断当前正在执行的程序而转去执行相应的事件处理程序.待处理完毕后又返回 原来被中断处继续执行的过程.CPU转去执行相应的事件处理程序的过程称为中断处理.CPU收到中断请求后转到相应的事件处理程序称为中断响应.5.什么”“关中断?什么叫开中断?什么叫中断屏蔽? 答:把CPU内部的处理机状态字PS W的中断允许位清除从而不允许CPU响应中断叫做关 中断。设置CPU内部的处理机状态字Psw的中断允许位从而允许CPU响应中断叫做开中 断.中断屏蔽是指在中断请求产生之后。系统用软件方式有选择地封锁部分中断而允许其余部分 的中断仍能得到响应。

6.什么是陷阱?什么是软中断?试述中断、陷阱和软中断之间异同。

答:陷阱指处理机和内存内部产生的中断,它包括程序运算引起的各种错误.如地址非法、校验错、页面失效。存取访问控制错、从用户态到核心态的切换等都是陷阱的例子。软中断 是通信进程之间用来模拟硬中断的一种信号通信方式。

7.描述中断控制方式时的CPU动作过程。

答:(1)首先,CPU检查响应中断的条件是否满足。如果中断响应条件不满足,则中断处理无法进行。

(2)如果CPU响应中断,则CPU关中断。(3)保存被中断进R现场.(4)分析中断原因,调用中断处理子程序。(5)执行中断处理子程序.必

(6)退出中断.恢复被中断进程的现场或调度新进程占据处理机。(7)开中断,CPU继续执行。8.什么是缓冲?为什么要引入缓冲? 答:缓冲即是使用专用硬件缓冲器或在内存中划出一个区域用来暂时存放输入愉出数据的器 件.引入缓冲是为了匹配外设和CPU之间的处理速度,减少中断次数和CPU的中断处3'..时间,同时解决DMA或通道方式时的数据传输瓶颈问题。

9.设在对缓冲队列em, in和。ut进行竹理时,采用最近最少使用算法存取缓冲区,即在把 一个缓冲区分配给进程之后.只要不是所有其他的缓冲区都在更近的时间内被使用过,则该 缓冲区不再分配出去。试描述过程tah-buf(type, number)和add-buf(type, number).答:对每个缓冲区设置一个时间标志位,其取值为该缓冲区上次放入队列时的系统时间。take-buf(type, number){ 取出时间标志位最小的缓冲区

}

A add-bur(type, number){,把缓冲区放入队列,井获取当前系统时间赋给其时间标志位

洛 } 10.试述对缓冲队列cm, in和out采用最近级少使用算法对改善1/O操作性能了什于么好处? 答:采用最近最少使用算法可以保留那些在最近一段时间内使用次数较多的缓冲区.而这些 缓冲区继续被使用的可能性比较大,从而可以减少缓冲区分配和回收的次数.避免了频繁的 分配寸问收操作,所以可以改善I/O操作性能.11.用于设备分配的数据结构有哪些?它们之间的关系是什么?

答:用于设备分配的数据结构有:设备控制表DCT.系统设备表SDT.控制器表COCT和 通道控制表CHCT.SDF掀个系统一张.每个设备有一张DCT.每个控制器有一张COCT 每个通道有一张CHCT.SDF中有一个DCT指针.DCT中有一个COCT拓针,COC1‘中 有一个CI ICT指针。

12.设计一个设备分配的安全检六程序,以保证把某台设备分佗给某进程时不会出现死锁.答:参见教材72页避免死锁章节。

13.什么是1/0控制?它的主要任务是什么7 答::1八〕控制是指从用户进程的输入/愉出请求开始.给用户进程分配设备和启动有关设备 进行I/O操作.并在1/0操作完成之后响应中断,直至善后处理为止的整个系统控制过 程。

14.1/0控制可用哪几种方式实现?齐有什么优缺点? 答:I八〕控制过程可用三种方式实现:作为请求I八)操作的进程实现:作为当前进程的一 部分实现:由专门的系统进程-1/0进程完成。

第一种方式请求对应1/0操作的进程能很快占据处理机。但要求系统和I/O操作的进程 应具有良好的实时性。

第二种方式不要求系统其有高的实时性,但1/0控制过程要由当前进程负资.第三种方式增加了一个额外的进程开销,但用户不用关心1/o控制过程.Is设备驱动程序是什么?为什么要有设备驭动程序?用户进程怎样使川驱动程序? 答:设备驭动程序是驱动外部物理设备和相应DMA控制器或1/0控制器等器件.使之可

以直接和内存进行1/O操作的子程序的集合。它们负责设置相应设备有关寄存器的位,启 动设备进行1/O操作.指定操作的类型和数据流向等。设备驭动程序展蔽了直接对硬件操 作的细节。为编程者提供操纵设备的友好接口.用户进程通过调用设备驱动程序提供的接口 来使用设备W动程序。

第五篇:计算机文化基础课后习题答案

大学计算机文化基础课后习题答案

第1章

一、思考题(略)

二、单项选择题

1.B

2.B

3.B.C

5.D

6.D

7.B

8.A

9.A

10.D

11.B

12.A

13.C

14.A

15.D

三、填空题

1.21 2.101000101.01

3.567 8. 2k

4.100000001000 9.外码

14.655 360

5.100000001000 10.ASCII 15.字长

6.三、四

7. CAD 11.人工智能

12.计算机

13.1024

四、判断题

1.T 10.T 2.F 11.T 3.F 12.F

4.T 13.T

5.T 14.T

6.F 15.T

7.F

8.F

9.T

第2章

一、思考题(略)

二、单项选择题

1.C.B

3.C.C 5.A

6.D

7.B

8.B

9.B

10.C

11.B

12.A

13.D 14.B 15.D

三、填空题

1.寄存器

9.字长

2.微处理器 10.系统总线

3.外部设备

4.硬件系统和软件系统

5.地址码

8.处理器或CPU 13.用户

11.数据量

12.越宽

6.指令系统

7.计算器、控制器、存储器、输入设备和输出设备

14.高级语言 15.外部存储器

四、判断题

1.F 10.T 2.T 11.T 3.T 12.F

4.T 13.T

5.T 14.T

6.T 15.F

7.T 16.F

8.F

9.T

第3章

一、思考题(略)

二、单项选择题 1.D

2.B

3.D

4.D

5.B

6.B

7.A 8.C 9.D

10.A

11.D

12.C

13.C

14.B 15.C

16.C 17.A

三、填空题

1.【Shift+Delete】 2.打开控制菜单;关闭窗口 3.单击此命令将打开一个对话框;该命令已经起作用;该命令后有一个子菜单;该命令当前无法使用;快捷键;在不打开菜单时执行选择的命令 4.开始;关闭计算机;关闭 5.对象链接与嵌入 6.帮助和支持;“?”按钮

四、是非判断题 1.T 10.T 2.F 3.T 11.T

4.F

5.T

6.F

7.T

8.F

9.T

第4章

一、思考题

1.答:单击计算机屏幕左下角的“开始”菜单中的Word 2007图标,就可以打开Word 2007创建文档;单击Word 2007主界面右上角的关闭按钮,就可以关闭文档;单击计算机中已有的任意一个Word文档,就可以打开该文档。

2.答:首先选中 Word 2007文档中要操作的内容。对于复制,单击“剪贴板”命令组中的“复制”图标,然后移动光标到要添加内容的地方,单击“粘贴”命令,就可以完成选中内容的复制;对于移动,单击“剪贴板”组中的“剪切”图标,然后将光标指向文档中要移动到的地方,单击“粘贴”命令,就可以完成选中内容的移动。对于删除,在选中内容后,直接按Delete键就可以完成选中内容的删除;

3.答:先选中 Word 2007文档中要操作的内容。对于设置文字对齐方式,再单击“开始”选项卡-“段落”命令组中的几种对齐图标即可。对于设置段落行距,再单击“开始”选项卡-“段落”命令组右下角的小对角箭头,在出现的对话框中设置段落行距即可。

4.答:首先选中 Word 2007文档中要操作的文字内容。再单击“开始”选项卡-“字体”命令组中相应的字体、字号、文字颜色图标即可。

5.答:首先移动光标到要创建新表格的插入点处,再单击“插入”选项卡-“表格”命令,在出现的对话框中选择相应的表格项目即可创建新表格,并能指定表格的行高和列宽。

6.答:首先将光标移动到要操作的表格单元格,在出现的“表格工具”选项卡中选择“绘制表格”或“擦除”命令,即可对表格的单元格边框线进行手工添加或擦除,实现单元格的合并与拆分。

7.答:先选中要设置的Word文档,再单击“开始”选项卡-“页面设置”命令组中的“纸张大小”、“页边距”、“纸张方向”等命令即可进行页面设置。

8.答:工作簿是存储和处理数据的一个文件,工作表是由若干行和若干列构成的一个电子表格。一个工作簿由多个工作表组成,系统默认的每个工作簿有3个工作表,根据需要可以插入更多的工作表。

9.答:Excel 2007的基本数据单元是工作表中的单元格。单元格中可以直接表示各种类型的数据。单元格的地址由列字符和行号组成,有三种表示方法:相对地址、绝对地址、混合地址。

相对地址:由列字符和行号组成,如B5。绝对地址:在列字符和行号前分别加上$符号,如$B$5。混合地址:在列字符或行号前加上$符号,如$B5、D$5。

10.答:打开Excel 2007,系统自动建立的工作簿有三个工作表。如果还要添加工作表,先选定一个工作表标签,作为插入新工作表的位置,再单击“开始”选项卡“单元格”组“插入”命令右边的小三角,在出现的“插入”命令对话框中,选择“插入工作表”,则一张新的工作表被插入到选定的位置,重复以上操作可以插入更多的工作表。

11.答:在Excel 2007中先选中单元格,然后单击“开始”选项卡-“单元格”组的“格式”命令,可以直接设置单元格的格式。

12.答:首先选定数据区域,用鼠标指向被选定数据区域的边框线,当鼠标指针变为空心箭头时,按住鼠标左键拖动选定区域到目标位置,再释放鼠标,选定区域中的数据被移动到目标位置。如果在拖动鼠标的过程中按住Ctrl键,则选定区域中的数据被复制到目标位置。也可以选定数据区域后,利用剪切板上的剪切、复制、粘贴按钮实现数据的复制或移动。

13.答:打开 PowerPoint 2007,系统会自动建立演示文稿,此外,也可以打开现有的任意一个演示文稿,用改变文件名的方法,另存储需要建立的演示文稿。

14.答:打开 PowerPoint 2007演示文稿,在“开始”选项卡-“幻灯片”组中选择“版式”命令,可以在提供的各种版式中选择需要的版式。

15.答:打开 PowerPoint 2007演示文稿,单击“Microsoft Office 按钮”,选择“打印”旁的箭头,然后单击“打印预览”。在弹出的“打印预览”选项卡“打印”组中,单击“打印”命令,弹出“打印”窗口,在“打印内容”框中选择讲义,再选择一页内要打印的幻灯片数,按“确定”按钮就可进行讲义打印。

二、单项选择题 1.C 10.B 19.D 28.C 37.B 2.A 11.B 20.D 29.B 38.C 3.C 12.B 21.D 30.D

4.B 13.C 22.B 31.D

5.B 14.C 23.C 32.C

6.C 15.A 24.D 33.B

7.D 16.C 25.B 34.D

8.B 17.A 26.D 35.B

9.D 18.A 27.B 36.C

三、填空题

1..docX 2.光标左 3.光标

4.快速工具,保存

5.OFFICE,另存为 6.从内存中清除

7.剪贴板,剪切 8.剪贴板,粘贴

9.查找和替换 10.Enter,一个段落,新段落,格式 11.两,插入和绘制

12.选中文字 13.页面 14.页面,普通

15.打印预览 16..xlsx 17.Book1 Sheet1 18.相对地址,绝对地址,混合地址

四、判断题 1.F 10.F 2.F 11.F 3.T 12.F

4.F 13.F

5.F 14.F

6.F 15.T

7.F 16.T

8.T 17.F

9.T 18.T

第5章

一、思考题:

1.答:把多个具有独立功能的计算机通过通信设备及传输媒体互联起来,在通信软件的支持下,实现计算机间资源共享、信息交换或协同工作的系统,称为计算机网络。计算机网络的功能包括网络通信、资源管理、网络服务、网络管理和互动操作的能力。计算机网络技术是计算机技术与通信技术的结合。

2.答:常用的传输介质有两大类:有线和无线。(1)有线介质有:双绞线、同轴电缆和光纤。(2)无线介质有:无线电波、微波和红外线。

网络的主要连接设备有:网络适配器、集线器、交换机、中继器、网桥、路由器、网关、调制解调器等。

3.答:局域网:局域网指在有限的地理区域内构成的规模相对较小的计算机网络,其覆盖范围一般不超过十公里。局域网常被用于联接公司办公室、中小企业、政府机关或一个校园内分散的计算机和工作站,以便共享资源(如打印机、绘图仪)和交换信息。从介质访问控制方法的角度,局域网可分为共享介质式局域网与交换式局域网两类。

城域网:城域网是介于广域网与局域网之间的一种高速网络;城域网设计的目标是要满足几十公里范围内的大量企业、机关、公司的多个局域网互连的需求;实现大量用户之间的数据、语音、图形与视频等多种信息的传输功能;城域网在技术上与局域网相似。广域网:广域网也称为远程网;覆盖的地理范围从几十公里到几千公里;覆盖一个国家、地区,或横跨几个洲,形成国际性的远程网络;通信子网主要使用分组交换技术;它将分布在不同地区的计算机系统互连起来,达到资源共享的目的。

4.答:星型:建网容易,对中心节点依赖大。树型:适于相邻层通信较多情况。总线型:结构简单灵活性能好。环型:数据单向流动。

5.答:域名是一种字符型的主机命名机制,因为采用统一的IP地址来识别因特网上的主机,屏蔽底层的物理地址,虽然给应用取得了很大的方便。然而,对于一般用户来说,以点分隔开的数字型的IP地址方式还是太抽象,难于记忆和理解。为了便于一般用户使用所以需要它。

6.Internet的中文名称是因特网,是一组全球信息资源的名称,这些资源的量非常大,甚至没有人通晓Internet 的全部内容。它的最基本的功能有:网络信息服务(WWW); 电子邮件(E-Mail)服务;文件传输服务(FTP);远程登录服务(Telnet);电子公告牌服务(BBS);网络新闻服务;电子商务;网上交际。

7.答:HTTP是超超文本传输协议,即Hypertext Transfer Protocol,它是在客户机/服务器模型上发展起来的信息分布方式。通过客户机和服务器彼此互相发送消息的方式进行工作。

8.答:是实现模拟信号与数字信号的转换。数字信号转换成为模拟信号,称为调制;模拟信号转换为数字信号,称为解调。

9.答:网络操作系统的主要功能有以下四项:网络通信、资源管理、提供网络服务和提供网络接口。

10.答:IP地址是由地址类别、网络号与主机号三部分组成的,如下图所示。其中,地址类别用来标识网络类型,网络号用来标识一个逻辑网络,主机号用来标识网络中的一台主机。一台Internet主机至少有一个IP地址,而且这个IP地址是全网惟一的。

IP地址是以32位二进制数的形式表示的,这种形式非常不适合阅读和记忆,因此,为了便于用户阅读和理解IP地址,Internet管理委员会采用了一种“点分十进制”表示方法来表示IP地址。

IP地址按照网络规模大小以及使用目的的不同,可以将Internet的IP地址分为5种类型,包括A类、B类、C类、D类和E类。

二、选择题: 1.A

2.A

3.C

4.D

5.C 8.D

9.B 10.D 11.D 12.D 15.D

16.A 17.C 18.D 19.D 22.D

23.A 24.B 25.A 26.C 29.D

30.B 31.B 32.D 33.C 36.B

37.A 38.B 39.C 40.A 43.A

44.C 45.B 46.D 47.C

三、填充题:

6.C

7.C

13.C 14.A 20.A 21.C

27.C 28.B 34.A 35.C 41.B 42.C 48.B 49.B 1.网络拓扑

2.传输层、网际层 3.区域名、类型名 4.Ipconfig 5.服务器 6.邮件服务器(@右边的字符表示邮件服务器、@左边的字符表示邮箱)7.服务器 8.物理层 9.附件

10.同轴电缆、双绞线、光纤、无线方式 11.局域网、城域网、广域网

12.域名、IP地址 13.电子邮件、万维网、文件传输和远程登录 14.

32、128

15.域名解析 16.局域网、城域网、广域网 17.Ping 18.服务器 19.网络地址、主机地址 20.本地计算机、远程计算机、远程计算机、本地计算机

四、判断题

1.F

2.T

3.F

4.F

5.T

6.T

7.T

8.T 9.F

10.T

11.T

12.F

13.T

14.F

15.T 16.T

17.T

18.T

19.T

20.T

第6章

一、思考题

二、单项选择题

1.A 9.A 2.B.10.D 3.C

4.A

5.A

6.B

7.D

8.A

三、填空题

1.说明部分和执行部分 5.范围;存储方式

2.机器语言、汇编语言 6.分程序结构

3.面向对象

4.编译型

8.编译;连接

7.算法设计;编写代码

9.自顶向下;逐步求精

13.正确性;可读性

10.顺序结构;分支结构;循环结构

11.当型循环结构;直到型循环结构

12.确定性;有穷性;输入;输出;可执行性

15.迭代法

14.数值计算;非数值计算

四、判断题

1.T 9.F 2.F 10.F 3.F 11.F

4.F 12.T

5.T 13.T

6.F

7.T

8.T

第7章

一、思考题 略

二、单项选择题 1.B 10.D 19.C 28.C 2.C 11.D 20.D 3.A 12.A 21.D

4.D

13.B 22.A

5.B

14.A 23.B

6.B 15.B 24.7.C 16.B 25.D

8.D 17.C 26.B

9.D 18.D 27.B

三、填空题

1.人工管理

文件管理

数据库系统 3.选择

2.概念数据模型

逻辑数据模型

物理数据模型

4.字段

5.约束

6.安全性保护

7.除法

8.实体

9.层次数据模型

10.记录结构 11.内模式

12.数据结构

数据操作

完整约束

13.概念

数据模型

四、判断题

1.F 9.T 2.T 3.T

4.F

5.T

6.T

7.T

8.T

第8章

一、思考题

1.多样性、集成性、交互性、数字化。2.MPC的基本硬件结构有以下7部分:(1)高功能、速度快的CPU;(2)可管理、控制各种极口与设备的配置;(3)具有一定容量(尽可能大)的存储空间;(4)高分辨率显示接口与设备;(5)可处理音响的接口与设备;(6)可处理图像的接口与设备;(7)可存放大量数据的配置

MPC先后公布了3个等级标准:MPC1.0(1991年10月)、MPC2.0(1993年5月)、MPC3.0(1995年6月)。3.MPEG专门用于视频编码的标准制定。

MPEG-1(VCD标准)为工业级标准而设计,可适用于不同宽带的设备,如CD-ROM、VIDEO-CD、CD-1,它实用于传输1.5Mbit/s数据传输率的数字存储媒体运动图像及其伴音的编码MPEG-2(DVD标准)设计的目标是高级工业标准的图像质量以及更高的传输率,主要针对高清晰电视(HDTV)的需要,传输率在3~10Mbit/s间,与MPEG-1兼容。

MPEG-4很好地结合了前两者的优点,是超低码率运动图像和语言的压缩标准,它不仅针对一定比特率下的视频、音频编码,更加注重媒体系统的交互性和灵活性。主要应用于视像电话、视像电子邮件、电子新闻等,其传输速率要求较低,在4800~64KBIT/S之间。4.主要有3种:CCITTG系列声音压缩标准、MP3压缩标准、MPEG音频压缩MP3是有损压缩。

5.关键技术:压缩技术、存储技术。应用领域:教育、娱乐、商业、电子出版、网络等。

6.主要区别有以下两点:(1)DVD采用MPEG-2编码,VCD采用MPEG-1编码;因此DVD的图像清晰。(2)DVD的音响效果比VCD好。

7.多媒体输入/输出设备除常规配置的鼠标、显示器、打印机、CD-ROM驱动器等设备外,还包括光笔、数码相机、触摸屏、扫描仪、数字化仪、摄影机、刻录光驱、录像机、大屏幕投影仪、音箱、录音机。

8.分为五种类型:分别是感觉媒体、表示媒体、表现媒体、存储媒体、传输媒体。9.略。见表示7-1。

10.略。见表示7-2。

二、单项选择题

1.C

2.A

3.C

4.B

5.C

6.A

7.D

8.C

9.A

10.A

11.D

12.D

13.B

14.A

15.B

二、填空题

1.无损压缩编码

有损压缩编码

混合编码。

2.矢量图文件中存储的是一组描述各个图元的大小、位置、形状、颜色、维数等属性的指令集合。对图形中的各个图元进行缩放、移动、旋转而不失真,而且它占用的存储空间小。

位图文件中存储的是构成图像的每个像素点的亮度、颜色。对图像放大和缩小要失真,占用的空间比矢量文件大。

3.Bit 4.采样、量化、编码

5.二进制代码 6.采样频率

量化位数(即采样精度)

声道数

7.图形文件以矢量图方式存储。图像文件以位图方式存储。8.CD-R、CD-RW、DVD±R/RW 9.光驱

声卡 10.逐帧动画

区间动画 11.JEPG 12.光盘 13.采样 14.帧 15.无损压缩和有损压缩。

四、判断题

1.T

2.T

3.F

4.T

5.F

6.T

7.T

8.T

9.T

10.F 11.T

12.F

13.T

14.F

15.F

第9章

一、思考题(略)

二、单项选择题 1.A 2.C 10, A

11.C

三、填空题

1.加密;解密

2.n(n-1)/2

3.私钥

4.混合加密

5.自主访问

6.包过滤;应用代理

7.包过滤

8.自我复制

9.破坏性;传染性;隐蔽性

10.蠕虫;木马

四、判断题 3.A 12.C

4.B 13.B

5.D

14.C

6.B 15.B

7.A

8.A

9.B 1.T 2.T 3.F 4.T 5.T 6.F 7.T 8.T 9.T 10.T 11.F 12.T

一、思考题(略)

二、单项选择题

1.A 2.B 3.B

三、填空题

1.文件压缩 2.P2P

四、是非判断题

1.T 2.F 3.T

13.F 14.T 15.T

第10章

4.D

3.图片查看软件

4.T

5.F

6.T

4.多线程5.光盘刻录

计算机操作系统 课后习题答案 张尧学
TOP