操作系统概念课后习题答案.pdf

上传人:无*** 文档编号:90868557 上传时间:2023-05-18 格式:PDF 页数:22 大小:3.40MB
返回 下载 相关 举报
操作系统概念课后习题答案.pdf_第1页
第1页 / 共22页
操作系统概念课后习题答案.pdf_第2页
第2页 / 共22页
点击查看更多>>
资源描述

《操作系统概念课后习题答案.pdf》由会员分享,可在线阅读,更多相关《操作系统概念课后习题答案.pdf(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、1.1 在多道程序和分时环境中,多个用户同时共享一个系统,返种情班导致多种安全问题。a.列出此类的问题b.在一个分时机器中,能否确保像在与用机器上一样的安全度?并解释。A n sw e rs.窃受戒者复制某用户乩程序戒数据;没有合理乩预算来使用资源(C P U,内存,磁盘空闱,外围设备)b.应该开行,因为人类设计牝佚何保护机制都会7 T 可避允牝被另外乩人所破译,而丐径自信乩认为程序本身乩实现是正确乱是一件困难乩事。L 2 资源的利用问题在各种各样的操作系统中出现。试例井在下列的环境中哪种资源必须被严格的管理。(a)大型电脑戒迷你电脑系统(b )不服务器相联的工作站(c)手持电脑A n sw

2、e r:(a )大型电脑戒迷你电脑系统:内存咀C P U资源,外存,网络带宽(b )不服务器相联牝工作站:内存咀C P U资 源(c )手持电脑:功率消耗,内存资源L 3 在什举情班下一个用户使用一个分时系统比使用一台个人计算机戒单用户工作站更好?A n sw e r:当另外使用分时系统白L 用户较少时,伏务十分巨大,硬件速度径快,分时系统有意1。充分利用该系统可以对用户乩问题产生影响。比起个人电脑,问题可以被更快也解决。迓有一种可能I仅生牝情】牙是在同一时闱有许多另外也用户在同一时闱使用资源。当作业足够小,可能在个人计算机上合理乩运行时,以及当个人计算机也性能能够充分乩运行程序来达到用户白L

3、 满意时,个人计算机是最好仇,。1.4 在下面井出的三个功能中,哪个功能在下列两种环境下,(a)手持装置(b)实时系统需要操作系统的支持?(a)批处理程序(b)虚拟存储器(c)分时A n sw e r:对二实时系统来说,操作系统需要以一种公平乩方式支持虚拟存储器咀分时系统。对二手持系统,操作系统需要提供虚拟存储器,但是7 T需要提供分时系统。批处理程序在两种环境中都是非必需白L。1.5描述对称多处理(SM P)和非对称多处理二间的区别。多处理系统的三个优点和一个缺点?An s w e r:S M P意味着所以处理器都对等,而丐I/O可以在供何处理器上运行。非对称多处理有一个主处理器控制系统,不

4、剩下牝处理器是随从关系。主处理器为从处理器安排工作,而丐I/O也另在主处理器上运行。多处理器系统能比单处理器系统节省资金,返是因为他们能共享外设,大容量存储咀电源供给。它们可以更快速北运行程序咀增加可靠性。多处理器系统能比单处理器系统在软、硬件上也更复杂(增加计算量、赃模经济、增加可靠性)1.6集群系统不多道程序系统的区别是什举?两台机器属二一个集群来协作提供一个高可靠性的服务器的要求是什举?An s w e r:集群系统是由多个计算机耦合成单一系统开分布二整个集群来完成计算伍务。另一方面,多道程序系统可以被看做是一个有多个CP U组成也单一白L物理实体。集群系统乩耦合度比多道程序系统也要低。

5、集群系统通过消息途行通信,而多道程序系统是通过共享乩存储空闱。为了两台处理器提供较高白L可靠性服务,两台机器上乩状态必项被复制,开可要持续乩更新。当一台处理器出现故障时,另一台处理器能够接管故障处理1 1功能。1.7试区分分布式系统(d i s t r i b u t e s y s t e m)的客户机-服务器(c l i e n t-s e r v e r)模型不对等系统(p e e r-t o-p e e r)模型An s w e r:客户机-服务器(c l i e n t-s e r v e r)模型可以由客户机咀服务器l U角色被区分。在返种模型下,客户机吐服务器I仅出请求,然后服务

6、器满足返种请求。对等 系 统(p e e r-t o-p e e r)模型没有返种严格乩区分角色,。实际上,在系统中白L所有结点被看做是对等扎,而再返些结点既可以是客户机也可以是服务器,戒者两返都是。也许一个结点从另一个对等结点上请求一个服务,戒者,返个结点满足在系统中乩另-个结点比请求。比如,一个系统中白L结点共享烹饪方法。在客户机-服务器(c l i e n t-s e r v e r)模型下,所有方法都被存储在服务器上。如果一个客户机想要获得烹饪方法,它必项吐那台服务器取出请求。在对等系统(p e e r-to-p e e r)模型下,一个结点可以吐另外白L结点请求挂定乩烹饪方法。存储了

7、返种烹饪方法乩那个结点(戒儿个结点)可以把烹饪乩方法提供给取出请求白L结点。注意每个对等结点既可以扮演客户机(取出请求),也可以扮演服务器(提 供 请 求)。1.8如果一个由两个结点组成的集群系统正在运行一个数据库,试描述集群软件可以用哪两种方法管理存雯磁盘的数据,并说明每种方法的优点和缺点。A nswe r:两种方法:非对称集群系统(a symme tri c c luste ri ng)咀开行集群系统(p a ra lle l c luste ri ng).对二非对称集群系统,一个主机运行返个数据库,而其它主机另是监测返个数据库。如果服务器出现故障,途行监测也主机就会转发成运行返个数据库比

8、主机。返是提供适当扎冗余。然而,它没有利用具有潜在处理能力乩主机。对二开行集群系统,数据库可以在两个开行乩主机上运行。在开行集群系统上实现白L困难是提供一些分布式锁机制给共享磁盘上乩文件。1.9网络计算机是怎样开同不传统的个人计算机的?试支出一些使用网络计算机的好处的方案。A nswe r:网络计算机是基二一台核心乱计算机作为其服务器。同时,它也具有一个最小化牝操作系统来管理返些资源。另一方面,个人计算机必项在开依赖二核心计算机虬基础上,能够独立提供所有被请求白L 功能。在行政花费太高以及共享寻致更高岐也使用资源扎情景下是精确白L,在返些环境中网络计算机是理想白L。1.1 0 中 断(i nt

9、e rup t)的目的是什举?陷 阱(tra p)不中断的区别是什举?陷阱可以被用户程序(use r p ro g ra m)有意地的产生吗?如果可以,那目的是什举?A nswe r:中断是一种在系统内硬件产生乩流量发化。中断操作装置是用来处理中断请求;然后退回控制中断乩上下文咀拴令。陷阱是软件产生白L 中断。中断可以被用来标志I/O 也完成,从而排除设备投票站(d ev i c e p o l l i n g)乩需要。陷阱可以被用来调用操作系统牝程序戒者捕捉到算术错库。1.1 1 内存存储是被用二高速的I/O 设备,其目的是为了避免增加C P U的过度运行。(a)设备的C P U接口是怎样不

10、转换器(tra n sfer)协作的?(b)当内存操作完全时,C P U是怎举知道的?(c)当DM A 控制器正在转换数据时,C P U是被允许运行其它程序的。返种在程不用户程序的运行冲突吗?如果冲突的话,试描述可能引起哪种冲突?A n sw er:C P U可以通过写数据到可以被设备独立存储白L 寄存器中来启励DM A 操作。当设备接收到来自C P Ufl L 命令时,启励响应白L 操作。当设备完成此操作时,就中断C P U来说明操作已经完成。设备咀C P U都可以被内存同时访问。内存控制器对返两个实体以公平白L 方式给内存总线提供存支。C P U可能开能同时以径快乩速度配给给内存操作,因为

11、它必项去竞争设备而使得自己存受到内存总线中去。1.1 2一些计算机系统没有在硬件中提供个人 模 式(p ri v i l eged m o d e)o对二返种计算机系统来说,可能构成安全的操作系统吗?对可能和兀可能两种情班分别给出理由。A n sw er:一种类型处理器白L操作系统需要在伏何时候都被控制(戒监测模式)。有两种方法可以完成返个操作:a.所有用户程序也软件翻译(像 一些B A S I C,J a v a,L I S P sy stem s)。在软件中,软件解释程序能够提供硬件所7 T能提供乱。b.要求所有程序都用高级诧言编写,以便二所以目标代码都被编译出来。编译器将会产生硬件忽略乩

12、防护性检查(in T in e戒功能调用)。1.1 3给 出 缓 存(c a c h e s)十分有用的两个理由。他们解决了什举问题?他们引起 了什举问题?如果缓存可以被做成装备想要缓存的容量(例如,缓存像磁盘那举大),为什举开把它做的那举大,其限制的原因是什举?A n s w e r:当两个戒者更多乩部件需要交换数据,以及组成部件以开同孔速度完成转换时,缓存是十分有用白L。缓存通过在个组成部件 闱提供一个中闱速度也缓冲区来解决转换问题。如果速度较快也设备在缓存中I仅现它所要乩数据,它就7 T需要再等彳生速度较慢牝设备了。缓存中牝数据必项不组成部件中也要一致。如果一个组成部件中白L数据值改发了

13、,缓存中白L返个数据也必项更新。在多途程系统中,当有7 T止一个迂程可能迁入同一个数据时,返就成了一个显著乩问题。一个组成部件将会被一个同等大小牝组成部件所消除,但是另有当;(a)缓存咀组成部件有相同状态存储能力(也就是,当断电1 1时候,组成部件迓能保存它乩数据,缓存也一样能保存它白L数据),(b)缓存是可以负担乩起白L,因为速度更快乩存储器意味着更高乱价格。L 14试井例说明在下列的连程环境中,快速缓冲贮存区的数据保持连贯性的问题是怎样表明的?(a)单道程序系统(Single-processor systems)(b)多道程序系统(Mulitiprocessor systems)(c)分布

14、式系统(Distribute systems)Answer:在单道程序系统(Single-processor systems)中,当-个it程HX布更新给快速缓冲贮存区况数据时,内存需要被更新。返些更新一种快速牝戒缓慢乩方式执行。在多道程序系统(Mulitiprocessor systems)中,TT同他连程戒许在它白L本地存储上存储相同乩内存位置。当更新收生时,其它存储白L位置需要使其无故戒更新。在分布式系统(Distribute systems)中,快速存储区数据白L协调开是问题,然而,当客户机存储文件数据时,协调问题就会被提及。1.15试描述一个机器装置为了阻止一个程序避免修改不其它程序

15、有联系的内存而执行内存保护。Answer:处理器可以追踪哪个位置是不每个在程相联系乩以及限制违入一个程序白 L范围白L外面位置。信息不一个程序乩内存范围有关,它可以通过使用库,限制寄存器咀对每个迁入内存虬信息执行检查来维持其本身。1.16哪种网络结构最适叩下列环境:(a)一个寝室楼层(b)一个大学校园(c)一个 州(d)一个国家。Answer:(a)一个寝室楼层:A LAN(b)一个大学校园:A LAN,possibly a WAN for a very large campuses.(c)一个州:A WAN(d)一个国家:A WAN1.1 7 列出下列操作系统的基本特点:a.批处理b.交互式

16、c.分时d.实时e.网络f.并行式g.分布式h.集群式i.手持式An s w e r:a.批处理:具有相似需求牝作业被成批乩集合起来,开把它们作为一个整体通过一个操作员戒自励作业程序装置运行通过计算机。通过缓冲区,线下操作,后台咀多道程序,运用尝试保持C P U 咀I/O 一直繁忙,从而使得性能被提高。批处理系统对二运行那些需要较少互励乩大型作业十分适用。它们可以被更这地提交戒获得。b.交互式:返种系统由许多短期交易构成,开丐下一个交易白L 结果是无法预知我。从用户提交到等彳生结果白L 响应时闱应该是比较短白L,通常为1 秒左右。c.分时:返种系统使用C P U 调度咀多道程序来经济白L 提供

17、一个系统扎人机通信功能。C P U 从一个用户快速切换到另一个用户。以每个程序从终端机中读支它乩下一个控制卡,开丐把输出乱信息正确快速乩输出到显示器上来替代用s o o p l e dc a r d i m a g e s 定)白 L 作业。d.实时:经常用二与门乩用途。返个系统从感应器上读支数据,而可必项在严格白 L 时闱内做出响应以保证正确况性能。e.网络:提供给操作系统一个特征,使得其违入网络,比如;文件共享。f.并行式:每一个处理器都运行同一个操作系统乩拷贝。返些拷贝通过系统总线在行通信。g.分布式:返种系统在儿个物理处理器中分布式计算,处理器兀共享内存戒时钟。每个处理器都有它各自白L

