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

第一章绪论1.什么是操作系统的基本功能答:操作系统的职能是管理和控制汁算机系统中的所有硬、软件资源,合理地组织计算机工作流程,并为用户提供一个良好的工作环境和友好的接口;操作系统的基本功能包括:处理机管理、存储管理、设备管理、信息管理文件系统管理和用户接口等;2.什么是批处理、分时和实时系统各有什么特征答:批处理系统batchprocessingsystem:操作员把用户提交的作业分类,把一批作业编成一个作业执行序列,由专门编制的监督程序monitor自动依次处理;其主要特征是:用户脱机使用计算机、成批处理、多道程序运行;分时系统timesharingoperationsystem:把处理机的运行时间分成很短的时间片,按时间片轮转的方式,把处理机分配给各进程使用;其主要特征是:交互性、多用户同时性、独立性;实时系统realtimesystem:在被控对象允许时间范围内作出响应;其主要特征是:对实时信息分析处理速度要比进入系统快、要求安全可靠、资源利用率低;3.多道程序multiprogramming和多重处理multiprocessing有何区别答;多道程序multiprogramming是作业之间自动调度执行、共享系统资源,并不是真正地同时值行多个作业;而多重处理 multiprocessing系统配置多个CPU,能真正同时执行多道程序;要有效使用多重处理,必须采用多道程序设计技术,而多道程序设计原则上不一定要求多重处理系统的支持;6.设计计算机操作系统时与那些硬件器件有关运算器、控制器、存储器、输入设备、输出设备第二章作业管理和用户接口2.作业由哪几部分组成各有什么功能答:作业由三部分组成:程序、数据和作业说明书;程序和数据完成用户所要求的业务处理工作,作业说明书则体现用户的控制意图;3.作业的输入方式有哪几种各有何特点答:作业的输入方式有5种:联机输入方式、脱机输入方式、直接耦合方式、SPOOLING Simultaneous Peripheral OperationsOnline系统和网络输入方式,各有如下特点:1联机输入方式:用户和系统通过交互式会话来输入作业;2脱机输入方式:又称预输入方式,利用低档个人计算机作为外围处理机进行输入处理,存储在后备存储器上,然后将此后援存储器连接到高速外围设备上和主机相连,从而在较短的时间内完成作业的输入工作;3直接耦合方式:把主机和外围低档机通过一个公用的大容量外存直接耦合起来,从而省去了在脱机输入中那种依靠人工干预宋传递后援存储器的过程;4SPOOLING系统:可译为外围设备同时联机操作;在SPOOLING系统中,多台外围设备通过通道或DMA器件和主机与外存连接起来,作业的输入输出过程由主机中的操作系统控制;(5)网络输入方式:网络输入方式以上述几种输入方式为基础,当用户需要把在计算机网络中某一台主机上输入的信息传送到同一网中另一台主机上进行操作或执行时,就构成了网络输入方式;4.试述spooling系统的工作原理6.操作系统为用户提供哪些接口它们的区别是什么答:操作系统为用户提供两个接口,一个是系统为用户提供的各种命令接口,用户利用这些操作命令来组织和控制作业的执行或管理计算机系统;另一个接口是系统调用,编程人员使用系统调用来请求操作系统提供服务,例如申请和释放外设等类资源、控制程序的执行速度等;8.什么是系统调用系统调用与一般用户程序有什么区别与库函数和实用程序又有什么区别答:系统调用是操作系统提供给编程人员的唯一接口;编程人员利用系统调用,在源程序一级动态请求和释放系统资源,调用系统中已有的系统功能来完成那些与机器硬件部分相关的工作以及控制程序的执行速度等;因此,系统调用像一个黑箱子那样,对用户屏蔽了操作系统的具体动作而只提供有关的功能;它与一般用户程序、库函数和实用程序的区别是:系统调用程序是在核心态执行,调用它们需要一个类似于硬件中断处理的中断处理机制来提供系统服务;9.简述系统调用的实现过程;答;用户在程序中使用系统调用,给出系统凋用名和函数后,即产生一条相应的陷入指令,通过陷入处理机制调用服务,引起处理机中断,然后保护处理机现场,取系统调用功能号并寻找子程序入口,通过入口地址表来调用系统子程序,然后返回用户程序继续执行;第三章用户管理和配置管理2.试比较进程和程序的区别;答:1进程是一个动态概念,而程序是一个静态概念,程序是指令的有序集合,无执行含义,进程则强调执行的过程;2进程具有并行特征独立性,异步性,程序则没有;3不同的进程可以包含同一个程序,同一程序在执行中也可以产生多个进程;4.试比较作业和进程的区别;答:一个进程是一个程序对某个数据集的执行过程,是分配资源的基本单位;作业是用于需要计算机完成某项任务,而要求计算机所做工作的集合; 一个作业的完成要经过作业提交,作业收容、作业执行和作业完成4个阶段;而进程是已提交完毕的程序所执行过程的描述,足资源分配的基本单位;其主要区别关系如下:1作业是用户向计算机提交任务的任务实体;在用户向计算机提交作业之后,系统将存储在外存中的作业等待队列中等待执行;而进程则是完成用户任务的执行实体,是向系统申请分配资源的基本单位;任一进程,只要它被创建,总有相应的部分存在于内存中;2一个作业可由多个进程组成;且必须至少由一个进程组成,但反过来不成立;3作业的概念主要用在批处理系统中;像Unix这样的分时系统中,则没有作业概念;而进程的概念则用在几乎所有的多道程序系统中;6.什么是临界区试举一临界区的例子;答:临界区是指不允许多个并发进程交叉执行的一段程序;它是由于不同并发进程的程序段共享公用数据或公用数据变量而引起的;所以它又被称为访问公用数据的那段程序;例如:getspace:Begin local gtop=top-1Endreleasead:Begintop’top十1stacktop=adEnd8.什么是进程间的互斥什么是进程间同步答:进程间的互斥是指:一组并发进程中的一个或多个程序段,因共享某一公有资源而导致它们必须以一个不许交叉执行的单位执行,即不允许两个以上的共享该资源的并发进程同时进入临界区;进程间的同步是指:异步环境下的一组并发进程因直接制约互相发送消息而进行互相合作、互相等待,各进程按一定的速度执行的过程;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.节讨论的分区式管理可以实现虚存吗如果不能,需要怎样修改试设计一个分区式管理实现虚存的程序流程图;如果能,试说明理由;答:节讨论的分区式管理不能实现虚存;如果要实现虚存,可以在分区的基础之上对每个分区内部进行请求调页式管理;8.简述什么是覆盖什么是交换覆盖和交换的区别是什么答:将程序划分为若干个功能上相对独立的程序段,按照程序的逻辑结构让那些不会同时执行的程序段共享同一块内存区的内存扩充技术就是覆盖; 交换是指先将内存某部分的程序或数据写入外存交换区,再从外存交换区中调入指定的程序或数据到内存中来,并让其执行的一种内存扩充技术;与覆盖技术相比, 交换不要求程序员给出程序段之间的覆盖结构,而且,交换主要是在进程或作业之间进行,而覆盖则主要在同一个作业或同一个进程内进行;另外,覆盖只能覆盖那些与覆盖程序段无关的程序段;9.什么是页式管理静态页式管理可以实现虚存吗答:页式管理就是把各进程的虚拟空间划分为若干长度相等的页面,把指令按页面大小划分后存放在内存中执行或只在内存中存放那些经常被执行或即将被执行的页面,而那些不被经常执行以及在近期内不可能被执行的页面则存放于外存中,按一定规则调入的一种内存管理方式;静态页式管理不能实现虚存,这是因为静态页式管理要求进程或作业在执行前全部被装入内存,作业或进程的大小仍受内存可用页面数的限制;11.请求页式管理中有哪几种常用的页面置换算法试比较它们的优缺点;答:比较常用的页面置换算法有:1随机淘汰算法randomglongram;即随机地选择某个用户页面并将其换出;2轮转法RRroundrobin;轮转法循回换出内存可用区内一个可以被换出的页,无论该页是刚被换进或已经换进内存很长时间;3先进先出法FIFOfirstinfirstout;FIFO算法选择在内存驻留时间最长的一页将其淘汰;4最近最久未使用页面置换算法I.RU1east recently unused;该算法的基本思想是:当需要淘汰某一页时,选择离当前时间最近的一段时间内最久没有使用过的页面先淘汰;5理想型淘汰算法OPToptimalreplacementalgorithm;该算法淘汰在访问串中将来再也不出现的或是在离当前最远的位置上出现的页面;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. 何为特权指令?举例说明之。
如果允许用户执行特权指令,会带来什么后果?答:只能在态下才能执行的指令称为特权指令。
如开关中断、置程序状态寄存器等。
如果允许用户执行特权指令,它将不仅影响当前运行的程序,而且还有可能影响操作系统的正常运行,甚至整个系统。
3. 中断向量在机器中的存储位置是由硬件确定的,还是由软件确定的 ? 答:中断向量在机器中的位置是由硬件确定的。
例如,在 INTEL 80x86 CPU 中,内存空间0x00000——0x003ff为中断向量空间。
4. 中断向量的内容是由操作系统程序确定的还是由用户程序确定的?答:中断向量的内容是由操作系统程序确定的。
向量的内容包括中断处理程序的入口地址和程序状态字(中断处理程序运行环境),中断处理程序是由操作系统装入内存的,操作系统将根据装入的实际地址和该中断处理程序的运行环境来填写中断向量。
5. 中断向量内的处理机状态位应当标明是管态还是目态 ? 为什么? 答:应当标明是管态。
该状态由系统初试化程序设置,这样才能保证中断发生后进入操作系统规定的中断处理程序。
6. 中断和程序并发之间的关系是什么?答:中断是程序并发的必要条件。
如果没有中断,操作系统不能获得系统控制权,无法按调度算法对处机进行重新分配,一个程序将一直运行到结束而不会被打断。
7. 说明“栈”和“堆”的差别.答:栈是一块按后进先出(FIFO)规则访问的存储区域,用来实现中断嵌套和子程序调用的参数和返回断点。
计算机操作系统课后习题答案第四版

