嵌入式Linux操纵系统实时性的分析与研究.docx
《嵌入式Linux操纵系统实时性的分析与研究.docx》由会员分享,可在线阅读,更多相关《嵌入式Linux操纵系统实时性的分析与研究.docx(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、嵌入式Linux操纵系统实时性的分析与研究摘要:通过分析嵌入式Linux在实时应用中的缺乏,从软中断模拟技术、可抢占式内核机制和实时调度策略等方面给出了改善系统实时性能的方法,同时提出了宏观调度构造,拓展了实时系统的应用范围。一、引言Linux本身为分时操纵系统,其系统目的为较好的平均响应时间和较高的吞吐量,而实时系统那么主要考虑任务的按时完成、尽量减少进程运行的不可预测性等。但与贸易嵌入式操纵系统相比Linux遵循GPL,具有源代码开放、定制方便、支持广泛的计算机硬件等优点,所以,近年来嵌入式Linux成为嵌入式系统方向上的一个研究热门。本文首先分析了实时系统的特点和Linux内核在实时应用
2、方面的缺乏,然后针对影响操纵系统实时性能的假设干方面进展研究,提出解决方案,最后总结全文。二、实时系统的分类实时系统最重要的特点就是实时性,即系统的正确性不仅仅依靠于计算的逻辑结果的正确性,还取决于输出结果时间的及时性。从这个角度看,实时系统是“一个可以在指定或确定的时间内完成系统功能和对外部环境做出响应的系统。按对实时性能要求的程度,实时系统可分为两类:1硬实时系统:要求可确定性强,具有明确的实时约束,在某个限定的时刻之前不能完成任务将造成灾难性的后果。2软实时系统:也对时间敏感,但偶然发生不能知足严格实时要求的情况也是允许的。三、Linux在实时方面存在的缺乏Linux固然符合POSIX1
3、003.1b关于实时扩展局部的标准,例如:支持SCHED_FIFO和SCHED_RR实时调度策略,锁内存机制memorylocking,实时信号等功能,但是由于其最初的设计目的为通用分时操纵系统,因此作为一个实时操纵系统,Linux仍然存在如下缺陷:1Linux的内核本身是非抢占的。Linux下分用户态和核心态两种形式,当进程运行在用户态时,可被优先级更高的进程抢占,但当它进入核心态时,其他用户态进程优先级再高也不能抢占它。2Linux固然给实时进程提供了较高的优先级,但是没有参加时间限制。例如:完成的最后期限、应在多长时间内完成、执行周期等等。同时,其他大量的非实时进程也可能对实时进程造成阻
4、塞,无法确保实时进程的响应时间。3时钟粒度粗糙。时钟治理是操纵系统的脉搏,任务的执行和中止在很多情况下都是由时钟直接或者间接唤起的,它还是进程调度的重要根据。Linux的周期形式定时器频率仅为100Hz,远不能知足实时应用的要求。四、改良内核实时性的分析与研究从中断软件模拟、可抢占式内核体系构造、实时任务的调度策略这三个方面对嵌入式Linux内核进展研究,并给出了相应的进步实时性的方法。1.响应时间的分析及解决方法任务的响应时间被定义为一个事件的发生和任务响应这一事件开场执行之间的间隔时间,通常有以下几个因素影响任务的响应时间。1中断分配时间IDTinterruptdispatchtime:当
5、一个中断产生时,在调用中断处理程序占用CPU以前,操纵系统用来保存所有的存放器中的内容和系统中其他的关于这一任务状态的时间。2中断效劳时间:ISTinterruptservicetime:中断效劳程序用来从硬件设备读取信息或者从操纵系统采集信息所用的时间。3内核抢占时间KPTkernelpreemptiontime:在操纵系统意欲抢占当前进程与抢占实际上发生之间的时间间隔。4调度延迟SDscheduledelay:调度程序用来调度另一个线程投入运行的时间。5进程切换时间CSTcontestswitchingtime:当前线程用来保存存放器和系统状态的时间与将要运行的线程恢复存放器中的内容和系统
6、状态的时间总和。6系统调用返回时间RSTreturnfromsystemcall:处于内核态的线程在它返回用户态之前检查一些状态所用的时间。以上这些时间中,SD、CST和RST总是固定不变的,假如Linux内核设计得当的话,IDT、IST和KPT可以有效的减少。在实时应用的环境中,假设干个中断同时发生的情况是完全可能存在的。这时任务的响应时间最多将包含NIDT+IST,N为中断数。中断软件模拟被用来解决多个中断同时发生的情形。当一个硬件中断发生时,系统只是简单的在时间表中报告这一时间的发生,然后立即将CPU的控制权返回给操纵系统,完全略过了查中断向量表并执行相应的中断效劳程序。系统在Linux
7、内核之前截获了所有应中断信号,并根据当前实时任务的需要,由软中断模拟机制处理或者挂起该中断例如:IBMPC中的8259中断控制器。采用这个方法,可以减少当多个中断同时发生时任务的响应时间,最长的延迟时间为NIST,其中N为中断数。在这里之所以是IST,而不是IST,是由于采用软中断软件模拟的方法使得在IST时间段内只执行一些简单的操纵。2.抢占式内核体系构造的设计为理解决Linux实现硬实时的最大障碍,使Linux内核成为完全可被抢占实时内核,典型的实现方案是双核构造。使用实时核来运行实时任务,Linux内核来运行非实时任务。例如:对于实时数据采样分析而言,利用实时内核运行一个实时任务来完成数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 Linux 操纵 系统 实时 分析 研究
限制150内