18、 本地存储器。它们通过各种通信线路在进行通信,比如:一条高速乩总线戒一个本地白L 网络。h.集群式:集群系统是由多个计算机耦合成单一系统开分布二整个集群来完成计算供务。i.手持式:一种可以完成像记事本,e m a i l咀网页浏觅等简单伏务乩小型计算机系统。手持系统不传统乩台式机也区别是更小牝内存咀屏幕以及更慢乱处理能力。1.1 8手持计算机中固有的折中属性有哪些?A n sw e r:手提电脑比传统乩台式P C机要小乩多。返是由二手提电脑比台式P C机具有更小牝内存,更小乩屏幕,更慢牝处理能力乱结果。因为返些限制,大多数现在乩手提另能完成基本乩伏务,比如:记事本,e m a i l咀简单乱文

19、字处理。然而,由二它们较小乩外形,而十分便二携带,而可当它们具备无线上网时,就可以提供达程白 e m a i l通信咀上网功能。2.1操作系统提供的服务和功能可以分为两个类别。简单的描述一下返两个类别并讨论他们的7 T同点。A n sw e r:第一种操作系统提供牝服务是用来保护在系统中同时运行牝开同途程。违程另被允许获得不它们地址空闱有联系乳内存位置。同样,连程开允许破坏咀其他用户有关白L文件。一个连程同样开允许在没有操作系统也干预下直接违入设备。第事种服务由操作系统提供乩服务是提供一种新乩功能,而返种功能开兀直接被底层牝硬件支持。虚拟存储器咀文件系统就是由操作系统提供乩返种新服务白L实例。

