嵌入式系统第三讲嵌入式操作系统中的关键技术.pdf
《嵌入式系统第三讲嵌入式操作系统中的关键技术.pdf》由会员分享,可在线阅读,更多相关《嵌入式系统第三讲嵌入式操作系统中的关键技术.pdf(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、lC 技术进座j 垦!室曼丛Q!鹪缝蜓鱼型幽I C 技术讲座是本刊2 0 0 5 年推出的全新技术类栏目。为了让工程师案刍余、在设计开发中完善和拓展基础理论与系统知识,丰富应用经验,世界电子元器件和中电网联合清华大学等知名院校共同创办了这个栏目,特约知名学者、教授以及著名半导体公司的应用工程师撰写,以系列讲座的方式对热点;I C 技术进行全面而系统的介绍,涵盖最新技术要点。最先开设的讲座将围绕三大课题:D S P、F P G A 和嵌入式系统,每个课题都将连载6 期。第三讲嵌入式操作系统中的关键技术L e S S o n3T h eK e yT e c h n O|O g yO fE m b
2、e d d e do p e r Q t i n gs y s|e m清华大学电子工程系陶品采用嵌入式操作系统现在许多嵌入式系统要胜任的工作越来越复杂,需要采用3 2 位的嵌入式处理器,这样嵌入式操作系统就成为嵌入式系统设计中必不可少的一个环节。众所周知通用操作系统(如M l c r o s o f fW m d o w s 系列的操作系统)并不适合直接应用在嵌入式操作系统上,为了适应嵌入式系统的需要,必须在整个系统的软件架构中引入嵌入式操作系统。在嵌入式系统应用中,早期的1 6位及1 6 位以下的微处理器计算能力有限,要处理的任务一般比较简单,因而程序员可以在应用程序中自己管理微处理器的工作
3、流程,很少需要用到嵌入式操作系统。当系统变得较为复杂后,对系统中断的处理以及多个功能模块之间的协调需要由程序员自己来控制和解决,这样做的结果是,随着程序内部的逻辑关系变得越来越复杂,软件开发小组对于驾驭复杂的功能模块逐渐显得力不从心,为了保证中断相关处理的正确性和完整性,为了保证不同模块之间对硬件资源的共享和互斥,为了保证系统能定期执行各种任务,软件开发小组不得不编写和维护一个复杂的专用操作系统和应用程L 呲驴。序的结合体,这样做使得系统的开发和维护成本加大,也不利于系统的升级。所以在逐渐变得复杂的嵌入式系统中采用成熟的嵌入式操作系统成为更好的解决方案,如嵌入式LJ n u x、V W o r
4、 k s、D S O S、W i n C E、D e I t a 0 S、u C O S、T 1 v 0 S 等等。为了实现一个支持各种硬件体系结构、运行稳定高效的嵌入式操作系统需要付出很多的心血,嵌入式操作系统本身包含大量的代码,而且这些代码非常精巧、相应的数据结构非常复杂,即使是读懂这些代码也要花费很多时间。比如最简单的u C O S 一|嵌 万方数据!_ C 地地m Q 碰鲥Q 她l 楚一塞讲座的基本功能是一致的实尉烂即:首先嵌入式操作系统许多应用场合对嵌入式系统有实必须能正确、高效地访问时性的要求,比如汽车的安全气囊要求和管理底层的各种硬件能在一个极短的时间内侦测到汽车碰资源,很好地处
5、理资源管撞事件的发生并控制打开安全气囊。为理中的冲突;其次嵌入式了实现上述目标,一方面硬件的传感器操作系统要能为应用程和安全气囊要有足够快的响应速度,另序提供功能完备、使用方一方面就是微处理器、嵌入式操作系统便、与底层硬件细节无关和相应的事件响应程序要能处理得足入式操作系统的最小窑f 曰仲需i 斤千行的系统调用接口。够快。入式操作系统的最小实现也需近千行够l 天。代码,而普通的嵌入式L i n u x 内核则有但嵌入式操作系统也有其独特的普通操作系统为了实现在多进程近百万行代码。在嵌入式开发中推荐需求和技术特点,主要区别是:并发执行时进行正确的资源管理,往采用一种通用的嵌入式操作系统,而1)许
6、多嵌入式系统应用有实时性往会对某段代码通过关中断的方式进采用一种通用的嵌入式操作系统,而。任芸对呆段代码逋辽夭甲断的万式进不是自己从头编写一个专用的嵌入式要求,因此多数嵌入式操作系统都具行保护,而且由于多个进程并发执行操作系统,因为通用的嵌入式操作系备实时性的技术指标能保障系统的后情况变得异常复杂,关中断的时间统经过多年的发展一般来说稳定性、实时响应速度;可能被拖得很长且不确定,中断的关性能、功能等各方面都会比自己重写2)为适应嵌入式系统计算资源的闭就会使得实时请求不能通过中断信一个专用的操作系统要好,而且购买限制7 嵌入式操作系统核心部分的体号迅速告知c P u,因此系统可能出现它们的成本也
7、比自己从头开发要低得积必须尽可能的小;的最长关中断时间决定着操作系统的名:另外通用嵌入式操作系统一船都3)为了适应各种应用需求的变实时性的指标。嵌入式操作系统为了多;另外,通用嵌入式操作系统一般都头叮王阴宿杯。歌八瓦猓1 乍糸统力,遵循操作系统接口标准P O s I x,化,嵌入式操作系统还应该具有可裁提高实时性能,就必须尽量缩短操作使用这些系统调用接口进行开发可以减性、可伸缩性、易移植性的特点,让系统代码中的关闭中断过程,并通过大大方便上层应用软件在不同嵌入式开发人员可以根据需要对嵌入式操作精心的设计确定关中断的时间长短。操作系统、不同操作系统版本之间的系统进行剪裁和移植:这些设计包括:移植
8、,系统升级换代方便、成本低、速4 嵌入式操作系统往往是长期连1)操作系统中的进程必须是具有序快。续运行的,因此要求要有很高的可靠严格优先级差异的,而且应该是抢占f窨4l广怕1月尢三盯帚;目j,几丌只J、V1 故帚 F 刍总结来说采用嵌入式操作系统的性不能“死机”;式的操作系统内核,即最高优先级的原因是:解决多任务所带来的复杂性;5)针对特定的应用需求,嵌入式进程即使是最后出现,也应该最先获提高应用程序的可移植性;降低系统操作系统往往还要对某些模块做特别得运行而且是无条件立即停止当前并发和维 卢成太。的性能优1 七丰口I 力靛瑁强。嵌入式操作系统中的关键技术在一个完整的嵌入式系统中,嵌入式操作系
9、统介于底层硬件和上层应用程序之间,如图1 所示,它是整个系统中不可缺少的重要组成部分。嵌入式操作系统与传统操作系统图1 嵌入式系统整体结构及嵌入式操作系统的地位世界电子元器件2 0 0 64w w wg e c m a gc o m 万方数据l C 撞本进座一!垦!曼雯b D Q 鲥鲮Q 瞍也一一进程的运行来切换到具有最高优先级的进程。如图2 所示。图2 嵌入式操作系统中进程优先级差异2)与实时处理相关的函数应尽量都是可重入的,即函数中均使用局部变量。如果使用全局变量,为保证程序的正确性必须对全局变量的访问加锁,而这样的保护措旋有可能导致进程堵塞,从而影响操作系统的实时性。3)高效的克服优先级
10、反转问题,防止高优先级的进程由于等待某些被低优先级进程已占用的资源,从而被其他低优先级的进程抢先运行,影响系统的实时性能。4)其他实时操作系统内核的设计,如解决周期性任务的调度和时间抖动问题等。在实时。I 兰E 方面,V W o 水s、u C o S l l、Q N X、国内的D e I t a O S 等操作系统都具有较好的实时性能,其中V x W o 水s 是性能稳定的商用实时操作系统,有较长的使用历史和广泛的用户群;u c D S 一1 1操作系统是开放源码的小型实验性操作系统,实时性很强,而且代码简单,便于分析、学习与改造,应用范围也很广;D eJ t a O S 是国内自主研发的实时
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 系统 第三 操作系统 中的 关键技术
限制150内