05春操作系统试卷点评..docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2005春操作系统试卷点评 近几年内,这将是我最后一次教OS,没准也是这辈子的最后一次了,不再出来害人了,也不会再出题了,试卷就完全公开了。任何人可以以任何形式随意使用这些题目、答案和点评,只要使用后告诉我一声就行。 单选题(每题2分,共10分) (1) 操作系统是 ( ) A. 硬件 B. 软件 C. 中间件 D. 人件 答案是B,这个很显然。不过回答C的人不是凡人,也得分。这道题充分体现了计算机学科很多概念不能机械描述的特点。中间件的普遍特点是粘合两个不同系统,并使这两个系统之间的耦合度降低。OS符合这个特点,所以说它是一种中间件并不为过。OS的一些功能还要依赖CPU的“特别关照”实现,从这一点看,它也不能说就是纯软。我一直很讨厌名词解释、填空这样的题目,选择也不喜欢,就是因为这种机械的题目无法表达计算机的多样化特色。 (2) 下列事物不是操作系统的是 ( ) A. JVM B. CP/M C. MS-DOS D. UNIX 答案是A。不过JVM某种程度上也具备了OS的特质,拿它做一个只跑java程序的OS也是可以的,但与其它三个纯种OS比起来,它是最佳答案。 (3) 下列语言中,不能用来编写操作系统的是 ( ) A. ASM B. Java C. C D. C++ 答案是B。虽然没学过汇编,可能没有人在课堂告诉你ASM是什么,但这是你应该知道的。就算你不知道,学过java应该也知道java的本质是不能用来编写OS的。但是,如果强词夺理地说,做一个java到本地代码的编译器,再扩上一些不在乎跨平台能力的功能库,没有什么语言不能做OS。语言只是一个描述而已,其能力体现在你赋予它什么。计算机科学真奇妙呀 (4) 下列资源一般不由操作系统管理的是 ( ) A. 内存 B. 声卡 C. CPU D. 以上皆非 答案是D。没啥可说的。有几个人选B,难道你连windows都没setup过? (5) 下列说法中正确的是 ( ) A. 任何应用程序都不能绕过操作系统而直接与硬件交互 B. 没有操作系统的计算机是无法执行任何程序的 C. 设备驱动程序必须由设备厂商开发 D. 文件的长度与它占用的物理空间大小是一致的 E. 以上都不正确 答案是E。基本来说,非常肯定的说法一定是错误的。计算机软件完全人造的东西,它的一切都是人为控制的,而不是由大自然或上帝主宰,所以一切皆有可能。 如果OS允许,这是可以的,比如DOS 操作系统本身就是程序。BIOS也是程序。更有很多应用程序是完全在硬件平台之上构建,没有OS支持的 谁说M$不能写驱动程序?你也能写驱动程序 只在很少的情况下一致 简答题(20分) 进程VS 线程!请说出两者的最大相同和最大不同。(4分) 两者都可以并行执行(2),但线程之间可以共享更多的资源,进程则较难甚至不能共享资源(2)。 有的人就是把进程是什么、线程是什么抄了上去,字没少写,但,你是让我来总结相同和不同吗?开卷考试考的是你的大脑,不是手指 从操作系统角度看,最实际的直面死锁的方法是什么?为什么是它? 从程序员角度看,举出一种可以避免死锁的办法。(4分) 鸵鸟策略,即不理会它(1)。因为发生死锁的概率很低(1),而处理死锁的算法都很复杂(1),得不偿失。 避免死锁的方法很多,只要具体一点写就可以。 如果没有CPU的“特别关照”,很多现代操作系统功能的实现都会效率很低甚至不可实现。请举出两个例子来证明这一观点。(4分) 没有TSL指令,P、V的原语性很难实现; 没有MMU、TLB,页面的地址转换会很慢; 没有对R和M位的支持,页面置换算法很难实现; “特别关照”,就是说CPU特意为OS准备的东西。CPU速度快、DMA、中断、MMX、3DNOW等是CPU的通用功能,和OS无关 一般一个操作系统要提供三类接口给不同类型的使用者,是哪三类接口?各给什么类型的使用者?(4分) Shell,给操作人员; 应用开发接口,也叫系统调用,给应用程序开发人员; 系统开发接口,给在核心做开发的人,比如驱动程序开发者。 产生死锁的4个必要条件是什么?(4分) 这题是送分的,没有人在此题丢分。 求解题(20分) 下面的示意性代码片段摘自一个运行在用Round-Robin算法进行线程调度的操作系统上的程序。它建立了若干个同优先级的线程,其中一个线程执行thread_worker2(),其余线程执行thread_work1()。这里面当然肯定存在着竞争(Race Condition)。请举出一种因为竞争而导致错误的情况,并用P、V原

文档评论(0)

yxnm + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档