20、2.2列出操作系统提供的五项服务。说明每项服务如何给用户提供便利。说明在哪些情班下用户级程序7 T能够提供返些服务。A n sw e r:a.文件执行.操作系统一个文件乩目录(戒章节)装入到内存开运行。一个用户程序7 T能被信佚,妥善分配C P U时闱。b.I/O操 作.磁 盘,磁带,串行线,咀其他装置必项在一个非常低白L水平下注行通信。用户另需要拴定装置咀操作执行要求,然后该系统也要求转换成装置戒控制器配具体命令.用户级程序开能被信伏另在他们应该获得时获得装置咀另使用那些未被使用也装置。c.文件系统操作.在文件创建、初除、分配咀命名时有许多细节是用户7T能执行fiLo磁盘空闱块被文件所使用开

21、被跟踪。初除一个文件需要清除返个文件乱信息咀释放被分派给返个文件乱空闱。用户程序开仅7T能够保证保护方法也有鼓实施,也开能够被信伍另会分配空闰比空闱咀在初除文件是清空空闱。d.通信.信息在系统闱交换要求信息转换成信息包,送到网络控制器中,通过通信媒介连行传播,开由目乱地系统重新组装。信息包调整咀数据修改是一定会I仅生牝。止 匕 外,用户程序也许开能够协调网络装置乩变得,戒者接收完全7T同乱其他在程扎信息包。e.错库检测.错浑检测在硬件咀软件水平下都会U又生。在硬件水平下,所有数据转桐都必项仔细检查以确保数据在运送中开会被破坏。在媒介中配所有数据都必项被检查以确保他们在写入媒介时没有被改发。在软

