实时操作系统VxWorks的内核任务调度研究.pdf
上传人:qw****27 上传时间:2024-09-12 格式:PDF 页数:5 大小:74KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

实时操作系统VxWorks的内核任务调度研究.pdf

实时操作系统VxWorks的内核任务调度研究.pdf

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

电脑应用技术二零零六年总第六十五期实时操作系统VxWorks的内核任务调度研究罗修波(上海船舶电子设备研究所,上海200025)摘要:VxWorks实时操作系统在实时嵌入式技术领域应用非常广泛,本文论述了VxWorks实时操作系统中任务调度的概念、类型,并着重对实时内核的任务调度进行了分析研究。关键词:VxWorks实时操作系统内核进程任务调度ResearchofKernelTaskSchedulingonReal-timeOperationSystemVxWorksLuoXiu-bo(ShanghaiMarineElectronicEquipmentResearchInstitute,Shanghai,200025)Abstract:VxWorksbecomesmoreandmorepopularinthefieldofreal-timeembeddingtechnique.Thispaperdescribedtheconceptandtypeofkernelscheduling.anditlaidgreatemphasisontheanalysisofthekernelschedulingofVxWorks.Keywords:VxWorks,Real-timeOperationSystem,Kernel,Process,TaskScheduling1、引言VxWorks操作系统是WindRiver公司开发的一种高性能的嵌入式实时操作系统。它带有一个功能强大的集成开发系统环境Tornado。VxWorks具有软件生成代码小、实时性强及响应速度快等特点,特别适合于具有实时和多任务要求的系统。VxWorks自20世纪80年代问世以来,以其高性能、高可靠性、高实时性等特点成为实时操作系统中最具特色的系统。自1996年登陆中国,短短几年就已成为国防、工业自动化、网络通信、航空航天、医疗仪器、状态监控以及消费电子产品等嵌入式实时领域的首选操作系统。由于嵌入式实时操作系统在内核方面具有自身的特点,本文着重对实时内核中任务调度进行了详细分析。2、任务调度概述2.1调度的概念构成应用软件系统的程序集合中,独立的、相互作用的程序单元,在其执行时称之为10电脑应用技术二零零六年总第六十五期任务。单个CPU中,多任务机制制造了一个多个任务同时执行的假象。其实系统只是根据一个多任务调度算法,将内核插入到这些任务中执行。实时系统VxWorks的一个任务可有多种状态,但最基本的状态有以下四种:1)就绪态(Ready):任务只等待系统分配CUP资源。2)挂起态(Pend):任务需等待某些不可利用的资源而被阻塞。3)休眠态(Sleep):如果系统不需要某一个任务工作,则这个任务处于休眠状态。4)延迟态(Delay):任务被延迟时所处的状态。当系统函数对某一个任务进行操作时,任务从一种状态跃迁到另一种状态。处于任一状态的任务都可被删除。VxWorks的任务跃迁如图1所示。图1VxWorks系统中任务之间的状态跃迁任务由系统内核调度运行一段固定长度的时间,称为时间片。调度是指为任务分配资源和时间,使系统满足特定的性能要求。调度算法的目的是在正常情况下,尽可能满足所有任务的时限;在峰值负载条件下,保证强实时任务满足时限。因为时限是区分实时系统和非实时系统的关键因素,因此调度算法是实时系统的基本问题。实时操作系统所具有的运行性能,如吞吐量的大小、周转时间的长短、相应的及时性和可预测性等在很大程度上都取决于实时调度。2.2调度的类型虽然调度的主要目的都是为了分配处理机,但在不同的OS中所采用的调度方式是完全不同的。在执行调度时所采用的调度算法也可能不同。因此,常按照调度的层次把调度分成高级、中级和低级调度。高级调度又称长程调度或作业调度,用于决定把外存上处于后备队列中的哪些作业调入内存,并为它们创建进程、分配必要的资源,然后再将新创建的进程排在就绪队列上,准备执行。然而在实时系统中,为了能及时响应,用户通过键盘输入的数据都是直接送入内存,因而实时系统通常不需要作业调度。中级调度又称中程调度,引入它的主要目的是为了提高内存利用率和系统吞吐量。它使那些暂时不能运行的进程不再占用宝贵的内存空间,而将它们调到外存上去等待,此时的状态称为挂起状态。当这些进程重新具备运行条件,且内存又有空闲,由中级调度决定,11电脑应用技术二零零六年总第六十五期将外存上的那些重新具备运行条件的就绪进程重新调入内存,并使它为就绪状态,挂在就绪队列上等待进程调度。低级调度又称进程调度。它决定就绪队列中的哪个进程将获得处理机,然后由分派程序执