嵌入式系统高级部分-嵌入式操作系统导论.pptVIP

嵌入式系统高级部分-嵌入式操作系统导论.ppt

  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文档。上传文档
查看更多
嵌入式系统高级部分-嵌入式操作系统导论ppt课件

嵌入式系统原理与应用 信息安全工程学院 上海交通大学 操作系统基础 内核 内核(kernel)是操作系统的内部核心程序,它向外部提供了对计算机系统资源进行请求和管理的调用接口和服务 内核 可以将操作系统的代码分成两部分: 内核所在的地址空间称为内核空间; 而在内核以外,剩下的程序统称为外部管理程序,它们大部分是对外围设备的管理和界面操作,外部管理程序与用户进程所占据的地址空间称为外部空间。 通常,一个程序会跨越两个空间。 当执行到内核空间的一段代码时,称程序处于内核态 当程序执行到外部空间代码时,称程序处于用户态。 操作系统分类1 按照操作系统的内核模式可以分为: 微内核 大内核 混合式内核 微内核模式 微内核 Mach 首先使用微内核结构 通过划分系统程序和用户程序,把所有不必要的部件移出内核,形成一个小内核 微内核提供最少量的进程管理、存储管理,以及通信功能 微内核特点 接口一致(Uniform interface): 所有进程请求使用统一的接口,进程不需要区分内核模式和用户模式服务,由于这些服务全部通过消息传递提供。 微内核特点 扩展性(Extensibility): 由于新型硬件设备和新型软件技术不断发展,任何操作系统不可避免地需要修改,微内核结构允许加入新的服务,支持在同一功能区内提供多重服务。使用微内核结构,加入一个新特点仅仅需要修改或者加入被选择的服务,新的或者修改的服务影响限制在系统的一个子集,进一步地,修改不需要建立一个新的内核。 微内核特点 移植性(Portability): 在微内核结构中,所有与特定处理机的代码仅仅存在微内核中,因此,需要将这个系统移植到新的处理机需要作的变化可以尽可能地少。 微内核特点 可靠性(Reliability): 软件规模越大,确保可靠性越难。尽管模块化设计帮助我们增强了可靠性,但是微内核结构带来了更多的收益。一个小型微内核可以严格地进行测试,它使用少量的应用程序接口有助于内核模式之外的操作系统服务代码提高质量。系统只需要掌握一个有限数量的(API),程序员之间的相互交互也有限,因而对于系统其它组件的影响最小。 微内核特点 分布系统支持(Distributed system support): 微内核适合于由分布操作系统控制的群集系统。当一个消息从客户发到服务器进程,该消息必须包含请求服务的标识符。当一个分布系统(如群集系统)被配置为所有的进程和服务有唯一的标识符,那么似乎在内核模式下存在单一的系统映象,一个进程能够在不知道目标服务驻留在哪台机器情况下发送消息。 微内核特点 面向对象操作系统(Object-oriented operating system): 微内核结构非常适合面向对象操作系统的要求,一个面向对象的方法有助于一个微内核的设计和操作系统的模块化扩充。将微内核结构和面向对象操作系统原理结合起来的例子是组件的使用,组件是清楚定义了接口的对象,它们能够互连起来以预制建筑块的方式形成软件,使用组件之间的接口实现组件之间的全部相互作用。 大内核模式 Windows内核 Windows内核变化 Windows号称内核版本7将走向小内核模式 混合式内核模式 混合式内核 Linux内核属于混合式内核 参与Linux系统开发的程序员大多数为世界各地的黑客们。比起结构的清晰,他们更加注重功能的强大和高效率的代码。 他们将大量的精力花在优化代码上,而这样的全局性优化必然以损失结构精炼作为代价,导致Linux中的每个部件都不能被轻易拆出,否则必然破坏整体效率。 Linux内核 虽然Linux是一个混合式内核操作系统,但它与传统的UNIX操作系统不同。 在普通单一内核系统中,所有内核代码都是被静态编译和链接的。 而在Linux中,可以动态装入和卸载内核中的部分代码。Linux中将这样的代码段称做模块(module),并对模块给予了强有力的支持。在Linux中,可以在需要时自动装入和卸载模块。 Linux内核的结构 LINUX操作系统的结构 2.4 vs. 2.6内核的实时性比较 Linux 内核 Linux 内核主要由5 个模块构成,它们分别是: 进程调度模块:控制进程对CPU 资源的使用 内存管理模块:确保所有进程能够安全地共享机器主内存区;虚拟内存管理 文件系统模块:支持对外部设备的驱动和存储 进程间通信模块:支持多种进程间的信息交换方式 网络接口模块:提供对多种网络通信标准的访问并支持许多网络硬件 内核模块之间的依赖关系 内核模块之间的依赖关系 所有的模块都与进程调度模块存在依赖关系。因为它们都需要依靠进程调度程序来挂起(暂停)或重新运行它们的进程。通常,一个模块会在等待硬件操作期间被挂起,而在操作完成后才可继续运行。 内核模块之间的依赖关系

文档评论(0)

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

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

1亿VIP精品文档

相关文档