计算机操作系统课后习题答案第四版计算机操作系统课后习题答案(第四版)计算机操作系统是计算机系统中至关重要的组成部分,它负责管理和控制计算机的硬件和软件资源,为用户提供一个方便、高效、可靠的工作环境。
下面是对计算机操作系统第四版课后习题的答案解析。
一、操作系统的概念1、什么是操作系统?它的主要功能有哪些?操作系统是管理计算机硬件与软件资源的程序,是计算机系统的内核与基石。
它的主要功能包括处理机管理、存储器管理、设备管理、文件管理和用户接口管理等。
处理机管理负责合理分配和调度 CPU 资源,提高 CPU 利用率;存储器管理负责管理内存空间的分配、回收和保护;设备管理负责对外部设备进行有效管理和控制;文件管理负责对文件的存储、检索、共享和保护;用户接口管理则为用户提供了方便的操作界面。
2、操作系统有哪些分类?操作系统可以按照不同的标准进行分类。
按照用户数量,可分为单用户操作系统和多用户操作系统;按照任务数,可分为单任务操作系统和多任务操作系统;按照系统功能,可分为批处理操作系统、分时操作系统、实时操作系统、网络操作系统和分布式操作系统等。
1、什么是进程?进程和程序有什么区别?进程是程序在一个数据集合上的一次执行过程,是系统进行资源分配和调度的基本单位。
进程与程序的区别在于:程序是静态的指令集合,而进程是动态的执行过程;程序可以长期保存,进程具有生命周期;进程具有并发性,而程序没有;进程由程序、数据和进程控制块(PCB)组成。
2、进程的三种基本状态是什么?它们之间是如何转换的?进程的三种基本状态是就绪状态、执行状态和阻塞状态。
当进程已获得除CPU 以外的所有必要资源,只要再获得CPU 便可立即执行时,处于就绪状态;当进程正在 CPU 上运行时,处于执行状态;当进程因等待某一事件而暂时无法继续执行时,处于阻塞状态。
就绪状态到执行状态是通过进程调度实现的;执行状态到就绪状态是时间片用完或出现更高优先级的进程;执行状态到阻塞状态是进程因等待某事件而主动放弃 CPU;阻塞状态到就绪状态是等待的事件发生。
计算机操作系统课后习题

