如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
计算机技术与发展第17卷第9期Vol.17No.92007年9月COMPUTERTECHNOLOGYANDDEVELOPMENTSep.2007Linux操作系统实时性分析余兵,黎忠文(厦门大学信息科学与技术学院,福建厦门361005)摘要:随着Linux操作系统在嵌入式实时系统中的广泛应用,有效地提高Linux有限的实时性能是一个重要问题,而Linux内核可抢占调度是实时性能的改进的关键。对Linux内核调度器的工作原理进行了深入分析,并阐述了调度延迟是其实时性不强的原因,然后介绍通过可抢占机制对Linux内核进行改造,测试了改进后的内核的实时性。关键词:Linux;实时性;可抢占内核;调度延迟中图分类号:TP316.8文献标识码:A文章编号:1673-629X(2007)09-0041-04AnalysisofLinuxReal-timeMechanismYUBing,LIZhong2wen(ComputerandInformationEngineeringCollege,XiamenUniversity,Xiamen361005,China)Abstract:WiththewideapplicationofLinuxoperationsysteminembeddedreal-timesystemfields,theenhancementofLinuxreal-timeperformancebecomesmoreandmoreimportant.Preemptivekernelisadecisiveconditionofasystem’sreal-timeperformance.ThispaperanalyzesofLinuxschedulerandpresentsthattheschedulerlatencyisthemajorcauseofLinuxOS’non-real-time.Thenpre2sentasolutiontoenhancethereal-timeperformanceofLinux.Intheend,thesimulationresultsarerepresented.Keywords:Linux;real-time;preemptivekernel;scheduler-latency0引言有使用原有Linux内核,导致Linux系统的一些优势Linux是一个性能卓越、技术上处于前沿的现代难以继承,尤其是与Linux内核相关的一些优势无法操作系统。但它是一个通用的分时操作系统,具有内获得。比如Linux内核对大量硬件的广泛支持,Linux核不可抢占、被动调度、优先级倒置、定时粒度粗糙等核心超群的可靠性、稳定性等。另外,由于这种方法并特点。没有通过修改Linux内核代码来开发实时内核,而是Linux内核的这些固有特点,使得Linux系统对实在Linux系统之上重新设计了一个实时核心,这样的时任务的响应时间具有很大的不确定性和不可预测开发使得源代码不开放。性。这样应用在实时性要求比较高的环境中,就有必(2)为Linux打实时补丁[3]。这样可以借助Linux要对Linux内核做进一步的改进。操作系统的源代码补丁来提高系统的实时性能。当前Linux操作系统在实时系统领域面临这些挑战已主要的实时补丁有低响应时间补丁、抢占任务补丁以经引起了业界的重视,目前已经有多种措施来提高及实时调度程序补丁等等。Linux系统的实时性能。主要的策略有:综合考虑上面两种策略,通过修改Linux操作系(1)增加实时子内核。如美国新墨西哥洲大学计统的源代码来提高系统的实时性更具有优势。算机系开发的RT-Linux[1],它是由两个子内核构成,目前国内也已经有很多实时化改造的研究。但这一个用于Linux环境,一个用于实时环境。另外遵循些研究很多要么是只给出国外一些具有代表性的实时[2]GPL的RTAI(实时应用程序接口)也类似于这种方化改造方案[4],要么是从理论的角度笼统地介绍实时式。这两种方法可以有效改善系统中断延迟时间的问性的改造[5],都没有通过深入研究Linux源代码来分题。但这种策略设计了一个完全独立的实时核心而没析Linux实时性的改进。对系统实时性的改造是一个很庞大的工程,面面俱到会导致分析不深入。因此在收稿日期:2006-12-07作者简介:余兵(1982-),男,江西丰城人,硕士研究生,研究方向深入分析Linux有关进程调度和中断的源代码基础为实时操作系统;黎忠文,博士,副教授,研究方向为实时嵌入式系上,着重介绍通过抢占任务补丁来提高Linux的实时统的设计与开发。性。·42·计算机技术与发展第17卷1Li