第一章:网络操作系统概论1、什么是计算机系统?计算机系统是怎样构成的?答:计算机系统是一种按用户的要求接收和存储信息、自动进行数据处理并输出结果信息的系统。计算机系统包括硬件系统和软件系统两部分。2、什么是操作系统?操作系统在计算机系统中的作用和地位?答:操作系统是计算机系统中的一个系统软件。它能有效地组织和管理计算机系统中的硬件及软件资源,合理地组织计算机的工作流程,控制程序的执行,方便用户使用,并能使计算机系统高效地运行。操作系统是硬件和软件的桥梁,是计算机资源的管理者。硬件资源在操作系统的管理下调配有序、协调工作;操作系统又是人机交互的接口,人们通过命令或系统调用来控制计算机的运行。所以,离开了操作系统,计算机就难以高效地运转。3、操作系统管理计算机系统的资源有哪些?答:操作系统管理计算机系统的资源有硬件资源和软件资源。硬件资源主要有处理机、主存储器、辅存储器以及各种类型的输入/输出设备;而各种程序和数据则是计算机的软件资源。4、请从资源管理的角度说明操作系统的主要功能?答:从资源管理的角度看,操作系统的主要功能是组织和管理计算机系统中的硬件和软件资源。操作系统根据用户对各种资源的需求情况,资源的当前分配和使用情况以及有关的资源进行调度,并对资源进行有效的组织和管理。5、操作系统有哪些基本特征?答:操作系统的基本特征有并发性、共享性和随机性。并发性是指在计算机系统中同时存在若干个运行着的程序,宏观上并行微观上串行。共享性指操作系统程序与多个用户和谐共用系统中的各种资源,对资源的共享一般有两种方式:互斥共享和同时共享。随机性是指操作系统处什么样的状态之中是无法确切知道的,它强调了操作系统的设计与实现时要充分考虑各种各样的可能性。6、叙述各类操作系统的工作方式及特点?答:操作系统的类型主要有批处理操作系统、分时操作系统、实时操作系统、桌面操作系统、嵌入式操作系统、网络操作系统、分布式操作系统七大类。批处理操作系统:将单个的客户作业组成一批作业输入计算机中处理。批处理操作系统分为单道批处理和多道批处理系统。单道系统每次只将一个作业调入内存,占用处理机直至结束;多道系统将多个作业调入内存,处理机以切换方式进行服务,极大提高了作业处理能力。批处理系统不适合交互式作业。分时系统指用户通过终端设备与计算机交互来运行各自的作业,并且共享一个计算机系统而互不干扰。系统采用时间片的方式处理用户的请求。实时操作系统能使计算机在规定的时间内及时响应外部事件的请求,同时完成事件的处理。主要特征是及时性、实时性、高可靠性、高过载防护性。桌面操作系统主要用于个人办公、处理文稿等事务,更多地被人们在桌面上直接使用。嵌入式操作系统广泛应用在当代电子、电器和智能机械设备上,它很灵活,能够通过装卸某此模块来达到系统所要求的功能。网络操作系统是基于计算机网络的,其目标是相互通信及资源共享。分布式操作系统将大量的计算机通过网络连结在一起,可以获得极高的运算能力及广泛的数据共享。7、比较批处理系统、分时系统以及实时操作系统之间的相同点和不同点?答:8、在什么情况下应该采用批处理方式,什么情况下应考虑分时策略?答:批处理方式适合将零散的作业组成一批一次处理;分时策略主要考虑到多用户及交互性。9、为什么要把批处理方式和分时方式结合起来,这样的结合有什么特点?答:10、实时操作系统主要有哪些特征?答:及时性、实时性、高可靠性、高过载防护性。11、以下场合应选用什么类型的操作系统?答:导弹控制-实时操作系统;国家统计局-批处理或分时操作系统;汽车发动机点火控制-实时操作系统;火车订票系统-网络操作系统;网络电子游戏-网络操作系统。12、网络操作系统和分布式操作系统有何不同?答:共同点是均可共享资源及相互通信,主要区别在于分布式操作系统还能够共享运算处理能力。13、网络操作系统有什么特点?一般采用什么样的结构?答:主要特点有两个方面:一是运行在核心态的内核;二是运行在用户态的并以客户机/服务器方式运行的进程层。网络操作系统一般采用客户机/服务器结构模式。14、为什么说客户机/服务器结构适宜在网络操作系统上使用?答:这种结构将操作系统分成若干个小的并且自包含的分支,每个分支运行在独立的用户进程中,不同的进程可以运行在不同的处理机或计算机上,从而使操作系统自然地具有分布式处理的能力。所以说适应在网络操作系统上使用。15、名词解释:整体式结构:先确定操作系统的总体功能,然后将总功能分解为若干个子功能,再按照功能将大的模块分解为小的模块。此时操作系统是一个有多种功能的系统程序,可以看成一个整体模块。层次式结构:把操作系统的所有功能模块,按功能流图的调用次序,分别将这些模块排列成若干层,各层之间的模块只能是单向依赖或单向调用关系。微内核结构:微内核提供一组最基本的服务,并具有很好的扩展性,也可向安装模块提供一个接口,就这是采用客户机/服务器结构,也称为微内核结构的操作系统。第二章:1、什么是进程?给出进程的定义。答:进程是具有一定独立功能的程序在某个数据集合上的一次运行活动,是系统进行资源分配的一个独立单位。进程分为系统进程和用户进程。2、操作系统中为什么要引入进程?进程和程序有什么区别和联系?答:程序是静态的,为了深刻描述程序动态执行的过程,操作系统需要引入进程的概念,以掌控程序执行过程中的动态变化。进程和程序的主要联系是:进程是由程序、数据和进程控制块三部分组成,一个进程的运行目标是执行它所对应的程序,如果没有程序,进程就失去了存在的意义。它们的区别是:程序是静态的,而进程是动态的。进程是程序的一个执行过程,而进程是为了程序的一次执行而暂时存在的。3、进程有哪些基本状态?它们的变化关系是怎么样的?答:进程的基本状态有运行状态、就绪状态和等待(阻塞或封锁)状态三种。它们的变化关系主要有:就绪状-》运行态(获得CPU);运行态-》就绪态(时间片用完);运行态-》等待态(等待事件发生);等待态-》就绪态(被阻塞的原因消失)。4、系统中有n(n1)个进程,在任一时刻,处于运行、就绪和等待状态的进程最多、最少各有几个?答:在单处理机系统中,任一时刻,处于运行状态的进程最多只有一个,最少为0个;处于就绪状态的进程最多有n-1个,最少为0个;处于等待状态的进程最多有n个,最少有0个。5、进程控制块PCB的作用是什么?其主要内容有哪些?进程能否修改访问自己的进程控制块内容?答:操作系统利用PCB来描述进程的基本情况以及进程的运行变化过程,PCB是进程存在的唯一标志。进程控制块的内容可以分成调度信息和现场信息两大部分。调度信息供进程调度时使用,描述了进程当前所处的状况,包括进程名、进程号、存储信息、优先级、当前状态、资源清单、家族关系、消息队列指针和当前打开文件等。现场信息刻画了进程的运行情况,由于每个进程都有自己专用的工作存储区,其它进程运行时不会改变它的内容,所以PCB中的现场信息只记录那些可能会被其它进程改变的寄存器,如程序状态字、时钟、界地址寄存器等。一旦中断进程的运行,必须把中断时刻的上述内容记入进程控制块的现场信息。所以进程可以修改访问自己进程控制块的内容。6、什么是临界区?什么是相关临界区?对相关临界区的管理有哪些要求?答:若系统中的某些资源一次只允许一个进程使用,这类资源称为临界资源,而在进程中访问临界资源的那一段程序称为临界区。如果有若干进程共享某一临界区,则该临界区称为相关临界区。对相关临界区的管理要求是实行互斥,保证在同一时刻只有一个进程访问临界区。对相关临界区的调度原则可归纳为:有空让进、无空等待、多中择一、有限等待、让权等待。7、若用PV操作管理某一组相关临界区,其信号量S的值在〔-1,1〕之间变化,当S=-1、S=0、S=1时,它们各自的物理含义是什么?答:当S=1时,表示该类资源可以分配;当S=0时,表示该类资源已被占用,无可分配资源;当S=-1时,表示该类资源不可分配且有一个进程请求该资源。(PV操作只做+-1运算,P操作请求资源,执行一次将S-1。V操作释放资源,执行一次将S+1)。8、两个并发执行的进程A和B的程序如下:进程A进程BRepeatRepeatN:=N+5;打印N的值;Untilfalse;N:=0;Untilfalse;其中N为整数,初值是4。若进程A先执行了三个循环后,进程A和进程B又并发执行了一个循环,写出可能出现的打印值,并回答正确的打印值应该是多少?请用P、V操作进行管理,使进程A和B并发执行时不会出现与时间有关的错误。答:A执行三个循环之后,N的值为19,又与B并发执行一个循环,则N的值为24。如用P、V操作管理,进程如下:进程A进程BRepeatRepeatN:=N+5;P(N);V(N);打印N的值;p(N);V(N);Untilfalse;N:=0;Untilfalse;9、为什么要引入线程?线程和进程之间的区别和联系是什么?答:线程可以提高系统内程序并发执行的级别,可以进一步提高系统效率。线程和进程之间的联系是:线程是进程中的一个实体,是CPU调度和分派的基本单位。区别是进程是一个资源的拥有者,而线程自己基本上不拥有系统资源,只拥有少量在运行中必不可少的资源,但它可与同属一个进程的其它线程共享进程所拥有的全部资源。10、进程调度的作用是什么?引起进程调度的因素有哪些?答:在多道程序设计环境中,进程数往往多于处理机数,这将导致多个进程互相争夺处理机。进程调度的作用是记录系统中所有进程的执行状况,根据一定的调度算法,从就绪队列中选出一个进程来,把CPU分配给它。引起进程调度的因素主要有:正在执行的进程运行完毕、正在执行的进程进入等待状态、进程的进间片用完、就绪队列中某个进程优先级高于正在运行进程的优先级。总之,当一个进程让出处理机,就调度另一个进程占用处理机以运行。11、在一个单处理机的多道程序设计系统中,现在两道作业并发,其中一道以计算为主0,另一道以输入/输出为主,应该如何赋予它们的优先数?为什么?答:优先数指用数字代表进程优先级的高低,优先级高的进程可以优先占用处理机。以计算为主的作业,要占用大部分的处理机时间,而以输入/输出为主的作业,占用处理机的时间相对较少,所以在赋予优先数时,以计算为主的作业的优先级要高于以输入/输出为主的作业。12、若就绪队列中的进程按优先数从大到小顺序排列,当有进程加入就绪队列时,应按它的优先数排入相应的位置,试就单向链接的方式写出实现进程入队的程序。答:在单向链接中,同一队列中的进程通过进程控制块中的队列指针联系起来,前一进程的进程控制块中的指针值是它下一个进程控制块的地址,队列中最后一个进程的进程控制块中的指针值置为“0”。所以,在写程序时就修改队列中进程控制块的指针值。(答案待改进)13、当进程调度选中一个进程后,怎么样才能让它占用处理机?答:当进程调度选中一个进程后,把CPU分配给该进程,即把选中进程的进程控制块内有关的现场信息,如程序状态字、通用寄存器等内容送入处理机相应的寄存器中,从而让它占用CPU运行。进程调度实际上完成了将一台物理的CPU转变成多台虚拟CPU的工作。14、存储管理的主要功能有哪些?答:存储管理的主要功能应包括:1、内存的分配和回收;2、存储共享;3、存储保护;4、“扩充”内存容量。15、虚拟存储器是什么?为什么要引入虚拟存储器?答:虚拟存储器是指利用大容量的外存来扩充内存,产生一个比实际内存空间大得多的、逻辑的虚拟内存空间。引入虚存技术,可以有效地支持多道程序系统的实现和大型程序运行的需要,从而增强系统的处理能力。实现虚存的硬件支持:1、足够大的外存;2、有一定容量的内存;3、最主要的是硬件提供实现虚/实地址映射的机制。16、有一个虚拟存储系统,分配给某进程3页内存,开始时内存为空,页面访问序列如下:65432154365432165。1)若采用先进先出页面置换算法(FIFO),缺页次数是多少?答:顺序:65432154365432165页1:65432154365432165页2:6543215436543216页3:654321543654321