微内核操作系统在嵌入式平台上的应用

发布者:sjp5035022最新更新时间:2009-03-21 来源: 上海交通大学关键字:嵌入式  内核  操作系统  服务  程序  平台 手机看文章 扫描二维码
随时随地手机看文章

引言

  在最近的几年中,嵌入式技术得到了飞速的发展。大到汽车、电梯、医疗仪器乃至工业设备,小到手机、MP4、照相机等消费电子产品,甚至是人们生活中所熟知的电冰箱、微波炉、洗衣机等传统电器,到处可以看到嵌入式系统的身影。根据BCC Research Group的分析结果,嵌入式行业在最近5年中保持着年均14%的增长,到2009年将会成为一个880亿的巨大市场。

  所谓嵌入式系统是指为特定应用而设计的专用电脑系统,通常执行的是带有特定要求的预先定义的任务。说到嵌入式系统上的操作系统,人们首先想到的是各种经过裁剪的Linux以及WinCE。但是Linux和WinCE本身作为单内核(monolithic kernel)操作系统,内核部分过于复杂,并不适用于嵌入式平台。而μC/Os-II和eCos等又过于简单,不能提供完整的功能。而随着微内核(microkernel)操作系统的理论和实现越来越成熟,微内核操作系统开始成为嵌入式平台一个很好的选择。

 

 

图1 嵌入式平台操作系统占有率比较图
来源:www.linuxdevices.com

嵌入式平台对操作系统的需求

  嵌入式平台上运行的操作系统一方面会根据嵌入式平台所执行的功能对内核组件进行裁剪,在满足系统的应用功能的基础上去除不必要的部分;另一方面,嵌入式平台对操作系统的可靠性,实时性和安全性特性有很高的要求。

  可靠性是指嵌入式设备特别是工业设备中的嵌入式系统经常需要连续运行数以年计的时间而不出差错。可以想像如果飞机中的嵌入式系统在飞机飞行时崩溃重启,会造成多么大的危害。这就要求嵌入式系统上的操作系统的运行完全没有错误,或者在错误出现的时候可以快速自动复位,并且避免在操作系统中使用不稳定的模块。

  实时性是指系统能在确定的时间内执行操作并对外部的异步事件做出响应,比如汽车发生车祸时安全气囊必须在极短的时间内打开。一次正确的操作不仅要求逻辑功能上的正确,而且要求完成这些操作所花费的时间在限定之内。实时又分成硬实时和软实时,硬实时要求任务在规定时间内必须完成,这由操作系统来保证;而软实时要求事件响应是实时的,并按照任务的优先级,尽可能在短时间内完成任务。实时操作系统需要调度一切可利用的资源完成有实时性要求的任务,其次才着考虑提高操作系统的整体效率。

  随着嵌入式系统越来越多得与外部连接,甚至是通过互联网连接,其安全性也越来越受到关注。比如用掌上电脑进行网上购物的时候,用户的银行帐号信息必须得到严格的保护。安全性具体是指要求嵌入式设备在与外部连接的过程中,其内部的数据不会偶然或被恶意地破坏、更改或者泄露,维持嵌入式系统中信息的保密性和完整性。

[page]

微内核操作系统

  所谓微内核是一种最小的的计算机操作系统内核,其设计思想是内核本身不提供操作系统的相关服务,而是提供实现这些服务的机制,诸如底层的地址空间管理,线程调度以及进程间通信。一般的硬件都有执行权限级别,比如Intel IA32架构有Ring0到Ring3的特权级,而一般的操作系统至少会用到两个,称之为内核态和用户态。而对于微内核操作系统来说,并非操作系统服务都运行于内核态,而是提供服务实现的机制部分运行于内核态;而操作系统的服务,包括设备驱动,文件系统和用户界面等则作为用户态的服务应用程序运行。


  