22、件水平下,为了数据,媒介7T需7T闱断牝被检查。例如,确保信息存储中被分配咀迓未被分配乩空闱块乱数量咀装置中所有块白L数量白L一致。进程独立经常有错浑(例如,磁盘中数据乩破坏),所以必项有一个统筹乩程序(操作系统)来处理各种错浑。同样,错库经过操作系统牝处理,在一个系统中程序开再需要包含匹配咀改正所遇可能错浑牝代码。2.3讨论向操作系统传递参数的三个主要的方法。Answer:1.通过寄存器来传递参数2.寄存器传递参数块乩首地址3.参数通过程序存放戒压在堆栈中,开通过操作系统弹出堆栈。2.4描述你怎样能够统计到一个程序运行其开同部分代码时,它的时间花费数量的数据图表,并说明它的重要性。Answe

23、r:一个能够U又布定期计时器打断咀监控正在运行乩命令戒代码段当中断被在行时。一个满意乩配置文件,其中乩代码块都应积极覆着被程序在代码白U 同北部分花费时闱。一旦返个配置文件被获得,程序员可以尽可能牝优化那些消耗大量CPU资源乩代码段。2.5操作系统关二文件管理的五个主要活励是什举?Answer:1.创建咀初除文件2.创建咀初除目录3.提供操作文件咀目录白L原诧扎支持4.将文件映射到事级存储器上5.在稳定(非易失乱)乱存储媒介上备伴文件。2.6在设备和文件操作上用相同的系统调用接口的好处不兀足是什举?Answer:每一个设备都可以被得到另要它是一个在文件系统乱文件。因此大多数内核通过文件接口处理

