基于Vxworks的语音控制系统多任务调度算法的研究
实时操作系统VxWorks的内核任务调度研究
实时操作系统VxWorks的内核任务调度研究1、引言VxWorks操作系统是WindRiver公司开发的一种高性能的嵌入式实时操作系统。
它带有一个功能强大的集成开发系统环境Tornado。
VxWorks具有软件生成代码小、实时性强及响应速度快等特点,特别适合于具有实时和多任务要求的系统。
VxWorks自20世纪80年代问世以来,以其高性能、高可靠性、高实时性等特点成为实时操作系统中最具特色的系统。
自1996年登陆中国,短短几年就已成为国防、工业自动化、网络通信、航空航天、医疗仪器、状态监控以及消费电子产品等嵌入式实时领域的首选操作系统。
由于嵌入式实时操作系统在内核方面具有自身的特点,本文着重对实时内核中任务调度进行了详细分析。
2、任务调度概述2.1 调度的概念构成应用软件系统的程序集合中,独立的、相互作用的程序单元,在其执行时称之为任务。
单个CPU 中,多任务机制制造了一个多个任务同时执行的假象。
其实系统只是根据一个多任务调度算法,将内核插入到这些任务中执行。
实时系统VxWorks的一个任务可有多种状态,但最基本的状态有以下四种:1) 就绪态(Ready):任务只等待系统分配CUP资源。
2) 挂起态(Pend):任务需等待某些不可利用的资源而被阻塞。
3) 休眠态(Sleep):如果系统不需要某一个任务工作,则这个任务处于休眠状态。
4) 延迟态(Delay):任务被延迟时所处的状态。
当系统函数对某一个任务进行操作时,任务从一种状态跃迁到另一种状态。
处于任一状态的任务都可被删除。
VxWorks的任务跃迁如图1所示。
任务由系统内核调度运行一段固定长度的时间,称为时间片。
调度是指为任务分配资源和时间,使系统满足特定的性能要求。
调度算法的目的是在正常情况下,尽可能满足所有任务的时限:在峰值负载条件下,保证强实时任务满足时限。
因为时限是区分实时系统和非实时系统的关键因素,因此调度算法是实时系统的基本问题。
实时操作系统所具有的运行性能,如吞吐量的大小、周转时间的长短、相应的及时性和可预测性等在很大程度上都取决于实时调度。
基于VxWorks多任务信控系统的软件设计与实现
( 14 9 2 5部队 4 3分队
( 14 9 2 5部 队 8 O分 队
辽宁 葫芦岛 150 ) 2 0 1
辽 宁 葫 芦 岛 15 0 ) 2 0 1
。 中国科学 院长春光学精密机械与物理研究所பைடு நூலகம்(
吉林 长春 10 3 ) 3 0 3
。 8 r aeo 9 2 5A m , l a 2 0 1 Lann (0B i d 1 4 r y Huu o1 5 0 , io i g f d g,C i hn a) ( h ncu ntu p ,Fn ca i n C agh nIstt o 0 f i ef ieMeh nc a d s
的实际应用价值 。 关 键 词 V Wok 多任务调度 x rs
信控 系统
A
中图分类号
T 31 P 1
文献标识码
DES GN I AND M P I LEM ENTATI oN oF VXW o RKS M ULTITAS . KS BAS - ED
CoM M UNI CATI oN CoNTRoL YS S TEM SoFTW ARE
种状态迁移到另一种 状态 , 而实现 任务之 间的切换 。多 任务 从 机制使任务 间的通信显得尤为重要 。
任务间通信等特点 , 以其 良好 的可靠性 和卓越 的实 时性被广 泛 地应用在 通信 、 军事 、 航空 、 天等高精尖技 术及 实时性要求 极 航
高的领域 中。
1 2 信控 系统简 介 .
摘
要
介 绍信控 系统的主要软硬件平 台, 结合实际工程任务 , 针对 多任务 、 实时性要求, 出了利用 V Wok 提 x rs多任务机制解决信
最新-基于VxWorks的多DSP系统的多任务程序设计 精品
基于VxWorks的多DSP系统的多任务程序设计摘要多信号处理板广泛地运用于工业、军事、通信和医疗等许多方面。
本文介绍一种基于实时操作系统的21160的多板设计,以及该板在数字式声纳的实时信号处理系统中的应用,并介绍在实时操作系统下的软件算法仿真和实现。
关键词多阵列声纳系统
近年来,计算机产品的应用领域越来越广,数字信号处理器的发展表现得尤为明显。
芯片制造商和板开发商利用自身的优势不断开发出多结构的产品来满足这种需求。
通常的设备是与嵌入式系统相结合,来实时地完成某一特定任务。
随着信号采集速度和处理速度的要求越来越高,许多领域都需要进行多处理器运算,其中包括医学、图像处理、军事、工业控制、电信等许多领域。
多处理器系统可以根据所需实现的功能和处理器的性能来调节处理结点的数目,使系统达到最佳的性能价格比。
实际上,只有从芯片开始仔细设计,才能方便地实现多处理器系统的调节功能。
这里选用的是公司新出品的级处理器21160。
21160具有很大的片内存储区、多重内部总线结构、独立的子系统;具有构造多处理器系统的所有特点,能够真正支持处理器数目的可调节功能,十分适合组成高性能浮点的多系统。
是目前世界上用户数量最大的实时操作系统。
这使它除了具有优越的技术性能之外,还具有丰富的应用软件支持、良好的技术服务和可靠的系统稳定性。
由于它具有以上优点,本系统中选用了作为167的操作系统。
一、21160的特点
21160是公司采用超级哈佛结构的一种新产品。
21160的汇编代码与2106兼容,处理器具有单指令流多数据流功能;而2106只具有单指令流单数据流功能。
基于嵌入式操作系统VxWorks的多任务并发程序设计(6)
基于嵌入式操作系统VxWorks 的多任务并发程序设计的多任务并发程序设计((6)――――综合实例综合实例作者作者::宋宝华 e e--mail:21cnbao@这一次连载我们将给出一个综合的实例,系统地用到连载1~5中所学的知识。
13 系统描述假设我们面对这样的一个通信控制系统,它由三大部分组成:运行于PC 机Windows 操作系统上的人机界面程序、运行于RISC 结构通用处理器上的VxWorks 操作系统和运行于数字信号处理(DSP )处理器上的波形处理软件。
RISC 处理器和DSP 都存在于目标电路板上,是一个典型的嵌入式系统硬件平台。
在Windows 的人机界面上我们可以编辑一些信息,经过TCP/IP 协议栈传递给VxWorks 操作系统,VxWorks 再控制DSP 将这些信息经过数字调制之后发送出去。
VxWorks 与DSP 通过共享内存(硬件意义上的同一片内存,即同一存储芯片的相同存储空间)通信。
系统整体框架如下图:上述框架来源于一个真实的开发项目,限于技术保密的原因,笔者不能透露其细节。
但是从上述简单描述中,我们应该大概已知道该系统的功能。
其实,这样的系统非常常见,是一种较通用的软硬件架构方式。
14 任务控制与调度整个VxWorks 上的波形控制模块需要运行如下几个并发的用户任务: // VxWorks 与DSP 之间的数据传递(1)SendDatatoDSP:VxWorks发送数据到DSP;(2)RecvDataFromDSP:VxWorks从DSP接收数据;// VxWorks与DSP之间的通信控制(硬件查询方式)(3)IsDspDataCome:查询DSP是否有数据向VxWorks传送;(4)IsDspReqData:查询DSP是否向VxWorks及上层请求报文;// VxWorks与Windows的数据传递(5)SendDataToWin:通过socket(基于UDP协议)向Windows上传报文;(6)RecvDataFromWin:接收来自Windows的通过socket(基于UDP协议)下传的报文。
基于嵌入式操作系统VxWorks的多任务并发程序设计(全)
1引言嵌入式系统定义为:嵌入到对象体系中的专用计算机系统。
“嵌入性”、“专用性”与“计算机系统”是嵌入式系统的三个基本要素,对象系统则是指嵌入式系统所嵌入的宿主系统。
目前,随着高端消费类电子产品(如PDA、手机、智能家电)的普及,嵌入式计算机系统获得了相当广泛的应用。
操作系统在嵌入式软件体系中占据着重要低位,学习和掌握相关的知识是一名嵌入式系统研发人员的必须。
1.1本文的读者对象与写作目的本文针对的读者对象为入门级的嵌入式系统软件开发人员以及其他对嵌入式操作系统感兴趣的朋友,顺利阅读本文需要读者具备的基本知识能力为:(1)熟练的C语言程序设计能力;(2)操作系统的基本知识。
如果读者具备在Windows平台下进行多线程程序设计或者其他嵌入式操作系统本台下进行多任务程序设计的经验,将对阅读本文有很大的帮助。
本文虽然以VxWorks为介绍的主体对象,但是其中所论述的概念和方法并不局限于VxWorks操作系统本身。
它们也同样适用于其它嵌入式操作系统,如WinCE、嵌入式Linux、ucos等,所谓“万变不离其宗”。
笔者力求能以通俗和形象的语言进行论述,但是由于水平有限,文中难免存在错误和纰漏,诚盼读者朋友指正。
1.2 为什么以VxWorks为写作对象之所以选择VxWorks操作系统为本文的写作对象,是因为:(1)VxWorks具备清晰的多任务并发控制及任务间通信的成熟机制;(2)VxWorks有广泛的使用基础,国内外分布着大量的VxWorks程序员;(3)VxWorks简单易学,便于我们集中目标讲解多任务控制程序本身。
1.3 什么是VxWorksVxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),它凭借着良好的可持续发展能力、高性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域占据了重要一席。
VxWorks具备高可靠性和实时性,因而被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中,如卫星通讯、军事演习、弹道制导、飞机导航等。
关于VxWorks系统的任务调度机制浅析
关于VxWorks系统的任务调度机制浅析作者:杨坤来源:《信息技术时代·下旬刊》2018年第02期摘要:本文首先简要分析了VxWorks系统的任务调度策略及算法,对优先级倒置出现的原因展开深入探讨,给出了具体的解决方案,最后探讨了静态表方式的具体实现方法,望能为此领域研究有所借鉴。
关键词:VxWorks系统;任务;调度机制针对嵌入式系统而言,其除了要满足应用的基本功能需求之外,还应,安祖应用所提出的各种实时性要求。
所以,嵌入式系统借助各种实用、先进的算法与策略,始终为系统行为的整体可预测性提供切实保障,也就是无论系统处于何种状态、运行至哪一时刻,任务调度程序均能为各任务提供合理、高效的资源分配,满足各任务的实时性要求。
对于VxWorks系统来讲,其所提供的调度算法多以非周期性任务为对象,且为提供用于对周期性任务进行管理与调度的具体機制,且在传统的优先级抢占调度当中,同样存在比较突出的优先级倒置等问题,此些问题对系统的可预测性与实时性造成了严重影响,因而会使系统的整体性能降低。
本文就VxWorks系统的具体任务调度机制作一探讨。
1.任务调度的基本依据在整个VxWorks系统架构当中,各处于独立状态的程序,都可以称作一个任务,未能使Wind内核在管理、调度任务上变得更加方便,各任务均有自己专属的上下文,包含堆栈、时间片定时器、程序计数器等。
针对调度程序而言,其基本功能即为在全部就绪的任务当中,选择运行价值最高的任务,将其投入到运行当中;通常情况下,多根据任务上下文当中的Counter、Priority选项来作为选择依据,其中,针对Priority来讲,其乃是整个任务体系中的静态优先级,而对于Counter而言,其则为任务剩余的具体时间片,其直接决定着一个任务运行状态的好坏。
2.任务调度的具体策略2.1以静态优先级为基础的抢占调度(1)优先级倒置。
在所有静态优先级抢占方式当中,调度程序能够为高优先级的任务先执行提供切实保障。
基于嵌入式操作系统VxWorks的多任务并发程序设计(2)
printf("%d ", i); taskDelay(sysClkRateGet ( ) / 2); } } /* user entry */ void user_start() { printf("ready to begin a new task\n"); tid = taskSpawn("myTask", 90, VX_NO_STACK_FILL, 2000, (FUNCPTR) myFunc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); }
/* user entry */ void user_start() {
printf("ready to begin new tasks\n"); tid = taskSpawn("myTask", 90, 0x100, 2000, (FUNCPTR) myFunc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); taskSpawn("delMyTask", 90, 0x100, 2000, (FUNCPTR)delMyTaskFunc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); }
参数 tid 为任务的 ID。
请看下面的例子:
例 4:删除任务
/* includes */ #include "vxWorks.h" #include "taskLib.h" #include "sysLib.h"
基于VxWorks多任务信控系统的软件设计与实现
基于VxWorks多任务信控系统的软件设计与实现李文成;周学仕;王成;李岩【摘要】The main software and hardware platform of communication control system is described. A method which resolves multi-tasks scheduling and communication mechanism of the communication control system based on VxWorks multi-tasks mechanism is proposed, the results attested on pcl04 hardware platform is presented as well. The results show that the performances of multi-tasks and real-time are met, it has an excellent value in practical applications.%介绍信控系统的主要软硬件平台,结合实际工程任务,针对多任务、实时性要求,提出了利用VxWorks多任务机制解决信控系统多任务调度及通信机制的方法,并且给出了在PC104硬件平台下的测试结果.结果表明满足了多任务性与实时性,有很好的实际应用价值.【期刊名称】《计算机应用与软件》【年(卷),期】2012(029)004【总页数】3页(P86-88)【关键词】VxWorks;多任务调度;信控系统【作者】李文成;周学仕;王成;李岩【作者单位】91245部队43分队辽宁葫芦岛125001;91245部队43分队辽宁葫芦岛125001;91245部队80分队辽宁葫芦岛125001;中国科学院长春光学精密机械与物理研究所吉林长春130033【正文语种】中文【中图分类】TP3110 引言VxWorks操作系统是一种强实时性的嵌入式实时操作系统(RTOS),由美国WindRiver公司于1983年设计开发。
一种基于Vxworks的多任务调度算法
基于VxWorks的星务管理系统软件多任务实时性调度设计
s c h e d u l i n g b a s e d o n V x Wo r k s [ J ] . A p p l i c a t i o n o f E l e c t r o n i c T e c h n i q u e , 2 0 1 7, 4 3 ( 1 2 ) : 1中 文 引 用 格 式 :赵 建 坤 , 张 大松 , 胡爱 兰 , 等 .基 于 V x Wo r k s的 星 务 管 理 系 统 软 件 多 任 务 实 时 性 调 度 设 计 [ J ] . 电子 技术 应 用
,
2 0 1 7, 4 3 ( 1 2 ) : 1 1 6 — 1 l 9 .
Ab s t r a c t :I n t h e p r o c e s s o f t h e d e s i g n a n d d e v e l o p me n t o f s t a r ma n a g e me n t s y s t e m s o f t wa r e ,i n o r d e r t o s a t i s f y t h e r e q u i r e me n t s o f
h i g h r e a l — t i me p e f r o r ma n c e ,h i g h s e c u i r t y a n d h i g h r e l i a b i l i t y ,t h i s p a p e r p r o p o s e s a r e a l -t i me o p e r a t i n g s y s t e m Vx Wo r k s o p e r a t i n g s y s t e m a s t h e c o r e o f t h e s a t e l l i t e s e r v i c e s y s t e m.Vx Wo r k s o p e r a t i n g s y s t e m e mp l o y s t h e mu l t i -t a s k s c h e d u l i n g me c h a n i s m ,t o m— b i n e d wi t h t h e me t h o d o f c a l c u l a t i o n b a s e d o n t h e r o u n d r o b i n s c h e d u l i n g , mo r e o v e r ,d e v e l o p i n g t h e a r c h i t e c t u r e o f s t a r ma n a g e — me n t s y s t e m .T h e r e s u l t s ma n i f e s t s t h a t i n t h e p r e mi s e o f f u l f i l l i n g t h e s a t e l l i t e o n~b o a r d s y s t e m s o f t wa r e d e s i g n r e q u i r e me n t s .t h e r e a l —t i me p e r f o r ma n c e i s i mp r o v e d.
VxWorks操作系统及实时多任务程序设计.
VxWorks 操作系统及实时多任务程序设计刘尉悦张万生邢涛王砚方(中国科技大学近代物理系,合肥, 230027摘要 :数字式声纳系统需要实时的显示其搜索、跟踪结果, 同时对用户命令作出及时的响应, 并实时控制前端的硬件。
本文介绍基于 VxWorks 实时操作系统和 X 窗口系统的显示及控制程序设计。
着重介绍本系统中基于 VxWorks 的实时多任务程序设计。
关键词:实时,实时操作系统, VxWorks , X-Window一. 系统概况本系统运行于 VME 总线系统 (MVME177上, 通过 VME 背板总线与各模件交换数据对各处理模件进行控制并把信号处理结果显示。
MVME177模件运行于嵌入式实时操作系统 VxWorks 下,人机交互界面基于 X 窗口系统。
二. 嵌入式实时操作系统 VxWorks 简介由于声纳系统在探测到某些目标后 (例如鱼雷要迅速作出反应, 所以要求控制及显示系统必须是实时操作系统。
实时操作系统, 要求能够随时打断正在执行的任务, 对内部和外部发生的事件在确定的时间内作出响应。
本系统采用的 VxWorks 是由美国 WindRiver 开发的一种类 UNIX 的高性能嵌入式实时操作系统。
它是目前世界上用户数量最大的实时操作系统。
具有优越的技术性能、丰富的应用软件支持、良好的技术服务和可靠的系统稳定性。
VxWorks 的主要性能特点有:1.高度可剪裁的微内核结构 VxWorks 的所需要的存储器空间大约为8KB~488KB(ROM、 620KB~29.3KB(RAM,具有极好的可伸缩性。
2.高效的多任务调度 VxWorks 支持中断驱动的优先级抢占式调度和时间片轮转调度, 并具有确定的、快速的上下文切换能力。
3.灵活的任务间通讯手段支持信号灯、消息队列、管道、信号和套接字等进程间通讯和互斥手段。
4.支持诸如 Ring buffer、 Link list 等共享内存技术。
基于VxWorks的多任务实时性分析
基于VxWorks的多任务实时性分析张宇;王省书;胡春生【摘要】为了分析VxWorks操作系统在多任务环境下任务切换的实时性,运用时间戳方法对任务抢占切换时间进行了测量,并通过数据定量分析了任务数量对任务切换时间的影响.同时为了加强任务控制,使用信号量通信机制,设计任务间通信控制程序,并对信号量的实时性影响进行了测量与分析.结果表明任务数量和信号量机制对切换时间有一定影响,但增加的延迟时间非常小.%In order to analyze the real - time characteristics of multi - task of the system based on VxWorks, a method is designed to measure the task switching time. By measurement date, the task switching time influenced on multi - task is analyzed. As well as, taking advantage of semaphores task communication mechanism, program is given to aim at controlling multi - task. Then the real - time characteristics of semaphores is measured and analyzed. Theresult'indicates that the quantity of tasks and semaphores mechanism have a certain influence on the task switching time, but the added delay time is very short.【期刊名称】《微处理机》【年(卷),期】2013(034)001【总页数】5页(P53-57)【关键词】VxWorks系统;实时操作系统;任务调度机制;任务通信【作者】张宇;王省书;胡春生【作者单位】国防科学技术大学光电科学与工程学院,长沙410073【正文语种】中文【中图分类】TP316.21 引言VxWorks操作系统是由美国Wind River System公司推出的一款嵌入式实时操作系统。
基于VxWorks的多任务程序设计
o VX o k . n W rs
Ke r s Vx o k mul ts i g; r g a mi g y wo d : W r s; i takn p rm n o
0 引 言
V Wok 操作 系统 以其 高可靠 性 、 实时性 在航 x rs 高
空 电子系统 中得到 广泛的应 用 , 但航 空 电子 系统软件
第2 1卷
21 0 1年 9月
第 9期
计 算 机 技 术 与 发 展
COMP UTE T HN0LOGY R EC AND DEVEL OPME NT
Vo . NO 9 1 21 . Se 2 p. 011
基 于 V Wok x rs的 多 任 务 程 序 设 计
武 华 , 军伟 刘
l V W0k 操作 系统任务调度 x rs
一种基于Vxworks的多任务调度算法
1. 3
程序运行仿真图
由于本系统软件的任务调度频繁, 产生的大量调度数 据无法在虚拟环境中全部存储, 因此调度显示图分为两个 部分, 图中横轴为时间轴 , 纵轴为任务集。图 5 为时间片
轮转调度的三个任务的调度示意图, 可以看出三个周期任 务顺利地实现了时间片轮转调度, 几乎不存在切换时间; 图 6 为高优先级任务抢占调度的示意图, 从图 6 可以看出, 各任务在进行抢占资源时的切换时间也是几乎不存在的。 与 RM 算法不同 , 任务之间的调度与各任务的执行时间、 截止时间等参数并无关系, 即使在这些参数未知且不稳定 的条件下, 本系统所用的算法也可以实现高实时性的任务 调度。而且在 经过 3 个 小 时的 连 续试 验 中, 系统 工 作 正常。
原则: 采用时间片轮转调度的周期任务的优先级最低 , 保 证高优先级任务随时可以抢占临界资源开始运行; 任务在系统中的重要性越大 , 优先级就要越高, 保 证重要的任务可以优先抢占临界资源及时开始运行。 按照各任务在系统中的权重, 制定各自的优先级如表 1 所示:
表 1 任务优先级表
图1
SPDA 工作模式图
图 5 时间片轮调度示意图
图 6 高优先级任务抢占示意图
2
结论
本文描述了机载 SPDA 系统软件的设计与应用 , 着重 分析了在 V xw orks 操作系统中基于系统权重的任务调度 算法的实现与仿真。该算法顺利地实现了任务之间的实 时调度 , 由于采用的信号量通信机制来激活/ 阻塞任务, 上 下文切换时间在微秒级, 具有良好的实时性 , 并在 3 个小 时的连续试验中运行正常。对于 S PDA 系统的升级开发, 针对新的功能, 更多任务的调度 , 有待下一步进行研究。
摘要: 针对机载二次配电系统( the Second Pow er Dist ribution A ssociation, 缩写为 SPDA) 的任务调度 , 提出了一 种选择时间片轮转与静态权重优先级抢占混合的调度算法 , 并进行了算法仿真 。 关键词 : V xw orks; 实时; 信号量; 优先级 ; 调度 中图分类号: T P316 文献标识码: A 文章编号: 1673 1131( 2011) 02 0043 03
基于VXWORKS的多DSP系统的多任务程序设计
基于VXWORKS的多DSP系统的多任务程序设计近年来,计算机产品的应用领域越来越广,数字信号处理器的发展表现得尤为明显。
DSP芯片制造商和DSP板开发商利用自身的优势不断开发出多DSP结构的产品来满足这种需求。
通常的DSP设备是与嵌入式系统相结合,来实时地完成某一特定任务。
随着信号采集速度和处理速度的要求越来越高,许多领域都需要进行多处理器运算,其中包括医学、图像处理、军事、工业控制、电信等许多领域。
多处理器系统可以根据所需实现的功能和处理器的性能来调节处理结点的数目,使系统达到最佳的性能价格比。
实际上,只有从芯片开始仔细设计,才能方便地实现多处理器系统的调节功能。
这里选用的是AD公司新出品的SHARC 级处理器ADSP21160。
ADSP21160具有很大的片内存储区、多重内部总线结构、独立的I/O子系统;具有构造多处理器系统的所有特点,能够真正支持处理器数目的可调节功能,十分适合组成高性能浮点的多DSP系统。
VxWorks是目前世界上用户数量最大的实时操作系统。
这使它除了具有优越的技术性能之外,还具有丰富的应用软件支持、良好的技术服务和可靠的系统稳定性。
由于它具有以上优点,本系统中选用了VxWorks作为MVME167的操作系统。
一、ADSP21160的特点ADSP21160 是AD公司采用超级哈佛结构的一种新产品。
21160的汇编代码与2106x兼容,处理器具有SIMD(单指令流多数据流)功能;而2106x只具有SISD(单指令流单数据流)功能。
为了充分利用这种新的功能,一些指令做了一些改变。
ADSP21160包括1个100/150MHz的运算核、双端片内SRAM、1个支持多处理器的集成在片内的I/O处理器和多重内部总线以消除I/O瓶颈。
ADSP21160的汇编源代码与2106x兼容。
SIMD计算结构:2个32bit的计算单元,其中每一个单元包括乘法器、ALU、移位寄存器及寄存器文件。
具有完备的与外围设备接口功能。
VxWorks下基于多任务调度的分析和研究
VxWorks下基于多任务调度的分析和研究
李慧;李涛;杨占华;万玮
【期刊名称】《计算机技术与发展》
【年(卷),期】2005(015)006
【摘要】VxWorks操作系统是一个功能强大、而且独立于处理器的实时操作系统,它具有真正微内核的相当小的层次结构.稳定、可靠、高性能的内核以及友好的用户开发环境等优点使得VxWorks被广泛应用于高精尖以及实时性要求极高的领域.文中在分析VxWorks内核的多任务调度以及相应的调度算法的基础上,提出了基于优先级的多任务资源共享问题的解决方案,并介绍了一个解决优先级倒置的方案实例.
【总页数】3页(P30-32)
【作者】李慧;李涛;杨占华;万玮
【作者单位】西北工业大学,计算机学院,陕西,西安,710072;西北工业大学,计算机学院,陕西,西安,710072;西北工业大学,计算机学院,陕西,西安,710072;西北工业大学,计算机学院,陕西,西安,710072
【正文语种】中文
【中图分类】TP316.2
【相关文献】
1.基于VxWorks的星务管理系统软件多任务实时性调度设计 [J], 赵建坤;张大松;胡爱兰;李建宏
2.一种基于Vxworks的多任务调度算法 [J], 任军利;任鹏;陈峰
3.基于Vxworks的语音控制系统多任务调度算法的研究 [J], 袁超
4.基于Vxworks的语音控制系统多任务调度算法的研究 [J], 袁超
5.一种基于Vxworks的多任务调度算法 [J], 任军利;陈峰;任鹏
因版权原因,仅展示原文概要,查看原文内容请购买。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2 、语 音 控 制 系统 的功 能
该语音控制系统的主要功能是为 电力 负载提供 电源控制管理 , 根据人工声音命令和负载设备的 电气状态调整电源 的通断 , 保证 电 力 系统 的安全运行 。 按照系统功能要求 , 其软件 的运行 流程 图如图1 示 : 所 根据上 图可将系统分 为9 个任务 , 分别是 : ( AS ) T K1循环读取环形缓存区 ( ed o_ re )人工声音命 R a F rO dr : 令被 采样数字化后存 于环形缓存 区中 , 对该 缓存区进行不 问断查 询; ( S 2 循环 发 也 命 令 对 状 态 电 流值 进 行 索 取 ( k o— a TA K ) As F rV l )通过数据总线不 间断 向负载发送命 令对即时负载状 态和 电流 u: 值 进行索取 ; ( S ) 存 电流 值 , 算It 迟 时 间 ( a eD t~ o nT TA K3保 计 2延 S v_ aa C u t i )将负载通过数据总线传输的状态 电流值保存 ̄ RO me : j I M中 , 并监 控实时采集的状 态电流值变化情 况 , 发现负载 电流值过载时 , 算 计 并关断 负载电源 的时间 ; ( S 4 判 断 串 口命 令 ( elO d r : 读 出的 人 工 数 据 进 TA K ) D a r e)对 — 行解析 , 括去噪 、 别等处理 ; 包 识 ( AS ) 传状 态 电流值 ( e d Vau : 据 人工 命 令将 保 T K 5上 S n — l )根 存在RO M中的当前 负载的状 态 电流值显示于 显示 屏上 ; ( AS ) T K 6 发送开通 命令 (e d Or e_ )根据 人工命令控 Sn — dr1 : 制 负 载 电源 的开 通 ; ( AS ) T K 7 发送 断开 命令 (e d Or e_ )根据 人工命令控 Sn — dr2 : 制 负 载 电源 的 断 开 ; ( AS ) T K 8 采集模 拟及I O信号量 ( o — DI : / F r A O) 根据人工命 令 对 外 接 的 模 拟信 号量 和IO信 号量 进行 采集 并显 示 于 显 示 屏 上 ; / ( AS ) I T K 9 BT自检 ( I : 系统运行时对一些系统模 块进 B T)在 行 自检 测。 从图中可以看 出, 能否及时的执行命令要求操作直接关系着整
算法分析
_ 术 _字 十 技獭 I f 敦
控制系统多任务调度算法的研究
袁超
( 空总体办公 室 贵州安顺 5 11) 航 608
摘要 : 究 了一种 用 于电 力控 制 的 基fV wok g{ 音控 制 系统 的 多任务 调 度算 法 , 据 系统 功 能划 分 了任 务 及优 先级 , 用信 号量 通信 研 f x rs/ -  ̄ 根 采 方式 , 设计 了时 间 片轮 转和 基 于优 先级 抢 占的 混合 调 度 算 法 , 经仿 真 测 试 , 法 运行 效 果 稳定 , 务切 换 时 间达 到 毫 秒级 。 算 任
等。
E F D 调度同样为任务指定优先级 , 具有最早截止期限的任务赋 与最高优先级 , 调度最先运行有最早截止期限的任务 , 即具有最高 优先级 的任务 。DF E 调度 的周期任务 的优先级是变化 的, 对每一个 可调度 时刻 , 将根据变化 的任务最早截止期限 , 随时改变其优先级 。 V wok系统 的特点是给出了两种任务调度方法 : x rs 时间片轮转 调度和抢 占式调度 , 后者基于优先级。 工程 经验显示 , 固定优先级调 度 方 法 常 被 采 用 , 对 于 有 周 期 任务 存 在 的 S D 但 P A系 统 , 用 时 问 采 片轮转调度 的优势是可以保证周期任务 的及时运行 。 由于高实时性 要求任务之 间不能存在大量数据传输、 不便 与网络相连, 所以, 任务 之 间采取Vx r s wok 系统简单 的高速的信号量通信方式 。 本 文提 出 了一 种 单 C U下 时 间 片轮 转 与 和 优 先级 抢 占相 结 合 P 的} 合调度 算法。 昆
关键 词 : x rs 多任务调 度 信 号量 时 间片 优 先级 V wok 中图分 类 号 : P 1 . T 3 62 文献标识码 : A 文章编号 :0 79 1 ( 0 20 . 1 20 1 0 .4 62 1 Wid ie公司设计开发 的一种嵌入 式实时 x rs n rv r 操作 系统 ( T )实 时 内 核W id 供 了多 任 务 的环 境 。 R OS , n提 随着 发 展 , V wok ̄, 、 x rs 定 可靠 , 且实时 陛好 , 在航空航天、 电力 电子等领域 , 越 来 越多嵌入式控制设备采用 了Vx r s wok 操作 系统。 R OS T 研究的关键是实 时任务调度 的设计 。 O 中实 时调度 RT S 技术通常划分为抢 占式调度 和非抢 占式调度, 前者为静态表驱动策 略, 后者为优先级驱动策略一种观点提出 : 占式调度算法相对简 抢 单 , 算 速 度 快 , 时 陛 好 , 优 先 级 任 务 可 优 先 保 证 , 上 下 文 切 运 实 高 但 换 较 多 。 非 抢 占式 调 度 虽 然 上 下 文 切 换 少 , 通常 处 理 器 的 资 源 而 但 利用率低 。 Lu L ya d 人共 同 提 出 的速 率 单 调 ( tMo oo i- i和 a ln 两 Rae n tnc RM) 算法是典型 的静 态调 度算法 。 在一种典动态优 先级调度 算法 是截 止期限优先 (DF 算法 。 E ) 直到 目前 , 在实时调度算法领域的研 究 , 术 界 都 是 在 R 或E F 种 算 法 的 基 础 上 发 展 而 来 。 学 M D 两 RM调度 的原理是 为每一个任 务指定优 先级 , 周期越短 的任 务 , 先 级 越 高 , 度最 先运 行 优 先级 高 的 任 务 , 可 预 测 方法 , 优 调 种 要 求对 任务 相 关 约 束 参数 必 需 预 知 , 执行 时 间 、 如 时序 约 束 、 止 期 限 截