一种功能块的调度方法、设备及存储介质技术

技术编号:38708405 阅读:9 留言:0更新日期:2023-09-08 14:49
本发明专利技术公开了一种功能块的调度方法、设备及存储介质,所述方法包括包括以下步骤:(1)将目标设备的内存空间划分为系统空间和用户空间;并将用户空间划分为多个功能块空间;(2)分别设置系统空间、用户空间、各功能块空间的被访问权限,其中,系统空间仅系统程序有被访问权限;用户空间中各个功能块只能访问功能块所在的空间;(3)按照任务优先级构建任务队列;(4)控制任务队列中各个任务依次执行,在目标设备获取到任务对应的第一程序访问系统空间或者用户空间时,判断第一程序是否越权;本发明专利技术实现了任务的毫秒级的响应,使系统中各任务独立运行,互不影响,提高了嵌入式系统的可靠性。性。性。

【技术实现步骤摘要】
一种功能块的调度方法、设备及存储介质


[0001]本专利技术属于高实时嵌入式计算机
,尤其涉及一种基于存储器管理单元的功能块调度方法、设备及存储介质。

技术介绍

[0002]智能变电站作为智能电网的重要基础和关键支撑,是智能电网建设的重要组成部分。智能变电站经历了采样数字化改造、网络架构优化、保护就地化等不同发展阶段,当前正在向“系统高度集成、结构布局合理、装备先进适用、经济节能环保”的目标前进。为实现此目标,需要把各种不同的业务模块放在同一个硬件环境中运行。当将多业务功能集成到一个装置后,装置中在运行多个业务功能模块时,难免会带来模块之间的相互影响。一个模块程序发生故障,可能导致另一个正常的模块运行异常甚至导致系统宕机。变电站保护监控设备集成多业务功能后,要求设备不同功能之间不能相互影响,必须确保一个业务模块异常,其他业务模块应能正常运行,不受影响。目前Linux操作系统能确保进程运行相互不受影响,但基于Linux操作系统的任务调度实时性无法满足保护监控设备高实时性任务调度的要求。因此,提供隔离多业务功能程序的软件运行环境及系统,保障各个业务运行时的独立性,避免相互影响,是多功能集成的装置软硬件架构内在要求。

技术实现思路

[0003]专利技术目的:本专利技术的目的是提供了一种功能块的调度方法、设备及存储介质,是在基于裸机的运行环境下,在不影响嵌入式高实时性调度的情况下,构建一个多任务调度系统,使一个任务故障不影响其他任务运行,实现多任务隔离运行的调度执行环境。
[0004]技术方案:本专利技术所述的一种功能块的调度方法,包括以下步骤:
[0005](1)将目标设备的内存空间划分为系统空间和用户空间;并将用户空间划分为多个功能块空间;
[0006](2)分别设置系统空间、用户空间、各功能块空间的被访问权限,其中,系统空间仅系统程序有被访问权限;用户空间中各个功能块只能访问功能块所在的空间;
[0007](3)按照任务优先级构建任务队列;
[0008](4)控制任务队列中各个任务依次执行,在目标设备获取到任务对应的第一程序访问系统空间或者用户空间时,判断第一程序是否越权;若第一程序发生越权时,表征第一程序对应的任务为异常任务,目标设备将进入异常中断,并执行中断处理程序;
[0009]其中,在异常中断处理程序中,从任务队列中剔除异常任务,并设置程序执行PC指针,使系统正常运行。
[0010]进一步的,所述系统空间包括:代码段、数据段、栈段、共享数据段;所述功能块空间包括代码段、数据段、栈段、堆段。
[0011]进一步的,所述步骤(2)之后,还包括:将系统空间、用户空间、各功能块空间的被访问权限相应权限管理数据存储在目标设备中的存储器管理单元内。
[0012]进一步的,按照任务优先级构建任务队列,之后还包括:利用解析功能块可执行程序文件对各个任务进行解析,得到各任务对应的待访问空间,根据系统空间、用户空间、各功能块空间的接口内存地址,及各任务对应的待访问空间,确定各待访问空间的目标接口内存地址;将各待访问空间的目标接口内存地址按照任务队列中各个任务的先后顺序构建任务接口队列。
[0013]进一步的,所述步骤(4)在异常中断程序中,还包括:系统程序文件记录出错的代码段位置、栈指针位置、程序指针位置并存储在系统程序文件中。
[0014]进一步的,系统空间不少于32MB,每个程序功能块的内存空间不少于16MB。
[0015]本专利技术所述的一种功能块的调度系统,包括:
[0016]空间划分模块:用于将目标设备的内存空间划分为系统空间和用户空间;并将用户空间划分为多个功能块空间;
[0017]权限设置模块:用于通过分别设置存储器管理单元、系统空间和用户空间的被访问权限,其中,系统空间仅系统程序有被访问权限;用户空间中各个功能块只能访问功能块所在的空间;
[0018]任务优先级设置模块:用于构建任务队列优先级;
[0019]异常处理模块:用于控制任务队列中各个任务依次执行,在目标设备获取到任务对应的第一程序访问系统空间或者用户空间时,判断第一程序是否越权;若第一程序发生越权时,表征第一程序对应的任务为异常任务,目标设备将进入异常中断,并执行中断处理程序;
[0020]其中,在异常中断处理程序中,从任务队列中剔除异常任务,并设置程序执行PC指针,使系统正常运行。
[0021]本专利技术所述的一种设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,所述处理器执行所述程序时实现所述的一种基于存储器管理单元的功能块调度方法中的步骤。
[0022]本专利技术所述的一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述方法。
[0023]有益效果:与现有技术相比,本专利技术具有如下显著优点:本专利技术通过对目标设备设置多个空间类型;设置访问权限;按照优先级构建任务队列等实现了任务的毫秒级的响应,使系统中各任务独立运行,互不影响,提高了嵌入式系统的可靠性。
附图说明
[0024]图1为本专利技术整体框图;
[0025]图2为本专利技术内存空间分配示意图;
[0026]图3为本专利技术系统调用接口示例;
[0027]图4为本专利技术功能块隔离效果示意图。
具体实施方式
[0028]下面结合附图对本专利技术的技术方案作进一步说明。
[0029]如图1所示,本专利技术实施例提供了一种功能块的调度方法,包括以下步骤:
[0030](1)将目标设备的内存空间划分为系统空间和用户空间;并将用户空间划分为多个功能块空间;所述系统空间包括:代码段、数据段、栈段、共享数据段;所述功能块空间包括代码段、数据段、栈段、堆段。系统空间不少于32MB,每个程序功能块的内存空间不少于16MB。
[0031](2)分别设置系统空间、用户空间、各功能块空间的被访问权限,其中,系统空间仅系统程序有被访问权限;用户空间中各个功能块只能访问功能块所在的空间;将系统空间、用户空间、各功能块空间的被访问权限相应权限管理数据存储在目标设备中的存储器管理单元内。
[0032](3)按照任务优先级构建任务队列;利用解析功能块可执行程序文件对各个任务进行解析,得到各任务对应的待访问空间,根据系统空间、用户空间、各功能块空间的接口内存地址,及各任务对应的待访问空间,确定各待访问空间的目标接口内存地址;将各待访问空间的目标接口内存地址按照任务队列中各个任务的先后顺序构建任务接口队列。
[0033]具体如下:
[0034](31)按照统一的规则定义功能块程序各个优先级任务的函数接口。上位机扫描并记录各个优先级任务接口地址,并将该地址缀在功能块可执行程序文件的最后,编译后的可执行文件中通过

g编译选项保留函数接口信息。如xxx_level1()/xxx_level2()等。。目标设备通过解析该可执行文件,记录功能块的任务接口内存地址。
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种功能块的调度方法,其特征在于,包括以下步骤:(1)将目标设备的内存空间划分为系统空间和用户空间;并将用户空间划分为多个功能块空间;(2)分别设置系统空间、用户空间、各功能块空间的被访问权限,其中,系统空间仅系统程序有被访问权限;用户空间中各个功能块只能访问功能块所在的空间;(3)按照任务优先级构建任务队列;(4)控制任务队列中各个任务依次执行,在目标设备获取到任务对应的第一程序访问系统空间或者用户空间时,判断第一程序是否越权;若第一程序发生越权时,表征第一程序对应的任务为异常任务,目标设备将进入异常中断,并执行中断处理程序;其中,在异常中断处理程序中,从任务队列中剔除异常任务,并设置程序执行PC指针,使系统正常运行。2.根据权利要求1所述的一种功能块的调度方法,其特征在于,所述系统空间包括:代码段、数据段、栈段、共享数据段;所述功能块空间包括代码段、数据段、栈段、堆段。3.根据权利要求1所述的一种功能块的调度方法,其特征在于,所述步骤(2)之后,还包括:将系统空间、用户空间、各功能块空间的被访问权限相应权限管理数据存储在目标设备中的存储器管理单元内。4.根据权利要求1所述的一种功能块的调度方法,其特征在于,按照任务优先级构建任务队列,之后还包括:利用解析功能块可执行程序文件对各个任务进行解析,得到各任务对应的待访问空间,根据系统空间、用户空间、各功能块空间的接口内存地址,及各任务对应的待访问空间,确定各待访问空间的目标接口内存地址;将各待访问空间的目标接口内存地址按照任务队列中各个任务的先后顺序构建任务接口队列。5.根据权利...

【专利技术属性】
技术研发人员:李友军周亚东唐毅张成彬李聪聪戴欣欣巴超朱彬彬刘拯饶丹张吉沈志浩刘千令
申请(专利权)人:国电南瑞南京控制系统有限公司国网山东省电力公司电力科学研究院
类型:发明
国别省市:

相关技术
    暂无相关专利
网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1