图2 单内核操作系统(左)和微内核操作系统结构比较图

  如图2所示,左边的是单内核操作系统的结构示意图。我们常用的Windows操作系统和Linux操作系统都属于这个类型。单内核操作系统的内核提供完整的操作系统服务,比如图中所示的文件系统,进程间通信,进程调度器,内存管理,设备驱动程序等等。而应用程序则运行在用户态,应用程序想要使用操作系统提供的服务,需要通过内核提供的接口,我们称之为系统调用。当应用程序进程执行系统调用时,会陷入到内核的代码去执行,进程此时运行于内核态,处理器处于特权级最高的Ring0状态执行。当应用程序需要的操作系统服务调用完成,进程回到原本的应用程序代码中继续执行,也同时回到了用户态,在Ring3的特权级上运行。

      而对于右边的微内核操作系统,操作系统的内核部分被大大简化,只包括基本的IPC机制,虚拟内存映射和调度机制,这些仅仅是用于实现操作系统服务的基本机制。真正的操作系统服务,比如设备驱动,文件系统,应用程序间通信等,通过用户态服务程序的方式实现。当普通的应用程序需要操作系统的相关服务时,通过发送IPC消息给这个服务程序,这些服务程序进行相关的操作,必要时也会通过内核提供的系统调用陷入到内核态去执行基本的操作,并把结果再通过IPC返回给请求服务的应用程序。

微内核操作系统特点

  微内核操作系统特有的架构带来的很多优点,这些特点正好匹配了嵌入式平台对操作系统的需求,非常适合于嵌入式环境的应用。

  首先是可靠性,按照单内核操作系统的设计,内核包括所有的操作系统服务,其中任何一个服务出错,就会造成整个系统的崩溃。微内核操作系统的设计思想是在内核中留尽量少的东西,只保留实现操作系统服务的最基本机制,而把具体服务的实现放到用户态的服务应用程序中去。这就大大降低了内核崩溃的几率。特别是目前操作系统的许多错误都是因为不规范,并且没有经过严格测试的驱动程序造成的。图3显示了Linux内核代码不同目录的错误分布,显然驱动程序的错误是主要原因。

 

 

 

图3 操作系统中的错误在各模块中的分布(来源:文献[4])

 [page] 

      然后是实时性。实时性是指操作系统对响应时间有严格的要求,不仅要求成功执行还要求在规定的时间内完成所有操作。一般会要求操作系统内核是抢占式的,并且内核的代码是可重入的。微内核操作系统内核较小也意味着需要实时化的部分较少。而且微内核之上也可以很方便同时运行实时的程序和一般的非实时的程序。

  此外还不能忘了安全性。设计安全系统的准则是最小权限准则,也即所有的部件都只拥有执行相关功能所必须的权限,而没有额外的权限。最小权限准则需要系统的可信计算基础尽可能地小。可信计算基础(Trusted Computing Base)是指整个系统中对安全性最关键的部分,在可信计算基础内的漏洞会危及整个系统的安全性。因为操作系统内核是可信计算基础中最重要的一部分,微内核操作系统内核较小的特点使之在安全性应用方面很有优势。

  上面说了很多微内核操作系统的优点,但微内核架构也不是完美的,它有一个很大的缺点那就是性能。我们知道对于单内核操作系统,调用系统服务的方式是用过系统调用,需要的仅仅是用户态和内核态的两次转换,每个进程都同时有用户栈和内核栈可以存放执行过程中的信息。而对于微内核操作系统,调用系统服务需要通过发送IPC消息给服务应用程序,服务应用程序通过系统调用完成服务请求后再通过另一个IPC消息把结果返回给调用者。这涉及到了进程的上下文切换,并且由于没有内核栈这样简单的机制,传送消息需要额外的拷贝开销。因此性能对于微内核架构操作系统成了一个很大的问题。事实上第一代微内核操作系统诸如Mach之上运行的系统的性能让人难以接受。然而以L4为首的第二代微内核操作系统通过合理的架构设计,将IPC的开销相对Mach成数量级级别得减少。有分析表明在L4微内核操作系统之上运行的L4Linux的性能相对原本的Linux只有几个百分点的损失。[5]

