《现代操作系统第四版》 第六章 答案
操作系统第四版作业参考答案
操作系统作业参考答案第一章操作系统引论1、设计现代OS的主要目标是什么?(1)有效性:提高系统资源利用率和呑吐量。
(2)方便性:使计算机系统更容易使用。
(3)可扩充性:便于增加新的功能和模块。
(4)开放性:遵循标准规范,便于实现互连。
2、OS的作用可表现为哪几个方面?(1)OS作为用户与计算机硬件系统之间的接口;(2)OS作为计算机系统资源的管理者;(3)OS实现了对计算机资源的抽象.3、为什么说OS实现了对计算机资源的抽象?答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。
OS 通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。
5、何谓脱机I/O和联机I/O?答:脱机I/O 是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上。
该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。
而联机I/O方式是指程序和数据的输入输出都是在主机的直接控制下进行的。
7、实现分时系统的关键问题是什么?答:关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,在用户能接受的时延内将结果返回给用户。
解决方法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接收用户从各个终端上输入的数据;为每个终端配置缓冲区,暂存用户键入的命令或数据。
针对及时处理问题,应使所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行,这样在不长的时间内,能使每个作业都运行一次。
8、为什么要引入实时OS?答:实时操作系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。
引入实时OS 是为了满足应用的需求,更好地满足实时控制领域和实时信息处理领域的需要。
操作系统第六章课后习题
1.试说明I/O系统的基本功能。
答:I/O系统第一、二方面的功能是为了方便用户使用I/O设备;第三、四方面的功能是用于提高CPU和I/O设备的利用率;第五、六方面的功能是为用户在共享设备时提供方便,以保证系统能有条不紊的运行,当系统发生错误时能及时发现错误,甚至于能自动修正错误。
2.简要说明I/O软件的四个层次的基本功能。
答:用户层I/O软件,实现与用户交互的接口,用户可直接调用该层所提供的、与I/O 操作有关的库函数对设备进行操作;设备独立性软件,用于实现用户程序与设备驱动器的统一接口、设备命名、设备的保护以及设备的分配与释放等,同时为设备管理和数据传送提供必要的存储空间;设备驱动程序,与硬件直接相关,用于具体实现系统对设备发出的操作指令,驱动I/O设备工作的驱动程序;中断处理程序,用于保存被中断进程的CPU环境,转入相关的中断处理程序进行处理,处理完毕再恢复被中断进程的现场后,返回到被中断的进程。
3.I/O系统接口与软件/硬件(RW/HW)接口分别是什么接口?答:I/O系统接口是I/O系统与上层系统之间的接口,向上层提供对设备进行操作的抽象I/O命令,以方便高层对设备的使用;软件/硬件(RW/HW)接口,它的上面是中断处理程序和用于不同设备的设备驱动程序,它的下面是各种设备的控制器。
4.与设备无关性的基本含义是什么?为什么要设置该层?答:用户不仅可以使用抽象的I/O命令,还可使用抽象的逻辑设备名来使用设备,另一方面,也可以有效地提高OS的可移植性和易适应性,对于OS本身而言,应允许在不需要将整个操作系统进行重新编译的情况下,增加新的设备驱动程序,以方便新的I/O 设备的安装。
5.试说明设备控制器的组成。
答:设备控制器与处理机的接口、设备控制器与设备的接口、I/O逻辑。
6.为了实现CPU与设备控制器间的通信,设备控制器应具备哪些功能?答:接受和识别命令、数据交换、标识和报告设备的状态、地址识别、数据缓冲区、差错控制。
现代操作系统课后答案
现代操作系统第一章答案1.操作系统必须向用户提供一台扩展(即,实际上)的机器,和它必须管理I/O设备和其它系统资源。
2.多道程序就是CPU在内存中多个进程之间迅速切换。
它一般被用来使CPU保持忙碌,当有一个或多个进程进行I/O时。
3.输入spooling是作业中的读入技术,例如,从卡片在磁盘,这样当当前执行的进程完成时,将等候CPU。
输出spooling在打印之前首先复制打印文件,而非直接打印。
在个人计算机上的输入spooling很少,但是输出spooling非常普遍。
4.多道程序的主要原因是当等候I/O完成时CPU有事可做。
如果没有DMA,I/O操作时CPU 被完全占有,因此,多道程序无利可图(至少在CPU利用方面)。
无论程序作多少I/O操作,CPU 都是100%的忙碌。
当然,这里假定主要的延迟是数据复制时的等待。
如果I/O很慢的话,CPU 可以做其它工作。
5.第二代计算机没有必要的硬件保护操作系统免受恶意的用户程序的侵害。
6.它依然存在。
例如,Intel以各种各样的不同的属性包括速度和能力消耗来生产Pentium I, II, III 和4。
所有这些机器的体系结构都是兼容的,仅仅是价格上的不同,这些都是家族思想的本质。
7. 25 X 80字符的单色文本屏幕需要2000字节的缓冲器。
1024 X 768象素24位颜色的位图需要2359296字节。
1980年代这两种选择将分别地耗费$10和$11520。
而对于当前的价格,将少于$1/MB。
8.选择(a),(c),(d)应该被限制在内核模式。
9.个人的计算机系统总是交互式的,而且经常只有一个用户。
而大型机系统几乎总有许多用户强调批处理或者分时。
除了对所有资源的有效使用,大型机系统上的保护更加重要。
10.从管道中每纳秒出现一条指令。
意味着该机器每秒执行十亿条指令。
它对于管道有多少个阶段全然不予理睬。
即使是10-阶段管道,每阶段1 nsec,也将执行对每秒十亿条指令。
计算机操作系统第四版课后习题参考答案优选稿
计算机操作系统第四版课后习题参考答案集团公司文件内部编码:(TTT-UUTT-MMYB-URTTY-ITTLTY-第一章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、有一台计算机,具有IMB 内存,操作系统占用200KB ,每个用户进程各占200KB 。
如果用户进程等待I/O 的时间为80 % ,若增加1MB 内存,则CPU 的利用率提高多少?答:设每个进程等待I/O 的百分比为P ,则n 个进程同时等待刀O 的概率是Pn ,当n 个进程同时等待I/O 期间CPU 是空闲的,故CPU 的利用率为1-Pn。
由题意可知,除去操作系统,内存还能容纳4 个用户进程,由于每个用户进程等待I/O的时间为80 % , 故:CPU利用率=l-(80%)4 = 0.59若再增加1MB 内存,系统中可同时运行9 个用户进程,此时:cPu 利用率=l-(1-80%)9 = 0.87故增加IMB 内存使CPU 的利用率提高了47 % :87 %/59 %=147 %147 %-100 % = 47 %2 一个计算机系统,有一台输入机和一台打印机,现有两道程序投入运行,且程序A 先开始做,程序B 后开始运行。
程序A 的运行轨迹为:计算50ms 、打印100ms 、再计算50ms 、打印100ms ,结束。
程序B 的运行轨迹为:计算50ms 、输入80ms 、再计算100ms ,结束。
试说明(1 )两道程序运行时,CPU有无空闲等待?若有,在哪段时间内等待?为什么会等待?( 2 )程序A 、B 有无等待CPU 的情况?若有,指出发生等待的时刻。
答:画出两道程序并发执行图如下:(1)两道程序运行期间,CPU存在空闲等待,时间为100 至150ms 之间(见图中有色部分)(2)程序A 无等待现象,但程序B 有等待。
程序B 有等待时间段为180rns 至200ms 间(见图中有色部分)3 设有三道程序,按A 、B 、C优先次序运行,其内部计算和UO操作时间由图给出。
试画出按多道运行的时间关系图(忽略调度执行时间)。
完成三道程序共花多少时间?比单道运行节省了多少时间?若处理器调度程序每次进行程序转换化时lms , 试画出各程序状态转换的时间关系图。
计算机操作系统第四版课后习题答案
第一章1.设计现代OS的主要目标是什么答:1有效性 2方便性 3可扩充性 4开放性2.OS的作用可表现在哪几个方面答:1OS作为用户与计算机硬件系统之间的接口 2OS作为计算机系统资源的管理者 3OS实现了对计算机资源的抽象3.为什么说OS实现了对计算机资源的抽象答:OS首先在裸机上覆盖一层I/O设备管理软件;实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件;实现了对硬件资源操作的第二层次抽象..OS 通过在计算机硬件上安装多层系统软件;增强了系统功能;隐藏了对硬件操作的细节;由它们共同实现了对计算机资源的抽象..4.试说明推劢多道批处理系统形成和収展的主要劢力是什么答:主要动力来源于四个方面的社会需求与技术发展: 1不断提高计算机资源的利用率; 2方便用户; 3器件的不断更新换代;4计算机体系结构的不断发展..5.何谓脱机I/O和联机I/O答:脱机I/O 是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机;在外围机的控制下;把纸带或卡片上的数据或程序输入到磁带上..该方式下的输入输出由外围机控制完成;是在脱离主机的情况下进行的.. 而联机I/O方式是指程序和数据的输入输出都是在主机的直接控制下进行的..6.试说明推劢分时系统形成和収展的主要劢力是什么答:推动分时系统形成和发展的主要动力是更好地满足用户的需要..主要表现在:CPU 的分时使用缩短了作业的平均周转时间;人机交互能力使用户能直接控制自己的作业;主机的共享使多用户能同时使用同一台计算机;独立地处理自己的作业..7.实现分时系统的关键问题是什么应如何解决答:关键问题是当用户在自己的终端上键入命令时;系统应能及时接收并及时处理该命令;在用户能接受的时延内将结果返回给用户..解决方法:针对及时接收问题;可以在系统中设臵多路卡;使主机能同时接收用户从各个终端上输入的数据;为每个终端配臵缓冲区;暂存用户键入的命令或数据..针对及时处理问题;应使所有的用户作业都直接进入内存;并且为每个作业分配一个时间片;允许作业只在自己的时间片内运行;这样在不长的时间内;能使每个作业都运行一次..8.为什么要引入实时OS答:实时操作系统是指系统能及时响应外部事件的请求;在规定的时间内完成对该事件的处理;并控制所有实时任务协调一致地运行..引入实时OS 是为了满足应用的需求;更好地满足实时控制领域和实时信息处理领域的需要..9.什么是硬实时任务和软实时任务试举例说明..答:硬实时任务是指系统必须满足任务对截止时间的要求;否则可能出现难以预测的结果..举例来说;运载火箭的控制等..软实时任务是指它的截止时间并不严格;偶尔错过了任务的截止时间;对系统产生的影响不大..举例:网页内计算机操作系统第三版答案 2 / 47 容的更新、火车售票系统..10.试从交互性、及时性以及可靠性方面;将分时系统不实时系统迚行比较.. 答:1及时性:实时信息处理系统对实时性的要求与分时系统类似;都是以人所能接受的等待时间来确定;而实时控制系统的及时性;是以控制对象所要求的开始截止时间或完成截止时间来确定的;一般为秒级到毫秒级;甚至有的要低于100微妙.. 2交互性:实时信息处理系统具有交互性;但人与系统的交互仅限于访问系统中某些特定的专用服务程序..不像分时系统那样能向终端用户提供数据和资源共享等服务.. 3可靠性:分时系统也要求系统可靠;但相比之下;实时系统则要求系统具有高度的可靠性..因为任何差错都可能带来巨大的经济损失;甚至是灾难性后果;所以在实时系统中;往往都采取了多级容错措施保障系统的安全性及数据的安全性..11.OS有哪几大特征其最基本的特征是什么答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性..14.是什么原因使操作系统具有异步性特征答:操作系统的异步性体现在三个方面:一是进程的异步性;进程以人们不可预知的速度向前推进;二是程序的不可再现性;即程序执行的结果有时是不确定的;三是程序执行时间的不可预知性;即每个程序何时执行;执行顺序以及完成时间是不确定的..15.处理机管理有哪些主要功能它们的主要任务是什么答:处理机管理的主要功能是:进程管理、进程同步、进程通信和处理机调度;进程管理:为作业创建进程;撤销已结束进程;控制进程在运行过程中的状态转换..进程同步:为多个进程含线程的运行进行协调.. 通信:用来实现在相互合作的进程之间的信息交换.. 处理机调度: 1作业调度..从后备队里按照一定的算法;选出若干个作业;为他们分配运行所需的资源首选是分配内存.. 2进程调度:从进程的就绪队列中;按照一定算法选出一个进程;把处理机分配给它;并设臵运行现场;使进程投入执行..16.内存管理有哪些主要功能他们的主要任务是什么答:内存管理的主要功能有:内存分配、内存保护、地址映射和内存扩充.. 内存分配:为每道程序分配内存.. 内存保护:确保每道用户程序都只在自己的内存空间运行;彼此互不干扰.. 计算机操作系统第三版答案 3 / 47 地址映射:将地址空间的逻辑地址转换为内存空间与对应的物理地址.. 内存扩充:用于实现请求调用功能;臵换功能等..17.设备管理有哪些主要功能其主要任务是什么答:主要功能有: 缓冲管理、设备分配和设备处理以及虚拟设备等.. 主要任务: 完成用户提出的I/O 请求;为用户分配I/O 设备;提高CPU 和I/O 设备的利用率;提高I/O速度;以及方便用户使用I/O设备.18.文件管理有哪些主要功能其主要任务是什么答:文件管理主要功能:文件存储空间的管理、目录管理、文件的读/写管理和保护.. 文件管理的主要任务:管理用户文件和系统文件;方便用户使用;保证文件安全性..21.微内核操作系统具有哪些优点它为何能有这些优点答:1提高了系统的可扩展性 2增强了系统的可靠性 3可移植性4提供了对分布式系统的支持计算机操作系统第三版答案 4 /47 5融入了面向对象技术23.在微内核OS中;为什么要采用客户/服务器模式答:C/S 模式具有独特的优点:⑴数据的分布处理和存储..⑵便于集中管理..⑶灵活性和可扩充性..⑷易于改编应用软件.. 21.试描述什么是微内核OS.. 答:1足够小的内核 2基于客户/服务器模式 3应用机制与策略分离原理 4采用面向对象技术.. 24.在基亍微内核结构的OS中;应用了哪些新技术答:在基于微内核结构的OS 中;采用面向对象的程序设汁技术.. 23.何谓微内核技术在微内核中通常提供了哪些功能答:把操作系统中更多的成分和功能放到更高的层次即用户模式中去运行;而留下一个尽量小的内核;用它来完成操作系统最基本的核心功能;称这种技术为微内核技术..在微内核中通常提供了进程线程管理、低级存储器管理、中断和陷入处理等功能..。
操作系统(1~8章的课后习题答案)
1.1:存储程序式计算机的主要特点是:集中顺序过程控制(1)过程性:模拟人们手工操作(2)集中控制:由CPU集中管理(3)顺序性:程序计数器1.2:a:批处理系统的特点:早期批处理有个监督程序,作业自动过渡直到全部处理完,而脱机批处理的特点:主机与卫星机并行操作。
b:分时系统的特点:(1):并行性。
共享一台计算机的众多联机用户可以在各自的终端上同时处理自己的程序。
(2):独占性。
分时操作系统采用时间片轮转的方法使一台计算机同时为许多终端上同时为许多终端用户服务,每个用户的感觉是自己独占计算机。
操作系统通过分时技术将一台计算机改造为多台虚拟计算机。
(3):交互性。
用户与计算机之间可以进行“交互会话”,用户从终端输入命令,系统通过屏幕(或打印机)将信息反馈给用户,用户与系统这样一问一答,直到全部工作完成。
c:分时系统的响应比较快的原因:因为批量操作系统的作业周转时间较长,而分时操作系统一般采用时间片轮转的方法,一台计算机与许多终端设备连接,使一台计算机同时为多个终端用户服务,该系统对每个用户都能保证足够快的响应时间,并提供交互会话功能。
1.3:实时信息处理系统和分时系统的本质区别:实时操作系统要追求的目标是:对外部请求在严格时间范围内做出反应,有高可靠性和完整性。
其主要特点是资源的分配和调度首先要考虑实时性然后才是效率。
此外,实时操作系统应有较强的容错能力,分时操作系统的工作方式是:一台主机连接了若干个终端,每个终端有一个用户在使用。
用户交互式地向系统提出命令请求,系统接受每个用户的命令,采用时间片轮转方式处理服务请求,并通过交互方式在终端上向用户显示结果。
用户根据上步结果发出下道命。
分时操作系统将CPU 的时间划分成若干个片段,称为时间片。
操作系统以时间片为单位,轮流为每个终端用户服务。
每个用户轮流使用一个时间片而使每个用户并不感到有别的用户存在。
分时系统具有多路性、交互性、“独占”性和及时性的特征。
现代操作系统教程(慕课版)-课后习题答案1-8章全带原题
5、以下关于进程的说法,错误的是(B)。
A.进程是程序在处理器上的一次执行过程
B.一个进程是由若干作业组成的
C.在线程出现后,进程仍然是操作系统中资源分配的基本单位
D.进程具有创建其他进程的功能
6、在下述关于父进程和子进程的叙述中,正确的是(D)。
A.父进程创建了子进程,因此父进程执行完了,子进程才能运行
D.由于进程调用V操作而造成死锁
20、进程-资源分配图是用于(D)。
A.死锁的预防B.解决死锁的静态方法
C.死锁的避免D.死锁的检测与解除
1.2
1、Linux操作系统按照事件来源和实现手段将中断分为(硬中断)、(软中断)。
2、系统调用是通过(中断)来实现的;发生系统调用,处理器的状态常从目态变为管态。
1.4
1、一个计算机系统,有一台输入机和一台打印机,现有两道程序投入运行,且程序A先开始运行,程序B后开始运行。程序A的运行轨迹为:计算50ms、打印100ms、再计算50ms、打印100ms,结束。程序B的运行轨迹为:计算50ms、输入80ms、再计算100ms,结束。请回答以下问题:
两道程序运行时,CPU有无空闲等待?若有,在哪段时间内等待?为什么会等待?
当执行的时间片用完时,由系统中的定时器发出时钟中断请求,调度程序停止该进程的执行,并将它送到就绪队列的末尾,等待下一次执行。
进行进程切换,把处理器分配给就绪队列中新的队首进程。
2、时间片大小的确定要从进程个数、切换开销、系统效率和响应时间等方面考虑:
时间片取值太小,多数进程不能在一个时间片内运行完毕,切换就会频繁,开销显著增大,从系统效率来看,时间片取大一点好。
7、进程调度方式通常有(抢占)和(非抢占)两种方式。
操作系统第四版课后习题答案
4. 大致可以把操作系统分为以下几类: 批处 理操作系统、分时操作系统、实时操作系统、 网络操作系统和分布式操作系统。其中批处理 操作系统能按照用户预先规定好的步骤控制作 业的执行,实现计算机操作的自动化。又可分 为批处理单道系统和批处理多道系统。单道系 统每次只有一个作业装入计算机系统的主存储 器运行,多个作业可自动、顺序地被装入运行。 批处理多道系统则允许多个作业同时装入主存 储器,中央处理器轮流地执行各个作业,各个 作业可以同时使用各自所需的外围设备,这样 可以充分利用计算机系统的资源,缩短作业时 间,提高系统的吞吐率。
13.多道程序系统是利用CPU的等待时间来运行 其它程序.
14. 计算机体系的基本结构遵循冯.诺依曼体系结 构,主要由运算器,控制器、存储器、输入设备、 输出设备五部分组成。随着CPU不断升级,存储 器的容量不断增 大,计算机体系结
构不断的改进,从而,要求计算机的操作系 统不断的更新,由原来的DOS 到后来的
5. 操作系统为用户提供的基本和共性服务有: 1)创建程序和执行程序。2)数据I/O和信息 存取。3)通信服务。4)差错检测和处理。 为了保证自身高效率、高质量地工作,使得多 个应用程序能够有效地共享系统资源,提高系 统效率,操作系统还具备其他一些功能:资源 分配、统计、保护等。
6. 操作系统通过程序接口和操作接口将其服 务和功能提供给用户。程序接口由一组系统调 用组成,在应用程序中使用“系统调用”可获 得操作系统的低层服务,访问或使用系统管理 的各种软硬件资源,是操作系统对外提供服务 和功能的手段;操作接口由一组命令和(或)
19. 分时系统的响应时间是指用户从终端发出 一个命令到系统处理完这个命令并做出回答所 需要的时间。这个时间受时间片长度、终端用 户个数、命令本身功能、硬件特性、主存与辅 存的交换速度等影响。
《现代操作系统第四版》-第六章-答案
第四章文件系统习题Q1: 给出文件/etc/passwd的五种不同的路径名。
(提示:考虑目录项”.”和”…”。
)A:/etc/passwd/./etc/passwd/././etc/passwd/./././etc/passwd/etc/…/etc/passwd/etc/…/etc/…/etc/passwd/etc/…/etc/…/etc/…/etc/passwd/etc/…/etc/…/etc/…/etc/…/etc/passwdQ2:在Windows中,当用户双击资源管理器中列出的一个文件时,就会运行一个程序,并以这个文件作为参数。
操作系统要知道运行的是哪个程序,请给出两种不同的方法。
A:Windows使用文件扩展名。
每种文件扩展名对应一种文件类型和某些能处理这种类型的程序。
另一种方式时记住哪个程序创建了该文件,并运行那个程序。
Macintosh以这种方式工作。
Q3:在早期的UNIX系统中,可执行文件(a.out)以一个非常特別的魔数开始,这个数不是随机选择的。
这些文件都有文件头,后面是正文段和数据段。
为什么要为可执行文件挑选一个非常特别的魔数,而其他类型文件的第一个字反而有一个或多或少是随机选择的魔数?A:这些系统直接把程序载入内存,并且从word0(魔数)开始执行。
为了避免将header作为代码执行,魔数是一条branch指令,其目标地址正好在header之上。
按这种方法,就可能把二进制文件直接读取到新的进程地址空间,并且从0 开始运行。
Q4: 在UNIX中open系统调用绝对需要吗?如果没有会产生什么结果?A: open调用的目的是:把文件属性和磁盘地址表装入内存,便与后续调用的快速访问。
首先,如果没有open系统调用,每次读取文件都需要指定要打开的文件的名称。
系统将必须获取其i节点,虽然可以缓存它,但面临一个问题是何时将i节点写回磁盘。
可以在超时后写回磁盘,虽然这有点笨拙,但它可能起作用。
操作系统第四版课后习题答案
操作系统第四版课后习题答案【篇一:计算机操作系统(第四版)汤小丹课后答案完整版】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、有一台计算机,具有IMB 内存,操作系统占用200KB ,每个用户进程各占200KB 。
如果用户进程等待I/O 的时间为80 % ,若增加1MB 内存,则CPU 的利用率提高多少?答:设每个进程等待I/O 的百分比为P ,则n 个进程同时等待刀O 的概率是Pn ,当n 个进程同时等待I/O 期间CPU 是空闲的,故CPU 的利用率为1-Pn。
由题意可知,除去操作系统,内存还能容纳4 个用户进程,由于每个用户进程等待I/O的时间为80 % , 故:CPU利用率=l-(80%)4 = 0.59若再增加1MB 内存,系统中可同时运行9 个用户进程,此时:cPu 利用率=l-(1-80%)9 = 0.87故增加IMB 内存使CPU 的利用率提高了47 % :87 %/59 %=147 %147 %-100 % = 47 %2 一个计算机系统,有一台输入机和一台打印机,现有两道程序投入运行,且程序A 先开始做,程序B 后开始运行。
程序A 的运行轨迹为:计算50ms 、打印100ms 、再计算50ms 、打印100ms ,结束。
程序B 的运行轨迹为:计算50ms 、输入80ms 、再计算100ms ,结束。
试说明(1 )两道程序运行时,CPU有无空闲等待?若有,在哪段时间内等待?为什么会等待?( 2 )程序A 、B 有无等待CPU 的情况?若有,指出发生等待的时刻。
答:画出两道程序并发执行图如下:(1)两道程序运行期间,CPU存在空闲等待,时间为100 至150ms 之间(见图中有色部分)(2)程序A 无等待现象,但程序B 有等待。
程序B 有等待时间段为180rns 至200ms 间(见图中有色部分)3 设有三道程序,按A 、B 、C优先次序运行,其内部计算和UO操作时间由图给出。
试画出按多道运行的时间关系图(忽略调度执行时间)。
完成三道程序共花多少时间?比单道运行节省了多少时间?若处理器调度程序每次进行程序转换化时lms , 试画出各程序状态转换的时间关系图。
操作系统第四版 课后习题答案
第一章作者:佚名来源:网络1、有一台计算机,具有IMB 内存,操作系统占用200KB ,每个用户进程各占200KB 。
如果用户进程等待I/O 的时间为80 % ,若增加1MB 内存,则CPU 的利用率提高多少?答:设每个进程等待I/O 的百分比为P ,则n 个进程同时等待刀O 的概率是Pn ,当n 个进程同时等待I/O 期间CPU 是空闲的,故CPU 的利用率为1-Pn。
由题意可知,除去操作系统,内存还能容纳4 个用户进程,由于每个用户进程等待I/O的时间为80 % , 故:CPU利用率=l-(80%)4 = 0.59若再增加1MB 内存,系统中可同时运行9 个用户进程,此时:cPu 利用率=l-(1-80%)9 = 0.87故增加IMB 内存使CPU 的利用率提高了47 % :87 %/59 %=147 %147 %-100 % = 47 %2 一个计算机系统,有一台输入机和一台打印机,现有两道程序投入运行,且程序A 先开始做,程序B 后开始运行。
程序A 的运行轨迹为:计算50ms 、打印100ms 、再计算50ms 、打印100ms ,结束。
程序B 的运行轨迹为:计算50ms 、输入80ms 、再计算100ms ,结束。
试说明(1 )两道程序运行时,CPU有无空闲等待?若有,在哪段时间内等待?为什么会等待?( 2 )程序A 、B 有无等待CPU 的情况?若有,指出发生等待的时刻。
答:画出两道程序并发执行图如下:(1)两道程序运行期间,CPU存在空闲等待,时间为100 至150ms 之间(见图中有色部分)(2)程序A 无等待现象,但程序B 有等待。
程序B 有等待时间段为180rns 至200ms 间(见图中有色部分)3 设有三道程序,按A 、B 、C优先次序运行,其内部计算和UO操作时间由图给出。
试画出按多道运行的时间关系图(忽略调度执行时间)。
完成三道程序共花多少时间?比单道运行节省了多少时间?若处理器调度程序每次进行程序转换化时lms , 试画出各程序状态转换的时间关系图。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第四章文件系统习题Q1: 给出文件/etc/passwd的五种不同的路径名。
(提示:考虑目录项”.”和”…”。
)A:/etc/passwd/./etc/passwd/././etc/passwd/./././etc/passwd/etc/…/etc/passwd/etc/…/etc/…/etc/passwd/etc/…/etc/…/etc/…/etc/passwd/etc/…/etc/…/etc/…/etc/…/etc/passwdQ2:在Windows中,当用户双击资源管理器中列出的一个文件时,就会运行一个程序,并以这个文件作为参数。
操作系统要知道运行的是哪个程序,请给出两种不同的方法。
A:Windows使用文件扩展名。
每种文件扩展名对应一种文件类型和某些能处理这种类型的程序。
另一种方式时记住哪个程序创建了该文件,并运行那个程序。
Macintosh以这种方式工作。
Q3:在早期的UNIX系统中,可执行文件(a.out)以一个非常特別的魔数开始,这个数不是随机选择的。
这些文件都有文件头,后面是正文段和数据段。
为什么要为可执行文件挑选一个非常特别的魔数,而其他类型文件的第一个字反而有一个或多或少是随机选择的魔数?A:这些系统直接把程序载入内存,并且从word0(魔数)开始执行。
为了避免将header作为代码执行,魔数是一条branch指令,其目标地址正好在header之上。
按这种方法,就可能把二进制文件直接读取到新的进程地址空间,并且从0 开始运行。
Q4: 在UNIX中open系统调用绝对需要吗?如果没有会产生什么结果?A: open调用的目的是:把文件属性和磁盘地址表装入内存,便与后续调用的快速访问。
首先,如果没有open系统调用,每次读取文件都需要指定要打开的文件的名称。
系统将必须获取其i节点,虽然可以缓存它,但面临一个问题是何时将i节点写回磁盘。
可以在超时后写回磁盘,虽然这有点笨拙,但它可能起作用。
Q5:在支持顺序文件的系统中总有一个文件回绕操作,支持随机存取文件的系统是否也需要该操作?A:否。
如果要再次读取文件,只需随机访问字节0。
Q6:某一些操作系统提供系统调用rename给文件重命名,同样也可以通过把文件复制到新文件并删除原文件而实现文件重命名。
请问这两种方法有何不同?A:rename调用不会改变文件的创建时间和最后的修改时间,但是创建一个新的文件,其创建时间和最后的修改时间都会改为当前的系统时间。
另外,如果磁盘满,复制可能会失败。
Q7: 在有些系统中有可能把部分文件映射进内存中。
如此一来系统应该施加什么限制?这种部分映射如何实现?A:文件的映射部分必须以页边界开始,并且长度为整数页数。
每个映射的页面使用文件本身作为后备存储。
未映射的内存使用临时文件或分区作为后备存储。
Q8: 有一个简单操作系统只支持单一目录结构,但是允许该目录中有任意多个文件,且带有任意长度的名字。
这样可以模拟层次文件系统吗?如何进行?A:使用文件名,如/usr/ast/file。
虽然它看起来像一个层次化的路径名称,但它只是一个包含嵌入的斜杠的单一名称。
Q9: 在UNIX 和Windows 中通过使用一个特殊的系统调用把文件的“当前位置”指针移到指定字节,从而实现了随机访问。
请提出一个不使用该系统调用完成随机存取的替代方案。
A:一种方法是在读取系统调用中添加一个额外的参数,告诉你要读取哪个地址。
实际上,每次读取都有可能在文件中进行搜索。
该方案的缺点是(1)每个读取调用都含有额外参数,以及(2)要求用户跟踪文件指针在哪里。
Q10.考虑图4-8中的目录树,如果当前工作目录是/usr/jim,则相对路径名为…/ast/x的文件的绝对路径名是什么?A: …将搜索移动到/usr,所以…/ast就是/usr/ast。
因此…/ast/x与/usr/ast/x相同。
Q11: 正如书中所提到的,文件的连续分配会导致磁盘碎片,因为当一个文件的长度不等于块的整数倍时,文件中的最后一个磁盘块中的空间会浪费掉,请问这是内碎片还是外碎片?并将它与先前一章的有关讨论进行比较。
A:原答案:由于这些被浪费的空间在分配单元(文件)之间,而不是在它们内部,因此,这是外部碎片。
这类似于交换系统或者纯分段系统中出现的外部碎片。
网上有人说这个答案是错的,说应该是内部碎片,这里是混淆了内存的内部/外部碎片,和磁盘的内部/外部碎片的区别。
外部碎片和内部碎片的区别- CSDN博客一、在内存上(使用连续分配算法来管理分配内存时会产生)的外部碎片和内部碎片两个概念内存碎片分为:内部碎片和外部碎片【内部碎片】内部碎片就是已经被分配出去(能明确指出属于哪个进程)却不能被利用的内存空间;内部碎片是处于(操作系统分配的用于装载某一进程的内存)区域内部或页面内部的存储块。
占有这些区域或页面的进程并不使用这个存储块。
而在进程占有这块存储块时,系统无法利用它。
直到进程释放它,或进程结束时,系统才有可能利用这个存储块。
单道连续分配只有内部碎片。
多道固定连续分配既有内部碎片,又有外部碎片。
【外部碎片】外部碎片指的是还没有被分配出去(不属于任何进程),但由于太小了无法分配给申请内存空间的新进程的内存空闲区域。
外部碎片是处于任何两个已分配区域或页面之间的空闲存储块。
这些存储块的总和可以满足当前申请的长度要求,但是由于它们的地址不连续或其他原因,使得系统无法满足当前申请。
产生外部碎片的一种情况:举个例子,在内存上,分配三个操作系统分配的用于装载进程的内存区域A、B和C。
假设,三个内存区域都是相连的。
故而三个***内存区域***不会产生外部碎片。
现在假设B对应的进程执行完毕了操作系统随即收回了B,这个时候A和C中间就有一块空闲区域了。
多道可变连续分配只有外部碎片。
总之,在内存上,外部碎片是位于任何两个操作系统分配的用于装载进程的内存区域或页面之间的空闲区域,内部碎片是位于一个操作系统分配的用于装载进程的内存区域或页面内部的空闲区域。
二、在磁盘上的外部碎片和内部碎片两个概念很多人会把文件碎片跟簇的概念混淆起来。
其实对windows系统来说硬盘上的每个分区都是由最小存储单元——簇组成的。
就好比,一面墙是由一块块转头组成的。
簇的大小可以在分区格式化时由用户定义,一般是数个KB大小,比如是8KB。
假设我有一个文件,大小是80MB零1KB(1MB=1000KB),换算一下就是80,001KB,其中的80,000KB正好占用10000个簇,**剩下的那1KB,不得以也要占用1个簇,但这最后一个簇还有7KB的空间没用上了。
而且这个未完全使用的簇,其他文件也不允许继续使用。
**这就造成了一点点的空间浪费。
不少人就把这被浪费了的7KB空间就是磁盘上的内部碎片。
而磁盘上的外部碎片(即平时所说的磁盘碎片,磁盘碎片清理工具只能清理磁盘上的外部碎片,清除不了磁盘上的内部碎片,除非改变文件系统的分配单位即簇的大小,使之是一个文件大小的整数倍。
)实际上指的是一个文件占据那些簇是不连续的,就相当于文件被分割开来,分别存放在相互间断的几段簇上。
文件被分割为几个部分就是几个碎片。
所以碎片其实是指文件碎片,可以理解成,文件破碎成片之意。
而且文件碎片之间有时候顺序还是错乱的。
比如说,有时候“文件里靠后的碎片”所占的簇段在硬盘上反而会排在“文件里位置靠前的碎片”簇段的前面。
这样一来,一个文件就会以比较混乱的顺序存放在硬盘上。
显然计算机读取连续的有序的数据肯定要比不连续的乱序的数据来得快。
所以整理碎片可能会大幅度提高系统性能。
举个例子,起初硬盘某个分区是空白的,写入三个文件A、B和C。
显然这个时候,三个文件都是顺次占用三个簇段(这个说明存放文件所用的文件系统应该是类似FAT这样的文件系统,具体参看注释1)。
故而三个文件不会产生碎片。
现在假设你删除了B文件,这个时候A和C中间就有一块空闲簇段了。
此时还是不存在文件碎片的,因为每个文件各自占据的簇段都是连续的,没有文件被分割。
而如果现在需要写入一个文件D,而且D 比刚刚删去的文件B要大。
那么A和C之间的空闲簇段就不足以放入D,再假设C后面的空闲簇段也不足以放下D,这个时候D就势必要分割成两块存放,一块放在A和C之间,另一块放在C之后。
这样一来,文件碎片就产生了。
D文件有两个文件碎片。
磁盘碎片整理要做的工作就是:把C文件前移,一直移到紧接A文件的簇段上去。
这样A和C之间就没有空闲簇了,C之后剩下的将是一段完整的空闲簇段,足以放下文件D。
这样D就也占据一段连续的簇段。
碎片也就消除了。
Q12:描述一个损坏的数据块对以下三种形式的文件的影响:(a)连续的,(b)链表的,(c)索引的。
A: 如果数据块在相邻的分配系统中被破坏,那么只有该块受到影响;文件块的其余部分可以被读取。
在链表分配的情况下,不能读取损坏的块;而且,从该损坏的块开始的所有块的位置数据也会丢失。
在索引分配的情况下,只有受损坏的数据块受到影响。
Q13: 一种在磁盘上连续分配并且可以避免空洞的方案是,每次删除一个文件后就紧缩一下磁盘。
由于所有的文件都是连续的,复制文件时需要寻道和旋转延迟以便读取文件,然后全速传送。
在写回文件时要做同样的工作。
假设寻道时间为5ms,旋转延迟为4ms,传送速率为8MB/s,而文件平均长度是8 KB,把一个文件读入内存并写回到磁盘上的一个新位置需要多长时间?运用这些数宇,计算紧缩16GB 磁盘的一半需要多长时间?A:传送一个文件需要的时间= 8KB / (8MB/s) = 0.9765625 ms把一个文件读入内存并写回到磁盘上的一个新位置所需时间= (5+4+0.9765625)x 2 = 19.953125 ms紧缩16GB磁盘的一半,需要传送8GB/8KB=2^20个文件,所需时间2M x 19.953125 = 20922368 ms = 20922.368 sQ14:基于前一个问题的答案,紧缩磁盘有什么作用吗?A:因为在系统删除的所有文件都会以碎片的形式存在磁盘中,当碎片到达一定量磁盘就不能再装文件了,必须进行外部清理,所以紧缩磁盘会释放更多的存储空间,但在每个文件删除后都压缩磁盘不是一个好办法。
Q15:某些数字消费设备需要存储数据,比如存放文件等。
给出一个现代设备的名字,该设备需要文件存储,并且适合连续的分配空间。
A:数码相机按顺序记录一系列照片,存储在某种非易失性存储媒介(例如,闪存)上。
当照相机复位时,该媒介被清空。
然后,按顺序依次记录一张照片,直到存储满,然后上载到硬盘上。
对于这种应用,相机内部文件的连续文件系统时最理想。
Q16:考虑图4-13中的i节点。
如果它含有用4个字节表示的10个直接地址,而且所有的磁盘块大小是1024KB,那么文件最大可能有多大?A: i节点包含10个直接磁盘地址还有一个间接块的地址,这个间接块里存放着额外的磁盘地址,额外的磁盘地址有1024KB/4B=218个,假设文件占用了所有可能的磁盘块,共计218+10=262154块,每块1MB,文件最大可能有262154MB。