在嵌入式应用中增强Linux实时性的方法研究

被引:12
作者
李凡
卢社阶
邱鹏
林爱武
机构
[1] 华中科技大学计算机科学与技术学院
[2] 华中科技大学计算机科学与技术学院 湖北武汉
[3] 湖北武汉
基金
国家高性能计算基金;
关键词
Linux; 嵌入式; 实时性; 调度策略;
D O I
10.13245/j.hust.2005.02.027
中图分类号
TP316.8 [网络操作系统];
学科分类号
081202 ; 0835 ;
摘要
在分析Linux实时性的同时,指出了将其应用于实时系统时所存在的不足,提出了一种提高Linux实时性的思想及实现方法.该方法将进入系统的所有任务按实时性要求不同分成硬实时任务、软实时任务和非实时任务三种,依次用task-struct结构中policy属性的取值SCHED-FIFO,SCHED-RR和SCHED-OTHER作为标识,把原Linux的单运行队列改为双运行队列.为严格保证硬实时任务的实时性,将其单独放在一个队列中,由指针数组的元素run-queue[0]指向,采用FIFO调度算法;软实时任务和非实时任务放在一个队列中,由指针数组的元素run-queue[1]指向,采用RR调度算法,通过抢占方式保证软实时任务优先于非实时任务.修改sched()函数的调度流程,使有实时性要求的任务尽可能多的得到调度机会;同时修改中断处理流程,实现可抢占式改造,达到硬实时任务可抢占软实时和非实时任务,软实时任务可抢占非实时任务的目的.
引用
收藏
页码:82 / 85
页数:4
相关论文
共 2 条
[1]  
深入分析Linux内核源代码.[M].陈莉君编著;.人民邮电出版社.2002,
[2]  
Linux内核源代码情景分析.[M].毛德操;胡希明著;.浙江大学出版社.2001,