结语

  综上文所述,微内核操作系统的可靠性、实时性和安全性特点很好得匹配了嵌入式平台对操作系统的需求。随着对微内核操作系统研究的深入,其相应技术将会不断地成熟,性能也会不断地提高,可以预见不久的将来,我们将会见到越来越多的微内核操作系统被应用到嵌入式平台上。

参考文献:

  [1] 邓亚明,嵌入式操作系统比较研究,中国高新技术企业,2008年2期

      [2] 滕艳平,嵌入式Linux操作系统实时性的研究与实现,微计算机信息,2007年23期

      [3] Andy Chou, Junfeng Yang, Benjamin Chelf, Seth Hallem, and Dawson Engler. An empirical study of operating systems errors. Proceedings of the eighteenth ACM symposium on Operating systems principles, Oct 2001

      [4] H?rtig, Hermann; Hohmuth, Michael; Liedtke, Jochen; Sch?nberg, Sebastian (October 1997). "The performance of μ-kernel-based systems". Proceedings of the sixteenth ACM symposium on Operating systems principles: 66–77. ISBN 0-89791-916-5

      [5] Jochen Liedtke. Lava Nucleus (LN) Reference Manual (486, Pentium, PPro) Version 2.2. 1998

关键字:嵌入式  内核  操作系统  服务  程序  平台 引用地址:微内核操作系统在嵌入式平台上的应用

上一篇:智慧的医疗 IBM医疗信息共享分析技术
下一篇:亚洲医疗器械市场现状与前景分析

推荐阅读最新更新时间:2024-03-16 11:36

研华新系列模块选用Innovasic半导体RapID平台
美国,墨西哥州,阿尔伯克基,2011年4月13日—— Innovasic 半导体(Innovasic Semiconductor)今天宣布其RapID平台和fido1100 片上系统(SoC)解决方案已经为研华公司(Advantech)所采用。该方案为研华的用于工厂自动化的新款ADAM-6100系列实时Ethernet I/O模块提供EtherNet/IP(实时工业以太网协议)连接。 Innovasic首席技术官Jordon Woods表示:“基于Innovasic半导体的fido1100的工业以太网RapID平台可以帮助客户快速、经济有效地实现新品上市。通过使用该平台的灵活架构和可编程功能,客户可以快速发布一
[嵌入式]
研华新系列模块选用Innovasic半导体RapID<font color='red'>平台</font>
PAC平台为石油天然气行业提供新的测控解决方案
引言   进入二十一世纪以来,整个 石油 天然气 行业都面临着巨大的挑战,伴随着中国、印度发展所带动的石油天然气资源需求快速增长却是已探明储量和质量的下降。据据2007年BP能源的统计,截至2006年底,全球石油探明储量12082亿桶,同比下降0.1%,可供开采41年。在这种形势下,美Chevron石油公司的CEO David J. O’Reilley指出了“轻易获取石油资源的时代已经一去不返了,现在我们需要新的技术和投资以保证未来石油的持续供应”。这类原先在工业生产应用上一直处于相对保守的石油天然气公司,不得不开始通过引入创新的科技与产品,以尽可能的扩大已有油田的产能、提高生产或配送效率,或者进一步发展深海勘探。其中,最
[测试测量]
PAC<font color='red'>平台</font>为石油天然气行业提供新的测控解决方案
建设泛在电力物联网 服务海峡两岸融合发展
国网福建省电力有限公司副总经理、厦门供电公司总经理 周敬东 习近平总书记在《告台湾同胞书》发表40周年纪念会上指出,两岸要应通尽通,可以率先实现金门、马祖同福建沿海地区通水、通电、通气、通桥。厦门供电公司紧紧围绕“三型两网、世界一流”战略目标和“一个引领、三个变革”战略路径,贯彻落实泛在电力物联网建设部署,加快推进公司新时代发展战略在厦门落地生根,在服务两岸融合发展中当标杆、作表率,为建设厦门高素质、高颜值、现代化、国际化城市提供坚强供电保障。 在推动“两网”融合中当排头 探索泛在电力物联网实践。厦门供电公司组织泛在电力物联网专项培训和研讨,明确在厦门落地的总体框架、典型设计和建设任务,编制研究规划报告。与地方
[新能源]
索尼携手京东方加入「智慧家庭」战局,多款产品抢先看
新世代家庭守护者!根据日媒报导,Sony、 东京电力 跨界合作,推出名为「TEPCO智慧家庭」的  loT 服务 ,家长透过手机,能得知家中年长者电器使用状况、小孩是否返家等。2017年8月7日开始提供,每月新台币千元有找。   开发 Xperia 系列的 Sony 通讯,正式加入「智慧家庭」战局。与东京电力合作,将家庭 IoT「TEPCO智慧家庭」商品化,于 8 月 7 日正式开租。       Sony 通讯,正式加入「智慧家庭」战局。   「TEPCO 智慧家庭」活用 Sony 通讯技术与装置,再结合东京电力提供的家庭 IoT 服务。此外,其他电力公司的使用者,同样可以使用此服务。Sony 主要负责的部分为装置的开发
[嵌入式]
图形液晶显示模块在嵌入式系统中的应用
      图形点阵式液晶显示模块具有尺寸小、功耗低、寿命长、成本低、可显示各种图像与文本信息等优点,因此在各种仪器仪表、电子设备、移动通讯及家用电器中得到广泛的应用 。本文结合笔者在“便携式电力故障录波仪”项目中的实践经验,着重介绍如何把液晶显示模块应用做嵌入式DSP系统人机界面的问题,仅用四个按键相互配合,通过软件编程实现多层菜单和动态波形的显示。软件部分采用C语言编制,模块化设计,具有很强的可移植性,可以直接应用到其他的嵌入式系统中。 1. 模块的工作原理 1.1 基本功能         OCM4×8C液晶显示模块是128×64点阵的汉字图形型液晶显示模块,内置国标GB2312码简体中文字库(16×16点阵)、126个字