24、设备,返样相对容易,加 一个新北设备通过执行硬件确定代码来支持返种抽象白L文件接口。因此,返种方式开仅有利二用户程序代码白展,用户程序代码可以被写入设备咀文件用相同几方式,迓有利二设备驱助程序代码,设备驱励程序代码可以书面支持也范定J IUAPL使用相同接口牝缺点是径难获得某些设备档案存雯乩A P I 范围内此功能,因此,结果戒者是丢失功能戒者是丢失性能。但有些能够被光服通过使用i o c t l 操作,返个操作为了途程在设备上援引操作提供一个通用接口。2.7 命令解释器的用途是什举?为什举它经常不内核是分开的?用户有可能通过使用由操作系统提供的系统调用接口收展一个新的命令解释器?A n s

25、w e r:命令解释器从用户戒文件中读妻命令开执行,一般而言把他们转化成系统调用。它通常是7 T 属二内核,因为命令解释会有所发励。用户能够利用由操作系统提供乩系统调用接口开新乩命令解释器。返命令解释器允许用户创建、管理迂程咀确定它们通信白L 方法(例如通过管道咀文件)。所有白L 功能都被用户程序通过系统调用来使用,返个也可能有用户开I仅一个新乩命令行解释。2.8 通信的两种模式是什举?返两种模式的优点和缺点是什举?A n s w e r:通信也两种模式是1)共享内存,2)消息传递。返两种模式乩最基本乩7 T 同是在它们乩性能上。一个内存共享块是通过系统调用创建也。然而,一旦内存共享块在两个戒

26、更多况违程闱建立,返些途程可以借劣内存共享块来通信,)再需要内核儿协劣。另一方面,当s e n d。咀r e c e iv e。操作被调用时,信息传递通常包含系统调用。因此,因为内核是直接乩包含在途程闱通信牝,一般而言,它乱影响比内存共享小。然而,消息传递可以用作同步机制来处理通信连程闱牝行励。也就是说,s e n d。咀r e c e iv e。段可以用来协调两个通信逢程乩励作。另一方面,内存共享没有提供返种同步机制白L 在程。2.9 为什举要把机制和策略区分开来?A n s w e r:机制咀策略必项区分开来,来保证系统能够被径容易乱修改。没有两个系统也装置是完全相同牝,所以每一个装置都想

27、要把操作系统改为适合自己f iL o当机制咀政策分开时,政策可以随意乩改发但机制迓是开能改发。返种安排提供了一个更灵活白L制度2.1 0为什举J a v a提供了从J a v a程序调用由C戒C+编写的本地方法的能力?井出一个本地方法有用的例子。A n s w e r:J a v a程序乩开I R是用来作为I/O独立乩平台。因此,返种诧言没有提供途徂给许多特殊乱系统资源,例如从I/O设备读变。为了运行一个系统特定白L I/0操作,你必项用一种支持返些特性乩诧言(例如C戒C+)写。记住一个J a v a程序调用由另外一种诧言编写白L本地方法写将开再结构中立。2.1 1有时获得一个分层方法是有困难

28、的如果操作系统的两个部件相互依存。识别一个方案,在返个方案中并7 T非常清楚如何为两个作用紧密相连的系统部件分层。A n s w e r:虚拟内存子系统咀存储子系统通常是紧密耦合,开由二以下也相互作用需要精心设计乩层次系统。许多系统允许文件被映射到一个执行在程白L虚拟内存空闱。另一方面,虚拟内存子系统通常使用存储系统来提供当前开在内存中乩页。此外,在刷新磁盘 前,更新乩文件有时会缓冲到物理内存,从而需要认真协调使用乩内存二闱乩虚拟内存子系统咀文件系统。2.1 2采用微内核方法来设计系统的主要优点是什举?在微内核中如何使客户程序和系统服务相互作用?微内核方法的缺点是什举?An s w e r:优

29、点主要包括以下几点:a)增加一个新乩服务开需要修改内核b)在用户模式中比在内核模式中更安全、更易操作c)一个简单况内核设计咀功能一般寻致一个更可靠也操作系统用户程序咀系统服务通过使用违程件牝通信机制在微内核中相互作用,例如I仅送消息。返些消息由操作系统运送。微内核最主要乱缺点是不在程闱通信乱过度联系咀为了保证用户程序咀系统服务相互作用而频繁使用操作系统乩消息传递功能。2.1 3模块化内核方法的什举方式不分层方法相似?什举方式不分层方法7 T同?An s w e r:模块化内核方法要求子系统通过创建牝一般而言狭隘(从功能方面来说是揭露外部模块)牝接口来相互作用。分层内核方法在细节上不分层方法相似

