CN102110022B - 基于优先级调度的传感器网络嵌入式操作系统 - Google Patents
基于优先级调度的传感器网络嵌入式操作系统 Download PDFInfo
- Publication number
- CN102110022B CN102110022B CN 201110068823 CN201110068823A CN102110022B CN 102110022 B CN102110022 B CN 102110022B CN 201110068823 CN201110068823 CN 201110068823 CN 201110068823 A CN201110068823 A CN 201110068823A CN 102110022 B CN102110022 B CN 102110022B
- Authority
- CN
- China
- Prior art keywords
- priority
- task
- scheduling
- module
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000015572 biosynthetic process Effects 0.000 claims description 18
- 230000005540 biological transmission Effects 0.000 claims description 6
- 230000009466 transformation Effects 0.000 claims description 6
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 230000005059 dormancy Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
一种无线传感器网络技术领域的基于优先级调度的传感器网络嵌入式操作系统,包括:任务优先级设置接口模块、任务调度配置组件模块和基于优先级的任务调度模块,任务优先级设置接口模块与应用程序相连接并传输任务优先级信息,任务调度配置组件模块与系统内核相连接并传输任务调度信息,基于优先级的任务调度模块与任务调度配置组件模块相连接并传输任务优先级调度信息。本发明采用基于优先级的多任务可抢占式调度策略作为内核调度,为应用程序提供了优先级调度的接口,在任务执行压入队列之前,可以先给任务分配一个优先级,从而系统按照任务被分配的优先级进行调度,优先级更高的任务优先执行,然后将任务压入队列。
Description
技术领域
本发明涉及的是一种无线传感器网络技术领域的系统,具体是一种基于优先级调度的传感器网络嵌入式操作系统。
背景技术
无线传感器网络现有多种操作系统中,使用最广泛的是TinyOS,论文号DOI:10.1007/3-540-27139-2_7,公开日期:2005年,TinyOS:An Operating System for SensorNetworks(微操作系统:一种传感器网络的操作系统)。是一个开源的轻量级嵌入式操作系统,其特点是体积小、结构高度模块化、基于组件的架构方式、快速适用于各种应用。TinyOS内部采用一个循环队列来维护任务列表。TinyOS调度模型有以下特点(1)任务单线程运行到结束,只分配单个任务栈。(2)没有进程管理概念,对任务按照最简单的先入先出进行调度(3)先入先出的任务调度策略是电源敏感的,当任务队列为空时,处理器会休眠(4)具有基于事件的中断调度策略。
经过对现有技术的检索发现,TinyOS因为不具备任务的优先级调度,可能出现以下不足之处:
(1)过载,当节点上待处理的任务超过节点处理能力时,发生过载,造成的原因有节点密度过大,中断事件发生频率过高等(2)任务丢失,造成的原因是本地任务发生频率过高或者任务较多(3)有通信吞吐量下降,如某个任务造成阻塞或者异常,影响其他任务执行4)实时性差。
发明内容
本发明针对现有技术存在的上述不足,提供一种基于优先级调度的传感器网络嵌入式操作系统,采用基于优先级的多任务可抢占式调度策略作为内核调度,为应用程序提供了优先级调度的接口,在任务执行压入队列之前,可以先给任务分配一个优先级(使用posttask()),从而系统按照任务被分配的优先级进行调度,优先级更高的任务优先执行,然后将任务压入队列(post)。
本发明是通过以下技术方案实现的,本发明包括:任务优先级设置接口模块、任务调度配置组件模块和基于优先级的任务调度模块,其中:任务优先级设置接口模块与应用程序相连接并传输任务优先级信息,任务调度配置组件模块与系统内核相连接并传输任务调度信息,基于优先级的任务调度模块与任务调度配置组件模块相连接并传输任务优先级调度信息。
所述的任务优先级设置与分配模块包括:任务优先级分配单元和优先级结构定义单元,其中:优先级结构定义单元与优先级分配单元相连接并传输优先级结构信息。
所述的任务调度配置组件模块内置任务优先级调度配置文件,该任务优先级调度配置文件与任务调度模块以及任务优先级借口设置模块相连,将系统原有任务中的任务属性信息替换为带优先级属性的任务属性信息,将系统本身的任务调度模块替换为基于任务优先级的任务调度模块。
所述的基于优先级的任务调度模块包括:队列优先级单元、多级优先级循环队列单元、其中:队列优先级单元与多级优先级循环队列相连接,提供每个队列的优先级属性信息,多级优先级循环队列单元队列与任务优先级分配模块相连接,将不同优先级的任务接受并存放于按不同的优先级排列的队列中。队列间按照优先级属性调度,而各个队列中则按照相同优先级任务FIFO来调度。
本系统与传统的无线传感器网络系统调度机制上也有着明显的不同:比如TinyOS系统任务调度机制为单任务队列,先入先出执行,遇到事件发生,产生中断。而本文中的任务调度机制为多级优先级队列调度机制,根据任务分配的优先级,任务被放置在不同运行优先级的优先级队列中,单个优先级队列中的任务仍然采取先入先出的运行机制,优先级高的队列中的任务优先执行,保证了任务优先级调度的实现。防止系统产生过载现象,降低了系统功耗。
附图说明
图1为本发明结构示意图。
图2为实施例发包通信吞吐量对比示意图。
图3为实施例收包通信吞吐量对比示意图。
具体实施方式
下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
应用程序场景:有二个节点,一个节点负责发送数据包,一个节点负责收取数据包作为基站,发送\接受频率为8HZ(125ms),下面是发送\接受节点二种情况下的吞吐率,一种情况下节点运行在基于优先级调度的系统之上,发包\收包作为高优先级任务执行,一种情况下,本地任务与发包\收包任务相同优先级。
如图1所示,本实施例包括:任务优先级设置接口模块、任务调度配置组件模块和基于优先级的任务调度模块,其中:任务优先级设置接口模块与应用程序相连接并传输任务优先级信息,任务调度配置组件模块与系统内核相连接并传输任务调度信息,基于优先级的任务调度模块与任务调度配置组件模块相连接并传输任务优先级调度信息。
所述的任务优先级设置与分配模块包括:任务优先级分配单元和优先级结构定义单元,其中:优先级结构定义单元与优先级分配单元相连接并传输优先级结构信息。
本实施例中,优先级结构信息被定义为高、中、低三层结构,优先级结构定义单元与优先级分配单元相连接并传输所定义的优先级三层结构信息,任务优先级分配单元将所需的优先级分配给相应任务,发包\收包任务优先级属性为高,而系统中其他的任务优先级属性设置为中或者低。
所述的任务调度配置组件模块内置任务优先级调度配置文件,该任务优先级调度配置文件与任务调度模块以及任务优先级设置与分配模块相连,将系统任务中原有的任务属性信息替换为带有三层结构优先级属性的任务属性信息,将系统本身的FIFO任务调度模块替换为基于任务优先级的任务调度模块。从而构成一个不同以往的全新系统。
所述的基于优先级的任务调度模块包括:队列优先级单元、多级优先级循环队列单元,其中:队列优先级单元与多级优先级循环队列相连接,提供每个队列的优先级属性信息,多级优先级循环队列单元队列与任务优先级分配模块相连接,将不同优先级的任务接受并存放于按不同的优先级排列的队列中。如收/发包任务存放于优先级属性为高的优先级循环队列中,其他优先级设置为中和低的任务分别存放于相应优先级属性的优先级循环队列中。队列间按照优先级属性调度,而各个队列中则按照相同优先级任务FIFO来调度。
如图2、3所示,基于优先级调度的系统能够显著的提高通信吞吐量。
本系统与传统的无线传感器网络系统调度机制上有着明显的优势。TinyOS系统任务调度机制为单任务队列,先入先出执行,遇到事件发生,产生中断。这样就可能造成后生成而重要性高的任务因为等待太久而得不到执行,影响系统效率。本文中的基于优先级的调度系统,任务生成并压入调度器之前,就根据任务重要性分配了任务优先级,根据任务分配的优先级,任务被放置在不同运行优先级的优先级队列中,单个优先级队列中的任务仍然采取先入先出的运行机制,优先级高的队列中的任务优先执行,保证了任务优先级调度的实现。防止系统产生过载,任务之间循环等待导致死锁等现象,间接地降低了系统功耗。
Claims (4)
1.一种基于优先级调度的传感器网络嵌入式操作系统,其特征在于,包括:任务优先级设置与分配模块、任务调度配置组件模块和基于优先级的任务调度模块,其中:任务优先级设置与分配模块和应用程序相连接并传输任务优先级信息,任务调度配置组件模块与系统内核相连接并传输任务调度信息,基于优先级的任务调度模块与任务调度配置组件模块相连接并传输任务优先级调度信息;
所述的任务优先级设置与分配模块包括:任务优先级分配单元和优先级结构定义单元,其中:优先级结构定义单元与优先级分配单元相连接并传输优先级结构信息。
2.根据权利要求1所述的基于优先级调度的传感器网络嵌入式操作系统,其特征是,所述的任务调度配置组件模块内置任务优先级调度配置文件,该任务优先级调度配置文件与任务调度模块以及任务优先级设置与分配模块相连,将系统原有任务中的任务属性信息替换为带优先级属性的任务属性信息,将系统本身的任务调度模块替换为基于任务优先级的任务调度模块。
3.根据权利要求1所述的基于优先级调度的传感器网络嵌入式操作系统,其特征是,所述的基于优先级的任务调度模块包括:队列优先级单元、多级优先级循环队列单元、其中:队列优先级单元与多级优先级循环队列相连接,提供每个队列的优先级属性信息,多级优先级循环队列单元队列与任务优先级分配模块相连接,将不同优先级的任务接受并存放于按不同的优先级排列的队列中。
4.根据权利要求3所述的基于优先级调度的传感器网络嵌入式操作系统,其特征是,所述的队列间按照优先级属性调度,而各个队列中则按照相同优先级任务FIFO来调度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110068823 CN102110022B (zh) | 2011-03-22 | 2011-03-22 | 基于优先级调度的传感器网络嵌入式操作系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110068823 CN102110022B (zh) | 2011-03-22 | 2011-03-22 | 基于优先级调度的传感器网络嵌入式操作系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102110022A CN102110022A (zh) | 2011-06-29 |
CN102110022B true CN102110022B (zh) | 2013-04-10 |
Family
ID=44174193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110068823 Expired - Fee Related CN102110022B (zh) | 2011-03-22 | 2011-03-22 | 基于优先级调度的传感器网络嵌入式操作系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102110022B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013107012A1 (zh) * | 2012-01-18 | 2013-07-25 | 华为技术有限公司 | 分布式计算任务处理系统和任务处理方法 |
CN102724763B (zh) * | 2012-06-07 | 2014-11-05 | 西安交通大学 | 一种基于二维优先级的时域分组调度方法 |
CN102752136A (zh) * | 2012-06-29 | 2012-10-24 | 广东东研网络科技有限公司 | 通信设备操作调度方法 |
JP6123442B2 (ja) | 2013-04-09 | 2017-05-10 | オムロン株式会社 | センサ装置、計測システム、および計測方法 |
CN104731651B (zh) * | 2013-12-20 | 2018-08-17 | 南京南瑞继保电气有限公司 | 电力自动化任务调度及触发机制的方法、系统和处理器 |
CN105610662B (zh) * | 2015-12-29 | 2019-01-22 | 北京理工大学 | 电动汽车的反馈式综合动态调度网络化控制装置 |
CN106528295A (zh) * | 2016-11-07 | 2017-03-22 | 广州华多网络科技有限公司 | 系统任务调度方法及装置 |
CN107239349A (zh) * | 2017-05-25 | 2017-10-10 | 努比亚技术有限公司 | 一种任务管理方法、计算机设备及存储介质 |
CN109358954B (zh) * | 2018-09-21 | 2021-11-02 | 成都理工大学 | 一种基于MaxSAT最优解的过载实时系统可抢占式调度方法 |
CN113961334B (zh) * | 2021-12-23 | 2022-05-31 | 联通智网科技股份有限公司 | 一种任务处理方法、装置、设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1327349C (zh) * | 2005-06-13 | 2007-07-18 | 浙江大学 | 一种微内核嵌入式实时操作系统的任务级资源管理方法 |
CN100517236C (zh) * | 2006-04-03 | 2009-07-22 | 北京握奇数据系统有限公司 | 智能卡嵌入式操作系统及其控制方法 |
CN101290588B (zh) * | 2008-03-07 | 2010-06-16 | 重庆邮电大学 | 一种微嵌入式实时任务调度器及调度方法 |
-
2011
- 2011-03-22 CN CN 201110068823 patent/CN102110022B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN102110022A (zh) | 2011-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102110022B (zh) | 基于优先级调度的传感器网络嵌入式操作系统 | |
CN1981484B (zh) | 具有多条调度巷道的流水线调度器及用在其中的调度方法 | |
CN103841052B (zh) | 一种带宽资源分配系统与方法 | |
CN101452404B (zh) | 一种嵌入式操作系统的任务调度装置及方法 | |
CN101547150B (zh) | 数据通信输入端口调度的方法及装置 | |
CN102594433B (zh) | 一种卫星网络多对一通信冲突的动态优先级调度方法 | |
CN103199968A (zh) | 一种消息的发送方法和系统 | |
CN101453716A (zh) | 基于短信应用网关的短信下发调度系统 | |
CN102970244A (zh) | 一种多cpu核间负载均衡的网络报文处理方法 | |
CN101499019A (zh) | 电信级以太网系统及用于该系统的实时任务调度方法 | |
CN102323895A (zh) | 一种基于机顶盒嵌入式操作系统实时调度方法 | |
CN103365711A (zh) | 应用于物联网业务平台的任务调度机制和方法 | |
Hu et al. | Distributed computer system resources control mechanism based on network-centric approach | |
CN110851252A (zh) | 一种基于tsn架构的规约转换设备和规约转换方法 | |
CN102521057A (zh) | 资源调度方法和装置 | |
CN108711007A (zh) | 一种能源一体化采集系统的多任务实时调度方法 | |
CN106325984A (zh) | 一种大数据任务调度装置 | |
CN111478839B (zh) | 一种物理总线及操作系统解耦的分布式航空通信系统 | |
CN102088719A (zh) | 一种业务调度方法、系统及设备 | |
CN115827237A (zh) | 一种基于性价比的storm任务调度方法 | |
CN101950260A (zh) | 一种处理器程序调度方法及装置 | |
CN113806064A (zh) | 作业调度方法、装置、系统及作业派发装置 | |
CN102646059A (zh) | 多核处理器系统的负载平衡处理方法及装置 | |
Vanithamani et al. | Performance analysis of queue based scheduling schemes in wireless sensor networks | |
Yao et al. | Streaming Data Priority Scheduling Framework for Autonomous Driving by Edge |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130410 |