欢迎来到天天文库
浏览记录
ID:34383890
大小:575.32 KB
页数:5页
时间:2019-03-05
《linux实时化方法的研究与实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、万方数据第37卷Vr01.37第11期NO.11计算机工程ComputerEngineering2011年6月June201l·工程应用技术与实现·文章■号tlooo—34勰(2011)11—0253—舛文t标识码tA中圈分类号tTP316·2Linux实时化方法的研究与实现张健,如青昆,王异奇,周娇(辽宁师范大学计算机与信息技术学院,辽宁大连116081)摘要:针对Linux2.6内核实时性较差的问题,采用单次触发模式细化其时钟粒度,实现微秒级的定时精度。提出基于阈值的分级调度算法CSBOT,根据不同的负载情况,分别采用LSF算法和关键度,紧急度优先算法,实现轻负载时高的系统利用率
2、和超载时系统调度性能的优雅降级,同时引入阈值抢占策略减少LSF引起的“颠簸”现象,提高系统效率。关嘲:Linux操作系统;实时化;时钟精度;调度算法;系统负载ResearchandImplementationofLinuxRem.timeMethodZHANGJian,LIUQing·kun,WANGYi-qi,ZHOUJiao(SchoolofComputerandInformationTechnology,LiaoningNormalUniversity,Dalian116081,China)IAbstractlAccordingtothefaultsofthereal—time
3、performanceinLinux2.6kernel,thispaperusesone—shotmodetorefinetheclockgranularity,realizingtheclocktimeatmicrosecondlevel,proposesclassificationCSBOTschedulealgorithmbasedonthethreshold.Accordingtothedifferentloadconditions,itrespectivelyUSeSLSFalgorithmandkey/emergencydegreepreferredalgorithmto
4、achievethelightloadofhighefficiencyandsystemperformanceofthesystemwhenthesystemoverloadselegantrelegation,atthesametime,introducesthresholdpreemptivestrategytoreducethrashingphenomenoncausedbyLSEimprovestheefficiencyofthesystem.IKeywords]Linuxoperatingsystem;real—time;clockprecision;schedulealg
5、orithm;systemloadDOI:10.39690.issn.1000—3428.201I.11.088l概述Linux是一种发展十分迅速的类Unix操作系统,与其他操作系统相比具有源代码完全开放、丰富的应用支持、几乎支持所有硬件、便于移植等优势,非常适合开发具有自主知识产权的全软件数控系统。在实时性方面,Linux2.6通过实现可抢占式内核、O(1)调度算法、提高系统时钟频率等措施有效地提高了系统的实时处理能力。但是Linux操作系统作为通用的分时操作系统,在数控系统这类对实时性要求严格的应用场合,存在着不支持实时任务的动态调度、时钟粒度粗糙等不足。针对上述问题,本文借鉴K
6、URT-Linux的单次触发(one.shot)时钟模式,实现了一个与Linux核心时钟并行的具有精密时钟刻度的实时时钟系统;并考虑在不同的系统负载情况下实时调度算法的性能表现,提出基于阈值的分级调度算法CSBOT,对Linux2.6的实时性加以改进。2高精度的实时时钟系统2.1提高时钟糟度的方莹KURT-Linux⋯是Kansas大学研制开发的,通过对Linux内核进行内部改造满足实时应用需求,是第一个面向硬实时应用的Linux改进。在时钟精度方面,KURT-Linux将系统时钟的精度提高到了微秒级。它改变了时钟中断的固定频率模式,将时钟芯片设置为单次触发模式,印每次给时钟芯片设置
7、一个超时时间,当该超时事件发生时,在时钟中断处理程序中再次根据需要为时钟芯片设置一个超时时间(以ps为单位)。GTOD(GetTimeofDay)[21维护一个时钟源抽象层,计时系统通过该抽象层计算过去某个时间点距离现在的时间。系统中原有的周期性时钟被在下一个过期的hrtimer的定时点上产生的中断代替,也实现了us级的定时精度。并且通过时钟源抽象层,在运行阶段也可以改变时钟源,不需要在内核编译阶段就确定硬件时钟源。2.2高精度时钟系统昀实现本方案借鉴了K
此文档下载收益归作者所有