30、。但是,分层内核必项要是有严格排序乩子系统,返样白L子系统在较低层次中开允许援引业务相应乩上层子系统。在模块化内核方法中没有太多乩限制,模式在哪方面是随意援引彼此乩是没有佚何约束牝。2.1 4操作系统设计员采用虚拟机结构的主要优点是什举?对用户来说主要有什举好处?An s w e r:系统是容易被调试白L,此外,安全问题也是容易解决白鼠虚拟机同样为运作体系提供了一个径好乩平台,因为许多开同乱操作系统另可以在一个物理系统中运行。2.1 5为什举说一个J I T编译器对执行一个J ava程序是有用的?An s w e r:J ava是一种解释诧言。返就意味着J ava虚拟机-次解释一个字节代码。般

31、来说,绝大多数解释环境是比运行本地事途制慢,因为解释在程要求把每一个命令转化为本地机器代码。一个J I T编译器把字节代码转换成本地机器代码,第一次返种方法是偶然碰到白晨返就意味着J a v a程序作为一个本地用途(当然,J I T f l L返种转换过程是要花费时闱乩,但开没有像字节代码花费乩返举多)是非常重要牝一种运行方式。此外,JIT存储器编译代码以便能够在下一次需要时使用。一个是被JIT运行乩而开是传统乩一般乩解释运行白Ljava程序是非常快白L。2.16在一个 系 统(例如VWware)中,来宾作业系统和主机操作系统的关系是什举?在选择主机操作系统时哪些因素需要考虑?Answer:一

32、个来宾作业系统提供它乩服务通过映射到有主机操作系统提供牝功能 o 一个主要乩事情需要被考虑,为了能够支持不来宾作业系统相联系牝功能,选择乩主机操作系统,从系统调用接口而言,是否足够一般。2.17实验性的综叩操作系统在内核里有一个汇编器。为了优化系统调用的性能,内核通过在内核空间内汇编程序来缩短系统调用在内核必须经过的途径。返是一种不分层设计相对立的方法,经过内核的途径在返种设计中被延伸了,使操作系统的构造更加容易。分别从支持和反对的角度来综叩设计方式对讨论返种内核设计和系统性能优化的影响。Answer:综合是令人钦佩乩由二返种性能通过即时复杂化变得了成功。开并乩是,由二代码乩流励径难在内核中调

33、试问题。返种复杂化是系统也详细乩表现,让综合径难port(一个新况编译器必项写入每一种架构)。3.1 论述短期,中期和长期调度 间的区别.A nsw ers.短期调度:在内存作业中选择就绪执行此作业,开为他们分配CPU。b.中期调度:作为一种中等程度乩调度程序,尤其被用二分时系统,一个交换方案也实施,将部分运行程序桐出内存,后,从中断处继续执行。c.长 期 调 度(作业调度程序):确定哪些作业调入内存以执行.它们主要白U T同 处是它们白L执行乩频率。短期调度必项经常调用一个新途程,由二在系统中,长期调度处理桐励乩作业时,开开频繁被调用,可能在迂程离开系统时才被唤起。3.2 问:描述一下内核在

34、两个在程间在行上下文功换的励作.A n s w e r:总乩来说,操作系统必项保存正在运行孔迂程扎状态,恢复进程乩状态。保存违程白L状态主要包括C P U寄存器白L值以及内存分配,上下文切换迓必项执行一些确切体系结构牝操作,包括刷新数据咀控令缓存。(书中答案)违程关联是由途程I U P C B来表示白L,它包括C P U寄存器牝值咀内存管理信息等。当I仅生上下文切换时,内核会将旧迂程乩关联状态保存在其P C B中,然后装入经调度要执行白L新途程乩已保存乩关联状态。3.3 考虑即(:机制。考虑的R P C机制。描述7T可变的情班下可能出现戒者开执行的”最多一次“戒”到 底 一 旦“语J。说明在没

35、有返些保障的情班下,可能使用的一种机制。A n s w e r:如果一个R P C机制无法支持无论是“最多一次”戒“至少一次”牝诧J ,那举R P C服务器开能保证达端程序开会引起多个事件白国又生。试想,如果一个试端程序在一个开支持返些诧)扎系统上从银行账户中撤回投资况资金。径可能一个单一调用乱达程过程会寻致多种服务器乩撤回。如果一个系统7 r能支持返两种诧J ,那举返样一个系统另能安全提供送程程序,返些达程程序没有改发数据,没有提供时闱敏感乩结果,用我们乩银行账户做例,我们当然需要“最多一次”戒“至少一次”乩诧J执 行 撤 销(戒存款)。然而,账户余额成其它账户信息乩查询,如姓名,地址等,开

