操作系统结构和功能分析.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文档。上传文档
查看更多
操作系统结构和功能分析

操作系统结构和功能分析   摘要:对操作系统的结构进行分析比较,提出了操作系统在功能上的改进,并以L4微内核操作系统为例,说明如何提高操作系统的运行效率。   关键词:操作系统;结构;L4   中图分类号:TP316文献标识码:A文章编号:1672-7800(2011)01-0029-02      作者简介:于莉(1977-),女,天津人,硕士,天津市财贸管理干部学院讲师,研究方向为软件工程。1操作系统的结构    软件是典型的知识产品,是有结构的,操作系统也不例外。软件结构是由软件组成成分构造软件的过程、方法和表示。由于软件反映的是客观事物,而客观世界总是处在不断的发展与变化中,软件系统不可能一成不变。新需求、新技术、新方法的出现都是促进软件发展的重要因素。对软件结构的研究在整个软件技术发展历程中贯穿始终,人们一直在寻找构造软件的更好办法。    结构设计是一个具有普遍性的问题,任何大型的工程任务都要认真地考虑结构问题,具有并发特征的操作系统同样如此。操作系统的结构分为整体式(monolithic)结构、模块组合结构(如UNIX)、层次结构(如Multics)以及微内核结构(如Mach、Chorus 、L4)。后面发展的结构通常都吸收了以前的结构的优点。新的结构设计方法的出现也往往伴随着新的结构概念和新的结构工具。    早期的模块组合结构(也称无序模块结构)体现了“分而治之”的系统开发思路。结构化程序设计方法为这种结构的系统开发提供了有效支持。为支持多道程序运行,操作系统的研究人员提出了进程的概念,设计了分时系统;提出了虚拟存储的概念,在紧张的内存中可运行较大的程序、可运行多个程序。为更好地处理系统中的并发问题,人们设计了PV原语、信号量、管程与条件变量等机制;针对整体式结构中核内实体间无保护的问题,人们提出了基于权能(capability)的系统,如Hydra、EROS等。这一时期的研究偏重于多道程序环境下的并发问题。随着系统规模的增长,模块组合结构的系统中,各模块之间的交互趋于复杂,于是人们开始寻找更为有效的系统结构设计方法。首先提出的层次结构设计,主要包括进程分层结构和层次管程结构。    层次结构针对系统中多道程序并发运行且共享资源的矛盾,尝试为大系统、复杂系统的构造制定规则。进程分层结构中,系统服务模块按其语义和依赖关系分层实现,下层模块为上层模块实现功能调用接口,并利用更下层模块所提供的接口服务来构造本层服务。规定严格的调用层次关系,只能由上层模块调用下层模块,这样约束了系统中模块间交互方式,使得系统结构更为清晰。不过,层次结构也带来一些问题:②任务控制块存储开销大;②同步比较分散;③层次过多时降低了性能;④无限制的分层造成系统膨胀;⑤不适合本可顺序执行的程序。层次管程结构中,系统分别用管程和类程来实现对并发资源访问和专用资源访问的控制,在此基础上改进了并发支持,但在全局互斥问题上仍有不足,层次结构中其他问题仍然存在。20世纪80年代后期,出于分布式操作系统、网络操作系统的研究需要,人们提出了微内核结构,试图解决层次结构中存在的问题,同时,在分布式系统中各节点上提供最小化的虚拟机器,屏蔽物理机器的硬件特性差异。    微内核结构也称客户/服务器结构。微内核结构中,大部分传统的系统服务被放到用户空间执行,以服务器进程的形态与用户应用并存于同一特权级(用户模式),而将系统中最基本的功能放在内核模式下执行。内核中最基本的功能包括中断与异常处理、线程管理、地址空间映射及基于消息机制的任务间通信。内核所提供的消息机制支持多个用户进程间及其与服务器进程间的通信。微内核结构的优点是:①内核精简,可移植性好;②稳定性、安全性好;③易于维护;④API简单;⑤可扩缩性好,直接支持分布式应用。但早期的实现中,进程间通信均需经过微内核,每次通信至少需要四次运行态的切换,开销很大。从实用的角度看,20世纪90年代初期实现的第1代微内核系统是失败的。20世纪90年代中后期,人们提出了第2代微内核的设想,并实现了一些原型系统。第2代微内核针对IPC机制作了细致的优化,特别是Cache和TLB的管理上,大大提升了系统性能。不过,在微内核系统中,应用程序与系统服务的开发面对的是很小的内核,往往需要自行实现较多功能,困难较大。    到目前为止,整体式结构、模块组合结构、层次结构(包括层次管程结构)和微内核结构如图1所示。仍各自被不同的操作系统采用。原因是这几种结构各有特点,各有自己的适用范围,且在一定程度上互为补充。   图1操作系统结构比较    考察图1中的层次结构和微内核结构,不难发现:层次结构可以看作是对操作系统服务的一种“纵向”分解、“垂直”分解,高层的服务建立在低层及更低层服务基础之上;微内核结构则可以

文档评论(0)

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

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

1亿VIP精品文档

相关文档