欢迎来到天天文库
浏览记录
ID:24870498
大小:575.50 KB
页数:97页
时间:2018-11-16
《嵌入式系统eos-2010-1》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、嵌入式操作系统—C/OS-Ⅱ1.C/OS-Ⅱ简+介1.1嵌入式操作系统运行在嵌入式硬件平台上,对整个系统及其操作的部件,装置等资源进行统一协调,指挥和控制的系统软件。主要特点:微型化嵌入式系统芯片内部的存储器的容量通常不大(1MB以内)可裁减性硬件平台多样性,对象有各种类型,要求EOS提供的功能模块可根据用户需要选择使用。实时性生产过程的控制,数据采集,传输通信等许多场合要求系统快速响应事件,所以要求嵌入式操作系统有较好的实时性。高可靠性广泛用于航天航空,交通运输,重要生产设备等,所以要求EOS可靠性好。易移
2、植性为适应多种硬件平台,EOS不需要做大量的修改,就可稳定的运行于不同的平台。1.2实时嵌入式操作系统:使系统及时响应外部事件的请求,并及时控制所有实时设备与任务协调运行,能在一个规定的时间内完成事件的处理,该操作系统称为实时操作系统RTOS对实时系统有二个基本要求:实时系统的计算须产生正确的结果,即功能或逻辑正确。实时系统的计算必须在规定的周期内完成,即时间正确。按时间正确的程度可分:RTOS又分为硬实时操作系统和软实时操作系统。硬实时:要求系统必须在极严格的时间内完成实时任务。对硬实时来说,超过截止时间计算出
3、来的正确结果和错误的计算结果都是不能容忍的,因为事故已发生了,结果再正确也没有什么意义。软实时相对来说,如果系统完成实时任务的截止时间要求不是十分严格,超过容许的时间得到的运算结果不会完全没有用途,只是结果的可信度有某种降低,该类系统叫做软RTS。嵌入式系统主要是对设备进行控制,能否及时快速地响应外部事件,常常是对系统的第一要求,所以嵌入式系统选用的操作系统大多是RTOS。一个RTOS,在现有的硬件条件下,接受输入后,要尽可能快的计算出结果,使应用程序能预先正确的确定完成任务所需要的最长时间。RTOS应具有以下三
4、点:RTOS必须是多任务系统。任务的切换时间应与系统中的任务数无关。中断延时的时间可预知并且尽可能短。操作系统完成任务用的时间应该是应用程序设计时就可预知的。多任务:多任务系统把一个大的应用程序分解成相对独立的多个任务完成,给应用程序的设计和维护提供了极大的方便。现有的RTOS都是多任务系统。EOS内核的分类EOS中只有一个CPU,所以在一个具体的时刻只能允许多个任务中的一个任务使用CPU。根据系统中的任务获得CPU的权利方式,多任务RTOS的内核分为可剥夺型和不可剥夺性二种类型。(占先式和非占先式)。不可剥夺型
5、内核,也叫合作型多任务内核。该内核总是优先级别高的任务最先获得CPU的使用权。为了防止某个任务始终霸占CPU的使用权,这种内核要求每个任务必须主动放弃CPU的使用权。可剥夺型内核CPU总是运行多任务中优先权级别最高的那个任务,即使CPU正在运行某个低优先级别的任务,当有优先级别高的任务准备就绪时,该高级别的任务就会剥夺正在运行任务的CPU使用权,而使自己获得CPU使用权。可剥夺型内核实时性好,所以目前大多数ERTOS是可剥夺型内核。不论哪一种类型的内核,每个任务须有一个唯一的优先级别来表示它的CPU的权力。任务切
6、换时间多任务,存在任务之间的切换,操作系统的调度器就是做此工作的。调度器切换任务需要时间,切换时间的长短也是影响系统实时性的一个重要因素。为使应用程序设计时,可计算系统完成某一个任务的准确执行时间,要求进行任务切换的调度器的运行时间应该是固定的,即任务切换所用时间不能受应用程序中其他因素的影响(如任务数目)。中断延时CPU响应中断到CPU转向中断服务程序之间的时间叫做中断延时。中断延时会影响系统的实时性。所以缩短中断延时也是RTOS要解决的课题。嵌入式系统的任务由于嵌入式系统完成的是对一个装置或设备的控制任务,任
7、务是相对固定的,因此在一般情况下RTOS支持的典型任务是一个无限循环结构的。一个用C语言编写的任务结构voidmytask(void*pdata){for(;;){用户编写的代码;}}从任务的代码看,任务实质是一个返回类型的void函数,并在函数的无限循环中完成用户的工作。用户应用程序如何来响应用户的一些外部异步事件?使用的是中断技术,并且在中断服务程序中处理这些异步事件。1.3嵌入式实时操作系统目前EOS主要以提供“微内核”为主,其他如窗口界面,文件管理模块,通信协议等还要有开发人员自己设计或外采购。多数EOS
8、主要提供三项服务,辅助应用程序设计人员的设计:1)内存管理:主要是动态内存管理,使用内存时,可由OS提供的内存分配函数来获得足够的内存空间;一旦使用完毕,可调用OS提供的内存释放函数,把曾经使用的内存空间还给系统,可使内存重复应用。2)多任务管理:RTOS会提供丰富的多任务管理函数,使程序设计人员设计多线程的应用程序。一般EOS提供良好的任务调度机制,控制任务的启动,运行
此文档下载收益归作者所有