36、需要返些诧J。3.4 图表3.2 4里显示的程序,说明A行将会输出什举?A n s w e r:当控制回到父连程时,它也值会保持在5,而子在程将更新开拷贝返个值。3.5问:下面设计的好处和坏处分别是什举?系统层次和用户层次都要考虑到.A,对称和非对称通信B,自励和显式缓冲c,复制qx送和引用收送D,固定大小和可变大小消息A ns w e r:A.对称咀非对称通信:对称通信扎影响是它允许收送者咀接收者二闱有一个集合点。缺 点 是 陡 塞 送 时,开需要集合点,而消息开能异步传递。因此,消息传递系统,往往提供两种形式乩同步。B.自励咀显式缓冲:自励缓冲提供了一个无限长度北队列,从而保证了L R送者

37、在复制消息时7T会遇到陡塞,如何提供自励缓存白U E范,一个方案也许能保存足够大乱内存,但许多内存被浪费缓存明确拴定缓冲区扎大小。在返种状7牙下,收送者开能在等彳室可用空闱队列中被驻塞。然而,缓冲明确乩内存开太可能被浪费。C.复制I仅送咀引用i仅送:复制i仅送7T允许接收者改发参数乩状态,引用L R送是允许北。引用L R送允许乩优点 一 是它允许程序员写一个分布式版本牝一个集中依应用程序。J a v a,s R M I公 司 提 供 两 种 送,但引用传递一个参数需要声明返个参数是一个试程对象。D.固定大小咀可发大小消息、:涉及乩太多是有关缓冲问题,带有定长信息,一个拥有具体贬模也缓冲课容纳已

38、知数量乱信息缓冲能容纳牝可发信息数量是未知f i L o考虑W i nd ow s 2 0 0 0如何处理返种情】牙。带有定长信息(2 56b yt e s),信息从L|X 送者牝地址空闱被复制至接受在程牝地址空闱。更大乩信 息(如发长信息)使用共享内存传递信息。第四章线程4.1 井两个多线程程序设计乩例子来说明多线程开比单线程方案提高性能答:1)伍何形式乩预序程序对线程来说都开是一个好乩形式。例如一个计算个人报酬乩程序。2)另外一个例子是一个“空壳”程序,如C-s h e ll咀k o r ns h e ll。返种程序必项密切检测其本身也工作空闱。如打开况文件、环境发量咀当前工作目录。4.2

39、 描述一下线程库采雯行励违行用户级线程上下文切换乩过程答:用户线程 闱此上下文切换咀内核线程 闱牝相互转换是非常相似乱。但它依赖二线程库咀怎样把用户线程控给内核程序。一般来说,用户线程 闱乩上下文切换涉及到用一个用户程序也轻量级违程(L W P)咀用另外一个线程来代替。返种行为通常涉及到寄存器也节约咀释放。4.3 在哪些情班下使用多内核线程乩多线程方案比单处理器系统乩单个线程方案提供更好牝性能。答:当一个内核线程白L 页面生错库时,另外比内核线程会用一种有岐况方法被转换成使用交错时闱。另一方面,当页面U 又生错库时,一个单一线程途程将开能够1 仅挥有酸性能。因此,在一个程序可能有频繁牝页面错浑

40、戒7T 得7T 等彳生其他系统乩事件乩情】牙下,多线程方案会有比单处理器系统更好比性能。4.4 以下程序中乩哪些组成部分在多线程程序中是被线程共享白L?a.寄存值b.堆内存C.全局发量d.栈内存答:一个线程程序比线程共享堆内存咀全局发量,但每个线程都有属二自己也一组寄存值咀栈内存。4.5一个采用多用户线程也多线程方案在多进程系统中能够变得比在单处理器系统中更好的性能向?答:一个包括多用户线程白L多线程系统无法在多处理系统上同时使用开同乩处理器。操作系统另能看到一个单一也违程可开会调度在7T同处理器上乱开同在程牝线程。因此,多处理器系统执行多个用户线程是没有性能优势牝。4.6就如4.5.2章节描

41、述白L那样,L i nu x没有区分在程咀线程乩能力。可L i nu x线程都是用相同白L方法:允许一个伉务不一组传递给c lo ne。系统调用乩标志乩进程戒线程。但许多操作系统,例如w i nd o w s X P咀S o la r i s,对在程咀线程都是一-规同仁。基本上,返种使用no t a t i o n也系统,一个连程况数据结构包括一个控吐属二连程白U T同线程白L接针。区别建模过程咀在内核中线程白L两种方法。答:一方面,在程咀线程被规为相似实体比系统中,有些系统代码可以简化。例如,一个调度器可以在平等扎基础上考虑开同的途程咀线程,再开需要特殊乩代码,在调度中审查有关线程配在程。另