计算机操作系统课后习题计算机操作系统1301205班201221469x 向同第⼀章操作系统引论1.设计现代OS的主要⽬标是什么?答:⽅便性、有效性、开放性和可扩充性。
2.OS的作⽤可表现在哪⼏个⽅⾯?答:(1)OS作为⽤户与计算机硬件系统之间的接⼝;(2)OS作为计算机系统资源的管理者;(3)OS实现了对计算机资源的抽象。
3.为什么说操作系统实现了对计算机资源的抽象?答:OS⾸先在裸机上覆盖⼀层I/O设备管理软件,实现了对计算机硬件操作的第⼀层次抽象;在第⼀层软件上再覆盖⽂件管理软件,实现了对硬件资源操作的第⼆层次抽象。
OS 通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。
4.说明推动分时系统形成和发展的主要动⼒是什么?答:主要动⼒是提⾼资源利⽤率和系统吞吐量,为了满⾜⽤户对⼈—机交互的需求和共享主机。
11.OS有哪⼏⼤特征?其最基本的特征是什么?答:并发性、共享性、虚拟性和异步性。
最基本的特征有:并发性和分享性。
12.在多道程序技术的OS环境下的资源共享与⼀般情况下的资源共享有什么不同?对独占资源应采取何种分享⽅式?答:13.什么是时分复⽤技术?举例说明它能提⾼资源利⽤率的根本原因是什么?答:时分复⽤技术是将不同的信号相互交织在不同的时间段内,沿着同⼀个信道传输;在接收端再⽤某种⽅法,将各个时间段内的信号提取出来还原成原始信号的通信技术。
这种技术可以在同⼀个信道上传输多路信号。
时分复⽤技术能提⾼资源利⽤率的根本原因在于,它利⽤某设备为⼀⽤户服务的空闲时间,⼜转去为其他⽤户服务使设备得到最充分的利⽤。
14.是什么原因使操作系统具有异步性特征?答:在多道程序环境下允许多个进程并发执⾏,但由于资源等因素的限制,进程的执⾏通常并⾮⼀⽓呵成,⽽是以⾛⾛停停的⽅式运⾏。
内存中的每个进程在何时执⾏,何时暂停,以怎样的速度向前推进,每道程序总共需要多少时间才能完成,都是不可预知的,因此导致作业完成的先后次序与进⼊内存的次序并不完全⼀致。
操作系统习题及参考答案

操作系统习题及参考答案一、选择题1. 操作系统的主要功能是什么?A. 提供用户接口B. 管理和分配计算机的资源C. 控制和管理硬件设备D. 执行用户程序参考答案:B. 管理和分配计算机的资源2. 下列哪项不属于操作系统的资源管理功能?A. 内存管理B. 磁盘管理C. 进程管理D. 数据库管理参考答案:D. 数据库管理3. 在进程调度算法中,哪种调度算法能够保证所有进程公平获得CPU时间片?A. 先来先服务(FCFS)B. 短作业优先(SJF)C. 轮转调度(RR)D. 优先级调度参考答案:C. 轮转调度(RR)4. 下列哪个不是进程状态之一?A. 运行态B. 就绪态C. 阻塞态D. 结束态参考答案:D. 结束态5. 现代操作系统采用的存储管理方式是?A. 分页式存储管理B. 段式存储管理C. 段页式存储管理D. 段和页混合存储管理参考答案:C. 段页式存储管理二、填空题1. 在分页式存储管理中,操作系统将内存和磁盘划分为固定大小的______________。
参考答案:页(page)2. 进程在执行过程中如果发生了某些事件而无法继续执行,则进程会进入阻塞态,也被称为______________。
参考答案:等待态3. 进程管理的主要任务之一是实现进程的______________,即从一个进程的执行转到另一个进程的执行。
参考答案:切换(调度)4. 虚拟内存的实现需要使用到的硬件机制是______________。
参考答案:页表5. 一般而言,操作系统的中断处理程序都是使用______________的方式实现的。
参考答案:中断向量表三、简答题1. 请简要说明操作系统的作用及其主要功能。
操作系统是计算机系统中的一个重要组成部分,起着控制和协调计算机硬件与软件资源,为用户提供接口的作用。
操作系统主要功能包括:- 资源管理:负责管理和分配计算机的各种资源,如 CPU、内存、磁盘等,以满足不同进程的需求。
计算机操作系统课后习题答案 第四版

计算机操作系统课后习题答案第四版1. Describe the concept of a process and its typical attributes.A process is an entity that represents the execution of a program on a computer system. It consists of the program code, data, and execution context. The typical attributes of a process include a unique process identifier (PID), a program counter that keeps track of the next instruction to be executed, a stack that holds temporary data, a heap for dynamically allocated memory, and a set of resources such as open files and I/O devices.2. Explain the difference between process control block (PCB) and thread control block (TCB).A process control block (PCB) is a data structure used by the operating system to manage a process. It contains information about the process, such as its current state, scheduling information, memory allocation, and I/O status. On the other hand, a thread control block (TCB) is a data structure used to manage a thread within a process. It contains information specific to the thread, such as its program counter, stack pointer, and register values. Multiple threads can exist within a single process, sharing the same resources.3. Discuss the advantages and disadvantages of using threads instead of processes.One advantage of using threads instead of processes is that they are more lightweight in terms of resource consumption. Since threads share the same memory space, inter-thread communication is faster and uses less memory compared to inter-process communication. Threads also enable betterutilization of multi-core processors, as multiple threads can run in parallel on different cores.However, there are also disadvantages to using threads. The main disadvantage is that threads within the same process can interfere with each other if not properly synchronized. This can lead to issues such as race conditions, deadlocks, and data corruption. Additionally, debugging and testing multi-threaded applications can be more complex and time-consuming compared to single-threaded applications.4. Explain the concepts of mutual exclusion, deadlock, and starvation in the context of operating systems.Mutual exclusion refers to the concept of ensuring that only one process or thread can access a shared resource at a time. This is typically achieved using synchronization mechanisms such as locks or semaphores. Mutual exclusion is important to prevent data corruption or inconsistent results due to concurrent access.Deadlock occurs when two or more processes are waiting indefinitely for each other to release resources, resulting in a situation where none of the processes can proceed. It can happen when processes acquire resources in a different order or when they fail to release resources properly. Deadlocks can lead to system failures and require careful resource allocation and scheduling algorithms to avoid.Starvation refers to a situation where a process is unable to acquire the necessary resources to progress, despite its requests. It can occur when resource allocation policies favor certain processes over others, leading to along waiting time for some processes. Starvation can negatively impact the performance and fairness of the system.5. Discuss the purpose and functionality of memory management units (MMUs) in operating systems.Memory management units (MMUs) are hardware components responsible for translating virtual memory addresses used by processes into physical memory addresses. They provide address translation and memory protection mechanisms. MMUs use page tables or translation lookaside buffers (TLBs) to map virtual addresses to physical addresses, allowing processes to utilize more memory than physically available.MMUs also enforce memory protection by assigning memory access permissions to different regions of the process's address space. This prevents processes from accessing memory that they should not be able to, ensuring data integrity and security. Additionally, MMUs help optimize memory access by caching frequently used memory pages in the TLB, reducing the number of costly memory accesses.Overall, MMUs play a crucial role in memory management, allowing processes to have their own virtual address spaces and ensuring efficient and secure memory access.(Note: The above answers are just sample content for the given topic. Please modify and expand them according to your needs, as the word limit has been exceeded.)。
计算机操作系统习题及答案

第一章操作系统引论一、单项选择题1.操作系统是一种__________。
A.通用软件B.系统软件C.应用软件D.软件包2,操作系统的__________管理部分负责对进程进行调度。
A.主存储器B.控制器C.运算器D.处理机3.操作系统是对__________进行管理的软件。
A.软件B.硬件C,计算机资源 D.应用程序4.从用户的观点看,操作系统是__________。
A.用户与计算机之间的接口B.控制和管理计算机资源的软件C.合理地组织计算机工作流程的软件D.由若干层次的程序按一定的结构组成的有机体5,操作系统的功能是进行处理机管理、_______管理、设备管理及文件管理。
A.进程B.存储器C.硬件D.软件6,操作系统中采用多道程序设计技术提高CPU和外部设备的_______。
A.利用率B.可靠性C.稳定性D.兼容性7.操作系统是现代计算机系统不可缺少的组成部分,是为了提高计算机的_______和方便用户使用计算机而配备的一种系统软件。
A. 速度B.利用率C. 灵活性D.兼容性8.操作系统的基本类型主要有_______。
A.批处理系统、分时系统及多任务系统B.实时操作系统、批处理操作系统及分时操作系统C.单用户系统、多用户系统及批处理系统D.实时系统、分时系统和多用户系统9.所谓_______是指将一个以上的作业放入主存,并且同时处于运行状态,这些作业共享处理机的时间和外围设备等其他资源。
A. 多重处理B.多道程序设计C. 实时处理D.并行执行10. _______操作系统允许在一台主机上同时连接多台终端,多个用户可以通过各自的终端同时交互地使用计算机。
A.网络D.分布式C.分时D.实时11.如果分时操作系统的时间片一定,那么_______,则响应时间越长。
A.用户数越少B.用户数越多C.内存越少D. 内存越多12,分时操作系统通常采用_______策略为用户服务。
A.可靠性和灵活性B.时间片轮转C.时间片加权分配D,短作业优先13. _______操作系统允许用户把若干个作业提交给计算机系统。
计算机操作系统课后习题答案(第三版) 汤小丹