[嵌入式]
MSP430 单片机 读取 程序 LM75A LM75 温度传感器
http://www.ti.com/lit/ds/symlink/lm75a.pdf https://item.szlcsc.com/8440.html 三根地址全部接了GND 器件地址 寄存器列表
[单片机]
MSP430 单片机 读取 <font color='red'>程序</font> LM75A LM75 温度传感器
Tronics成立TronicsMEMS 服务美国市场
据EE Times网站报道,法国MEMS元器件供应商Tronics Microsystems SA日前宣布在美国德州Richardson成立了子公司Tronics MEMS,为美国MEMS客户提供原型器件、认证及量产服务。 Tronics MEMS工厂占地14万平方英尺,面向医疗、移动媒体、汽车、打印机、航空及消费电子应用领域的客户提供定制化的MEMS工艺及产品解决方案。
[传感器]
优傲机器人启动创新的客户成功计划,全面提升服务品质
中国上海,2024年2月28日 全球协作机器人制造商优傲机器人(以下简称“优傲”)推出全新客户服务体系,即客户成功计划(Customer Success Program),旨在全面优化服务品质。 这项计划旨在帮助新老客户充分挖掘协作机器人的应用潜力,为他们提供免费的个性化定制服务。专业的客户成功经理为客户提供专业知识之外,还可以在机器人部署和使用阶段协助他们优化其功能应用,并制定相应的策略以满足多元需求。 优傲战略服务总监Annelie Dyring-Bro 表示:“客户对优傲机器人的表现期望很高,我们的客户成功经理将确保客户能够受益于协作机器人的投资,获得优异回报。作为行业先驱,优傲率先推出协作机器人技术。客户成
[机器人]
优傲机器人启动创新的客户成功计划,全面提升<font color='red'>服务</font>品质
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新医疗电子文章
换一换 更多 相关热搜器件

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 医学成像 家庭消费 监护/遥测 植入式器材 临床设备 通用技术/产品 其他技术 综合资讯

词云: 1 2 3 4 5 6 7 8 9 10

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved