CN101604259A - 一种基于嵌入式***的多进程同步调度的方法 - Google Patents
一种基于嵌入式***的多进程同步调度的方法 Download PDFInfo
- Publication number
- CN101604259A CN101604259A CNA2009101079185A CN200910107918A CN101604259A CN 101604259 A CN101604259 A CN 101604259A CN A2009101079185 A CNA2009101079185 A CN A2009101079185A CN 200910107918 A CN200910107918 A CN 200910107918A CN 101604259 A CN101604259 A CN 101604259A
- Authority
- CN
- China
- Prior art keywords
- code
- task
- embedded system
- scheduler
- storage unit
- 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.)
- Granted
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
一种基于嵌入式***的多进程同步调度的方法,解决提供嵌入式***多进程之间的资源同步调度的方法,采用的技术方案是,该方法借助网络协议报文和计算机配套软件程序指令实现的,具体包括启动引导程序、载入操作***内核、加载同步脚本、进程同步控制以及进程调度过程,首先在***内核中设置本方法专用的中间存储单元、在任务的多进程执行过程中在以上的存储单元中以注册形式将所有进程以代码形式存储起来,再将所有进行程代码与进程中要所执行的进程指令集地址建立由向量映射对照表。本发明的有益效果是容易实施,方便于嵌入式设备的升级和大规模的部署。
Description
技术领域
本发明涉及到嵌入式操作***对进程之间的调度方法,具体讲涉及一种基于嵌入式***的多进程同步资源调度的方法。
背景技术
随着社会的进步,科技的发展,多元化设备也是日新月异,用户对嵌入式设备也提出了更高的要求,需要能够提供功能完备、安全、快捷、稳定、易操作等优点的嵌入式设备,全而完善的功能必定需要一套完备的管理机制,小而全的***简称为嵌入式***,用来管理嵌入式设备的***,对整个***中存在的用户接口和内部接口之间协调和操作,为用户提供更加人性化的操作。统一对***中资源分配调度,***存在的核心调度的实体都在对应一个用户接口程序,为保证嵌入式***中***的资源能够达到共享,嵌入式调度程序需要协调好个资源之间的互斥,对用户的角度来讲就是为用户提供多功能,低能耗,高可靠的设备,嵌入式***就是为嵌入式设备而生,嵌入式***为嵌入式设备提供多资源的整合,提供各个功能模块和协调及互通,调度策略为不同的用户接口设备分配不同优先权,保证实时的交互或者资源的请求能得到及时的分配,嵌入式***调度可以被不同优先级的任务打断,需要设置用户接口资源的保护,调度程序的需要了解用户的操作习惯,多任务的调度是提供多任务之间的资源依赖和资源共享的一种调度机制,在今后的社会发展过程中这种依赖会越来越多,嵌入式***中存在一个任务调度器将为用户接口及资源调度提供更加安全有效的调度策略,保证***资源合理及时的得到利用。
目前比较常见的嵌入式***有Linux,WinCE,VxWorks,UC/OS,Nucleus,各个***都有其优缺点,各个嵌入式***在不同的时期和不同的应用需要而得到推广的,Linux嵌入式***就是一个很好的嵌入式***,应用最广且开源的操作***,WinCE,VxWorksUC/OS,Nucleus都是付费的嵌入式操作***,在开发过程中可以得到很好的技术支持,这些常见的嵌入式操作***都是多任务的***,能够为多任务,多接口的需要实现管理和维护工作,不同的嵌入式***都有各自应用场景,在现在选择开发平台时,可以根据实际的***对实时性,及实际情况出发在开发过程中开发需不需要开发时需要增加***开发支持力度,可以做出恰当选择。就目前的嵌入式***中Linux在这块市场站了很大一部分市场,Linux的特点是开源,免费,并且存在一个庞大的开源组织不管在实际开发过程遇到什么问题都可以通过开源论坛,或者是其它途径找解决方案,该***为嵌入式***注入了活力,使今后嵌入式***的发展历上添加了重重的一笔。
如上所述,由于嵌入式设备的需求量大加速了嵌入式***的发展,对嵌入式***的发展也是个契机。***在加电后所有的程序都开始加载,程序加载结束后程序的运行就是有***调度程序来调度,调度的时机就是由操作***随机调度或者通过***内部机制来触发实现,而***启动时程序之间的资源依赖需要一个有效的方法来保证。
发明内容
为解决提供嵌入式***多进程之间的资源同步调度的方法,本发明设计了一种基于嵌入式***的多进程同步调度的方法,实现了人们更多的个性化要求。
本发明实现发明目的采用的技术方案是,一种基于嵌入式***的多进程同步调度的方法,该方法借助网络协议报文和计算机配套软件程序指令实现的,首先在***内核中设置本方法专用的中间存储单元、在任务的多进程执行过程中在以上的存储单元中以注册形式将所有进程以代码形式存储起来,再将所有进行程代码与进程中要所执行的进程指令集地址建立由向量映射对照表,本方法具体步骤包括:
A、启动应用程序,请求注册;
B、启动同步调度模块,将启动的进程生成代码以报文注册形式逐个存储到专用的存储单元中;
C、根据所有注册的进程代码关系、性质以及各个任务进程指令集地址、建立各个任务进程的向量映射对照表,确定各个任务进程的时序、顺序以及优先权;
D、管理程序等待接收所有启动进程的代码注册的完成;
E、根据所有进程之间的映射关系,多进程资源调度器按向量映射对照表进行调度程序。
本发明的有益效果是整个过程实现起来简单,容易实施,对***的稳定性,扩展提供了保证,非常适合于嵌入式***的多任务之间存在耦合关系的***,方便于嵌入式设备的升级和大规模的部署。
下面结合附图对本发明进行详细说明。
附图说明
图1是本发明的方法流程图。
具体实施方式
参看图1,一种基于嵌入式***的多进程同步调度的方法,该方法借助网络协议报文和计算机配套软件程序指令实现的,具体包括启动引导程序、载入操作***内核、加载启动脚本、进程同步控制以及进程调度过程,首先在***内核中设置本方法专用的中间存储单元、在任务的多进程执行过程中在以上的存储单元中以注册形式将所有进程以代码形式存储起来,再将所有进行程代码与进程中要所执行的进程指令集地址建立由向量映射对照表,本方法具体步骤包括:
A、启动应用程序,请求注册;
B、启动同步调度模块,将启动的进程生成代码以报文注册形式逐个存储到专用的存储单元中;
C、根据所有注册的进程代码关系、性质以及各个任务进程指令集地址、建立各个任务进程的向量映射对照表,确定各个任务进程的时序、顺序以及优先权;
D、管理程序等待接收所有启动进程的代码注册的完成;
E、根据所有进程之间的映射关系,多进程资源调度器按向量映射对照表进行调度程序。
在调度程序启动之前,为保证管理程序能够接收到所有进程代码的存储,代码存储过程是通过网络套节子来发送到***内核的存储单元中的。
上述的步骤E中,单个进程没有得到调度程序调度、一直阻塞等待的,返回步骤D,继续等待。
上述的多进程资源调度器通过配套的网络协议接口实现调度器和进程之间的收发,将进程代码发送给资源调度器,调度器通过解码、处理来调度进程,注册时进程代码的传输是通过网络套节子发送的。
优选实施方式是,调度程序和各个进程之间的注册事件是通过网络协议报文注册的,并且转送当前客户的进程代码。
本发明实用于多任务的同步,和多任务启动时的资源同步,保证***的资源之间的依赖一致。其启动工作的步骤如下:
1)、加电后开始初始化***所需的基本资源,然后把控制权限交给引导程序。
2)、引导程序初始化基本的外设(串口,网口,嵌入式***所需要的参数信息),准备好***所需要的其它资源,进入下一个阶段,开始引导嵌入式***的。
3)、嵌入式***完成自身所需要的基本初始化,准备进入任务创建和调度的状态,为创建的进程能够得到正常的调度,做最后的准备。
4)、进入任务的创建状态,创建的任务移交给***来调度,创建的任务是由基本的功能点组建而成。不存在资源竞争的状态,这种实现方式很适合单任务的启动流程,实用用于功能单一的嵌入设备的实施和实现。
5)、调度程序驱动在启动任务启动之前,保证多任务进程能够接收到其它进程的注册事件,注册事件是通过网络套节子来发送的,调度程序等待所有的进程注册完成才进入正常的调度状态,防止不同任务之间对资源的竞争。
6)、注册进程发送的注册事件中携带了进程编码,多进程同步调度程序接收到注册消息后,根据进程编码建立各个任务之间映射关系,然后开始执行任务调度,根据事先安排好的任务依赖关系进行调度,确保***在启动过程中任务之间的依赖关系能够得到同步,否则会影响到***的正常运行,单个进程在执行注册时,没有得到调度程序的调度是一直阻塞等待的,直到调度程序调度到该进程,该进程才会退出继续执行,因此这样可以确保任务对***资源之间的互斥和同步,在进入***正常运行的情况,任务之间也可以通过调度机制来实现任务之间的同步,进程启动过程中注册相因的消息,通过注册事件接口,发送同步信号给调度程序,然后再通过调度程序前期进程编码之间的映射关系,实现进程之间的同步,采用信号方式发送的给对进程,整个同步通过调度程序来实现的。
Claims (4)
1、一种基于嵌入式***的多进程同步调度的方法,该方法借助网络协议报文和计算机配套软件程序指令实现的,具体包括启动引导程序、载入操作***内核、加载启动脚本、进程同步控制以及进程调度过程,其特征在于:首先在***内核中设置本方法专用的中间存储单元、在任务的多进程执行过程中在以上的存储单元中以注册形式将所有进程以代码形式存储起来,再将所有进行程代码与进程中要所执行的进程指令集地址建立由向量映射对照表,本方法具体步骤包括:
A、启动应用程序,请求注册;
B、启动同步调度模块,将启动的进程生成代码以报文注册形式逐个存储到专用的存储单元中;
C、根据所有注册的进程代码关系、性质以及各个任务进程指令集地址、建立各个任务进程的向量映射对照表,确定各个任务进程的时序、顺序以及优先权;
D、管理程序等待接收所有启动进程的代码注册的完成;
E、根据所有进程之间的映射关系,多进程资源调度器按向量映射对照表进行调度程序。
2、根据权利要求1所述的一种基于嵌入式***的多进程同步调度的方法,其特征在于:在调度程序启动之前,为保证管理程序能够接收到所有进程代码的存储,代码存储过程是通过网络套节子来发送到***内核的存储单元中的。
3、根据权利要求1所述的一种基于嵌入式***的多进程同步调度的方法,其特征在于:所述的步骤E中,单个进程没有得到调度程序调度、一直阻塞等待的,返回步骤D,继续等待。
4、根据权利要求1所述的一种基于嵌入式***的多进程同步调度的方法,其特征在于:所述的多进程资源调度器通过配套的网络协议接口实现调度器和进程之间的收发,将进程代码发送给资源调度器,调度器通过解码、处理来调度进程,注册时进程代码的传输是通过网络套节子发送的。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101079185A CN101604259B (zh) | 2009-06-10 | 2009-06-10 | 一种基于嵌入式***的多进程同步调度的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101079185A CN101604259B (zh) | 2009-06-10 | 2009-06-10 | 一种基于嵌入式***的多进程同步调度的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101604259A true CN101604259A (zh) | 2009-12-16 |
CN101604259B CN101604259B (zh) | 2011-12-21 |
Family
ID=41470000
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101079185A Active CN101604259B (zh) | 2009-06-10 | 2009-06-10 | 一种基于嵌入式***的多进程同步调度的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101604259B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101860532A (zh) * | 2010-05-07 | 2010-10-13 | 深圳市共进电子有限公司 | 多进程配置文件的保存及加载方法 |
CN102014302A (zh) * | 2010-12-01 | 2011-04-13 | 福建新大陆通信科技股份有限公司 | 一种机顶盒高性能模块调度的方法 |
CN102647344A (zh) * | 2012-03-30 | 2012-08-22 | 迈普通信技术股份有限公司 | 嵌入式分布式***中报文发送方法 |
CN107402804A (zh) * | 2017-07-31 | 2017-11-28 | 广东欧珀移动通信有限公司 | 后台进程管控方法、装置、存储介质及电子设备 |
CN110019059A (zh) * | 2017-12-04 | 2019-07-16 | 北京京东尚科信息技术有限公司 | 一种定时同步的方法和装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100375542C (zh) * | 2001-07-20 | 2008-03-12 | 中兴通讯股份有限公司 | 一种通信设备软件子***的消息调度方法 |
CN1851651A (zh) * | 2006-05-23 | 2006-10-25 | 浙江大学 | 嵌入式sram操作***进程优先权调度的实现方法 |
EP1936498A1 (en) * | 2006-12-21 | 2008-06-25 | International Business Machines Corporation | A method and system to manage memory accesses from multithread programs on multiprocessor systems |
CN101140528B (zh) * | 2007-08-31 | 2013-03-20 | 中兴通讯股份有限公司 | 一种实现集群内定时任务负载分担的方法及装置 |
-
2009
- 2009-06-10 CN CN2009101079185A patent/CN101604259B/zh active Active
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101860532A (zh) * | 2010-05-07 | 2010-10-13 | 深圳市共进电子有限公司 | 多进程配置文件的保存及加载方法 |
CN102014302A (zh) * | 2010-12-01 | 2011-04-13 | 福建新大陆通信科技股份有限公司 | 一种机顶盒高性能模块调度的方法 |
CN102014302B (zh) * | 2010-12-01 | 2012-10-03 | 福建新大陆通信科技股份有限公司 | 一种机顶盒高性能模块调度的方法 |
CN102647344A (zh) * | 2012-03-30 | 2012-08-22 | 迈普通信技术股份有限公司 | 嵌入式分布式***中报文发送方法 |
CN102647344B (zh) * | 2012-03-30 | 2014-12-10 | 迈普通信技术股份有限公司 | 嵌入式分布式***中报文发送方法 |
CN107402804A (zh) * | 2017-07-31 | 2017-11-28 | 广东欧珀移动通信有限公司 | 后台进程管控方法、装置、存储介质及电子设备 |
CN107402804B (zh) * | 2017-07-31 | 2019-12-10 | Oppo广东移动通信有限公司 | 后台进程管控方法、装置、存储介质及电子设备 |
CN110019059A (zh) * | 2017-12-04 | 2019-07-16 | 北京京东尚科信息技术有限公司 | 一种定时同步的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101604259B (zh) | 2011-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Abeni et al. | Container-based real-time scheduling in the linux kernel | |
CN101604259B (zh) | 一种基于嵌入式***的多进程同步调度的方法 | |
CN101452404A (zh) | 一种嵌入式操作***的任务调度装置及方法 | |
CN101505336B (zh) | 具有手持及扩展计算单元的计算设备 | |
EP3073374B1 (en) | Thread creation method, service request processing method and related device | |
CN103150213B (zh) | 负载平衡方法和装置 | |
Yang et al. | Implementation of compositional scheduling framework on virtualization | |
EP1607862A3 (en) | Coordinating use of independent external resources within requesting grid environments | |
EP1705570A3 (en) | Schedulability determination method and real-time system | |
CN104111877A (zh) | 一种基于线程调配引擎的线程资源动态调配***和方法 | |
CN103731372A (zh) | 一种混合云环境下服务提供者的资源供应方法 | |
CN101854300A (zh) | 一种实现CANopen从站的方法 | |
CN103092682A (zh) | 异步网络应用程序处理方法 | |
CN103365726A (zh) | 一种面向gpu集群的资源管理方法和*** | |
CN103593229A (zh) | 异构云操作***的集成与统一调度框架及调度方法 | |
CN103024022A (zh) | 一种虚拟机应用服务的管控***和方法 | |
CN108710536A (zh) | 一种多层次细粒度的虚拟化gpu调度优化方法 | |
CN102681894A (zh) | 一种多任务并发调度方法及*** | |
JP2008186175A (ja) | オペレーティングシステムの起動制御方法及び情報処理装置 | |
CN102279769A (zh) | 一种面向嵌入式Hypervisor 的中断虚拟化操作方法 | |
CN104090826A (zh) | 基于相关性的任务优化部署方法 | |
Park et al. | Comparison of deadline-based scheduling algorithms for periodic real-time tasks on multiprocessor | |
CN109284190A (zh) | 一种任务处理方法及装置 | |
Yu et al. | A survey of studying on task scheduling mechanism for TinyOS | |
Teng et al. | Scheduling real-time workflow on MapReduce-based cloud |
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 | ||
C56 | Change in the name or address of the patentee |
Owner name: SHENZHEN GONGJIN ELECTRONIC CO., LTD. Free format text: FORMER NAME: SHENZHEN GONGJIN ELECTRONICS CO., LTD. |
|
CP03 | Change of name, title or address |
Address after: 518000, Shenzhen, Guangdong province Nanshan District Shekou Nanhai Road 1019, 100 surplus medical instrument Park, two floor Patentee after: Shenzhen Gongjin Electronics Co., Ltd. Address before: Two, building 518052, new energy building, Nanhai Avenue, Nanhai District, Guangdong, Shenzhen Patentee before: Shenzhen Gongjin Electronics Co., Ltd. |