第一章1.设计现代OS的主要目标是什么?答:(1)有效性(2)方便性(3)可扩充性(4)开放性2.OS的作用可表现在哪几个方面?答:(1)OS作为用户与计算机硬件系统之间的接口(2)OS作为计算机系统资源的管理者(3)OS实现了对计算机资源的抽象3.为什么说OS实现了对计算机资源的抽象?答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。
OS 通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。
4.试说明推劢多道批处理系统形成和収展的主要劢力是什么?答:主要动力来源于四个方面的社会需求与技术发展:(1)不断提高计算机资源的利用率;(2)方便用户;(3)器件的不断更新换代;(4)计算机体系结构的不断发展。
5.何谓脱机I/O和联机I/O?答:脱机I/O 是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上。
该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。
而联机I/O方式是指程序和数据的输入输出都是在主机的直接控制下进行的。
6.试说明推劢分时系统形成和収展的主要劢力是什么?答:推动分时系统形成和发展的主要动力是更好地满足用户的需要。
主要表现在:CPU 的分时使用缩短了作业的平均周转时间;人机交互能力使用户能直接控制自己的作业;主机的共享使多用户能同时使用同一台计算机,独立地处理自己的作业。
7.实现分时系统的关键问题是什么?应如何解决?答:关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,在用户能接受的时延内将结果返回给用户。
解决方法:针对及时接收问题,可以在系统中设臵多路卡,使主机能同时接收用户从各个终端上输入的数据;为每个终端配臵缓冲区,暂存用户键入的命令或数据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机操作系统1301205班201221469x 向同第一章操作系统引论1.设计现代OS的主要目标是什么?答:方便性、有效性、开放性和可扩充性。
2.OS的作用可表现在哪几个方面?答:(1)OS作为用户与计算机硬件系统之间的接口;(2)OS作为计算机系统资源的管理者;(3)OS实现了对计算机资源的抽象。
3.为什么说操作系统实现了对计算机资源的抽象?答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。
OS 通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。
4.说明推动分时系统形成和发展的主要动力是什么?答:主要动力是提高资源利用率和系统吞吐量,为了满足用户对人—机交互的需求和共享主机。
11.OS有哪几大特征?其最基本的特征是什么?答:并发性、共享性、虚拟性和异步性。
最基本的特征有:并发性和分享性。
12.在多道程序技术的OS环境下的资源共享与一般情况下的资源共享有什么不同?对独占资源应采取何种分享方式?答:13.什么是时分复用技术?举例说明它能提高资源利用率的根本原因是什么?答:时分复用技术是将不同的信号相互交织在不同的时间段内,沿着同一个信道传输;在接收端再用某种方法,将各个时间段内的信号提取出来还原成原始信号的通信技术。
这种技术可以在同一个信道上传输多路信号。
时分复用技术能提高资源利用率的根本原因在于,它利用某设备为一用户服务的空闲时间,又转去为其他用户服务使设备得到最充分的利用。
14.是什么原因使操作系统具有异步性特征?答:在多道程序环境下允许多个进程并发执行,但由于资源等因素的限制,进程的执行通常并非一气呵成,而是以走走停停的方式运行。
内存中的每个进程在何时执行,何时暂停,以怎样的速度向前推进,每道程序总共需要多少时间才能完成,都是不可预知的,因此导致作业完成的先后次序与进入内存的次序并不完全一致。
或者说,进程是以异步方式运行的。
但在有关进程控制及同步机制等的支持下,只要运行环境相同,作业经多次运行,都会获得完全相同的结果,因而进程以异步的方式执行是系统所允许的15.处理机管理有哪些主要功能?其主要任务是什么?答:处理机的主要功能有:创建和撤消进程,对诸进程的运行进行协调,实现进程之间的信息交换,以及按照一定的算法把处理机分配给进程。
进程控制:为作业创建进程、撤消已结束的进程,以及控制进程在运行过程中的状态转换。
进程同步:为多个进程的运行进行协调。
进程通信:实现相互合作进程之间的信息交换。
调度:a.作业调度:从后备队列中按照一定的算法选择出若干个作业,为它们分配运行所需的资源。
b.进程调度:从进程的就绪队列中按照一定的算法选出一个进程,将处理机分配给它,并为它设置运行现场,使其投入执行。
16.内存管理有哪些主要功能?其主要任务是什么?答:内存管理的主要功能有内存分配、内存保护、地址映射和内存扩充。
内存分配:a.道程序分配内存空间b.存储器的利用率c.政治运行的程序申请附加的内存空间。
内存保护:a.确保每道用户程序都仅在自己的内存空间内运行,彼此互不打扰 b.决不允许用户程序访问程序访问操作系统的程序和数据,也不允许用户程序转移到非共享的其它用户程序中去执行。
地址映射:将地址空间中的逻辑地址转换为内存空间中与之对应的物理地址。
内存扩充:用于实现请求调入功能和置换功能。
17.设备管理有哪些主要功能?其主要任务是什么?答:主要功能有缓冲管理、设备分配和设备处理以及虚拟设备等功能。
主要任务:a.完成用户进程提出的I/O请求,为用户进程分配所需的I/O设备,并完成指定的I/O操作。
b.提高CPU和I/O设备的利用率,没提高I/O速度,方便用户使用I/O设备。
第一章进程的描述与控制1.什么是前趋图?为什么要引入前趋图?答:前趋图是指一个有向无循环图,可记为DAG。
用于描述进程之间执行的先后顺序。
2.试画出下面四条语句的前趋图:S1:a=x+y;S2:b=z+1;S3:c=a-b;S4:w=c+1;答:3.为什么程序并发执行会产生间断性特征?答:程序在并发执行时,由于它们共享系统资源,以及为完成同一项任务而相互合作,致使在这些并发执行的程序之间形成了相互制约的关系,从而使得进程在执行期间出现间断性。
4.程序并发执行时为什么会失去封闭性和可再现性?答:程序并发执行时,多个程序共享系统中的各种资源,因而这些资源的状态由多个程序改变,致使程序运行失去了封闭性,也会导致其失去可再现性。
5.在操作系统中为什么要引入进程的概念?它会产生什么样的影响?答:为了能使程序并发执行,并且可以对并发执行的程序加以描述和控制,人们引入了“进程”的概念。
影响:使程序的并发执行得以实行。
6.试从动态性、并发性和独立性上比较进程和程序。
答:a.动态性是进程最基本的特征,还表现在“由创建而产生,由调度而执行,由撤消而消亡”。
进程实体有一定的生命期,而程序则只是一组有序指令的集合,因而是静态。
b.并发性是进程的另一重要特征,同时也成为OS的重要特征,引入进程的目的也是正是为了使其进程实体能和其他进程实体并发执行,而程序是不能参与并发执行的。
C.在传统的OS中,独立性是指进程实体是一个能独立运行、独立获得资源和独立接受调度的基本单位。
凡未建立PCB的程序都不能作为一个独立的单位参与运行。
7.试说明PCB的作用具体表现在哪几个方面,为什么说PCB是进程存在的唯一标志?答:PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构。
作用是使一个在多道程序环境下不能独立运行的程序,成为一个能独立运行的基本单位,成为能与其它进程并发执行的进程。
OS是根据PCB对并发执行的进程进行控制和管理的。
19.为什么要在OS中引入线程?答:在操作系统中引入线程,是为了减少程序在并发执行时所付出的时空开销,使OS 具有更好的并发性。
21.试从调度性、并发性、拥有资源及系统开销方面对进程和线程进行比较。
答:a.调度性:在传统OS中,进程是作为独立调度和分派的基本单位,是能独立运行的基本单位,而在引入线程的OS中,把线程作为调度和分派的基本单位,线程是能独立运行的基本单位,而把进程作为资源拥有的基本单位。
b.并发性:在引入线程的OS中,不仅进程之间可以并发执行,而且在一个进程中的多个线程之间亦可并发执行,甚至允许在一个进程中的所有线程都能并发执行。
同样,不同进程中的线程也能并发执行,这使得OS具有更好的并发性。
c.拥有资源:进程可以拥有资源,并作为系统中拥有资源的一个基本单位。
然而,线程本身并不拥有系统资源,而是仅有一点必不可少的、能保证独立运行的资源,线程可以访问该进程中所拥有的资源。
d.系统开销:在创建或撤消进程时,系统都要为之分配和回收进程控制块、分配或回收其他资源,如内存空间和I/O设备等。
OS为此所付出的开销,明显大于线程创建或撤消时所付出的开销。
类似地,在进程切换时,涉及到进程上下文的切换,而进程的切换代价也远低于进程的。
23.何谓用户级线程和内核支持线程?答:用户级线程:是在用户空间中试下你的。
对线程的创建、撤消、同步与通信等功能,都无需内核的支持,即用户级线程是与内核无关的。
内核支持线程:在OS中的所有进程,无论是系统进程还是用户进程,都是在操作系统内核的支持下运行的,是与内核紧密相关的。
而内核支持线程KST同样也是在内核的支持下运行的,它们的创建、阻塞、撤消和切换等,也都是在内核空间实现的。
为了对内核线程进行控制和管理,在内核空间也为每一个内核线程设置了一个线程控制块,内核根据该控制块而感知某线程的存在,并对其加以控制。
24.试说明用户级线程的实现方法。
答:用户级线程是在用户空间实现的。
所有的用户级线程都具有相同的结构,它们都运行在由运行时系统和内核控制线程实现的中间系统上。
运时系统用于管理和控制线程的函数的集合。
内核控制线程通过系统调用来获得内核提供的服务作为,利用轻型进程作为中间系统。
第二章处理机调度与死锁8.在抢占调度方式中,抢占的原则是什么?答:优先权原则、短进程优先原则和时间片原则。
9.在选择调度方式和调度算法时,应遵循的准则是什么?答:a.面向用户的准则:周转时间短、响应时间快、截止时间的保证、优先权准则。
b.面向系统的准则:系统吞吐量高、处理机利用率好、各类资源的平衡利用。
10.在批处理系统、分时系统和实时系统中,各采用哪几种进程(作业)调度算法?答:批处理系统的调度算法:短作业优先、优先权、高响应比优先、多级反馈队列调度算法。
分时系统的调度算法:时间片轮转法。
实时系统的调度算法:最早截止时间优先即EDF、最低松弛度优先即LLF算法。
11.何谓静态和动态优先级?确定静态优先级的依据是什么?答:静态优先级是在创建进程时确定的,在进程的整个运行期间保持不变。
动态优先级是指在创建进程之初,先赋予其一个优先级,然后其值随进程的推进或等待时间的增加而改变,以便获得更好的调度性能。
确定静态优先级的依据是:进程类型、进程对资源的需求和用户要求。
13.在时间片轮转法中,应如何确定时间片的大小?答:时间片应略大于一次典型的交互需要的时间。
一般应考虑三个因素:系统对相应时间的要求、就绪队列中进程的数目和系统的处理能力。
21.什么是最早截止时间优先调度算法?举例说明之。
答:根据任务的开始截止时间确定的任务优先级,任务的截止时间愈早,其优先级愈高,具有最早截止时间的任务排在队列的队首。
举例:非抢占调度方式用于非周期实时任务。
该例中具有四个非周期任务,它们先后到达。
系统先调度任务1执行,在任务1执行期间,任务2、3又先后到达。
由于任务3的开始截止时间早于任务2的,故系统在任务1后将先调度任务3执行。
在此期间又到达作业4,其开始截止时间仍是早于任务2的,故在任务3执行完后,系统又先调度任务4执行,最后才调度任务2执行。
图 EDF算法用于非抢占调度方式22.什么是最低松弛度优先调度算法?举例说明之。
答:该算法在确定任务的优先级时,根据的是任务的紧急程度。
任务紧急程度愈高,赋予该任务的优先级就愈高,以使之优先执行。
例如,一个任务在200ms时必须完成,而它本身所需要的运行时间是100ms,因此调度程序必须在100ms之前调度执行,该任务的紧急程度为100ms。
又如另一任务在400ms时必须完成,它本身需要运行150ms,则其松弛程度为250ms。
第三章存储器管理5.何谓运行时动态链接?运行时动态链接方式有何优点?答:运行时动态链接方式,是装入时链接方式的一种改进,将对某些模块的链接推迟到程序执行时才进行。
亦即,在执行过程中,当发现一个被调用模块尚未装入内存时,立即由OS去找到该模块,并将之装入内存,将其链接到调用者模块上。