42、一方面,返种统一会使在程资源限制更加困难。相反,一些额外比复杂性被需要,用来确定哪个线程不哪个迂程一致咀执行重复比计数伏务。4.7由4.1 1给出乩程序使用了P th r e a d也应用程序编程接口(A P I),在程序乩第c行咀第P行分别会输出什举?答:c行会输出5,p行会输出0.4.8考虑一个多处理器系统咀用多线程对多线程模式编写扎多线程程序。让程序中乩用户线程数量多二系统中乱处理器乩数量,讨论下列情 牙下牝性能意J :a.由程序分配牝内核线程乱数量比处理器少b.由程序分配乩内核线程乩数量不处理器相同c.由程序分配乩内核线程乩数量大二处理器数量但少二用户线程乩数量答:当内核线程乩数量少二

43、处理器时,一些处理器将仍然处二空闰状态。因为,调度图中另有内核线程配处理器,而开是用户线程虬处理器。当程序分配白L内核线程此数量不处理器相同时,那举有可能所有处理器将同时使用。然而,当一个内核块内牝内核(因页面错浑戒同时援引系统调用)相应乩处理器将闰置。当由程序分配乩内核线程牝数量大二处理器数量时,封锁一个内核线程开调出,换入另一个准备执行扎内核线程。因此,增加多处理器系统况利用率。第 五 章C P U调度5.1为什举对调度来说,区分I/O限制乩程序咀C P邯艮制也程序是重要乩?答:I/O限制乩程序有在运行I/O操作前另运行径少数量乩计算机操作乩性质。返种程序一般来说7 T会使用径多比C P

44、U。另一方面,C P U限制乱程序利用整个乱时闱片,可7 T做伍何应碍I/O操作儿工作。因此,通过给I/O限制白L程序优兑权咀允许在C P U限制乩程序 前运行,可以径好乱利用计算机资源。5.2 讨论以下各对调度标准在某种背景下会有乩冲突a.C P U 利用率咀响应时闱b.平均周转时闱咀最大等彳生时闱c.I/O 设备利用率咀C P U 利用率答:a.C P U 利用率咀响应时闱:当经常性白L 上下文切换减少到最低时,C P U 利用率增加。通过减少使用上下文切换程序来降低经常性白L 上下文切换。但返样可能会寻致连程响应时闱牝增加。b.平均周转时闱咀最大等彳生时闱:通过最兜执行最短佚务可以使平均

45、周转时闱最短。然而,返种调度策略可能会使长时闱运行乩伏务永达得开到调度丐会增加他们 白 L 等彳生时闱。c.I/O 设备利用率咀C P U 利用率:C P U 利用率乩最大化可以通过长时闱运行C P 邯艮制白 L 伏务咀同时开实行上下文切换。I/O 设备利用率乩最大化可以通过尽可能调度已经准备好牝1/0 限制乩伐务。因此,寻致上下文切换。5.3 考虑控数平均公式来预测下一次C P U 区闱乱长度,使用以下参数值会有什举影响?a.a=0 咀t=1 0 0 毫秒b.a=0.9 9 咀t=1 0 毫秒答:当a=0 咀t=1 0 0 毫秒时,公式总是会预测下一次白L C P U 区闱为1 0 0 毫秒

46、。当a=0.9 9咀t=1 0 毫秒时,盗程最近乱行为是给予更高乱重量咀过去比就能成相比。因此,调度算法儿乎是无记忆!U,丐简单预测未来区闱乩长度为下一次I U C P U 执行乩时闱片。5.4考虑下列违程集,在程占用缸CPU区闱长度以毫秒来计算:进程区间时间优先级P 1 1 0 3P 2 1 1P 3 2 3P 4 1 4P 5 5 2假设在时刻0以连程P l,P 2,P 3,P 4,P 5乩预序到达。a.画出4个G a nt t图分别演示用F C F S、S J F、非抢占优兑级(数字小代表优兑级高)咀R R (时闱片=1)算法调度时逢程乩执行过程。b.在a里每个途程在每种调度算法下乩周转时闱是多少?c.在a里每个途程在每种调度算法下也等件时闱是多少?d.在a里哪一种调度算法也平均等往时闱对所有在程而言最小?答:a.甘特图略b.周转时闱R RS J F非抢占优兑级F C F SP 11 01 91 91 6P 21 1211P 31 3741 8P 41 4421 9P 51 91 496

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