一种用于航行数据记录仪的多任务调度方法、系统及产品与流程
- 国知局
- 2024-11-21 12:27:04
本发明涉及任务调度,尤其涉及一种用于航行数据记录仪的多任务调度方法、系统及产品。
背景技术:
1、航行数据记录仪需采集全船数据信息,用于事后事故分析和取证。航行数据记录仪中的多源实时数据主要来源于六大业务系统,其数据具有混合型、离散型、大容量等特点。当前,与非国产化平台相比,国产化软硬件平台的算力显著下降。目前航行数据记录仪使用的国产化软件平台多为道系统。在面临船舶大量数据的有序采集和存储方面,在道系统上使用传统的基于最早截止期优先算法或任务优先级截止期算法的任务调度方法,已难以满足实时性的采集需求。传统的最早截止期优先算法,通过单一的参数动态确定任务优先级,缺少对任务目标动态的估算;而任务优先级截止期算法虽然引入优先级表的思想,将任务工作方式优先级和任务最晚截止相结合,但存在人为划分任务优先级而导致主观性过强的问题,不能实时根据任务运行状态进行动态调整。这两种算法存在以下问题:一是将任务重要度作为一个与任务优先级等价的固定参数,没有考虑任务重要度随时刻的动态变化;二是没有充分考虑任务调度实时性及其对任务功能的影响,尤其是对于重要度高任务的实时性。因此,为充分挖掘计算性能,需对道系统下现有任务调度方法进行优化,以适应大容量数据的需求,提高数据采集的实时性。
技术实现思路
1、本发明旨在解决在道系统下难以满足航行数据记录仪的实时性的采集需求的问题。为此,本发明提供一种用于航行数据记录仪的多任务调度方法、系统及产品,通过构建采集任务目标重要度模型,将任务目标重要度、任务优先级和任务最晚截止时间进行综合,计算出综合优先级,再将采集任务进行动态排序,将其放入任务请求队列中,基于道系统的抢占式的调度方式进行调度操作。
2、本发明提供一种用于航行数据记录仪的多任务调度方法,采用的技术方案如下:包括以下步骤:
3、步骤1:获取航行数据记录仪的采集任务;
4、步骤2:对采集任务的参数进行归一化处理,得到规范化的参数;
5、步骤3:根据规范化的参数,计算采集任务的参数的信息熵权重;
6、步骤4:根据信息熵权重计算得到综合权重;
7、步骤5:根据综合权重和规范化的参数计算采集任务的任务目标重要度;
8、步骤6:根据采集任务的任务初始优先级、任务最晚截止时间及任务目标重要度,计算得到综合优先级;
9、步骤7:按照综合优先级由高到低将采集任务排序,然后放入任务请求队列中;
10、步骤8:在道系统下,对任务请求队列,采用抢占式的调度方式进行调度操作,得到航行数据记录仪的任务执行队列。
11、进一步的,所述采集任务的参数包括航向、航速、航程、流速、吃水深度和采集目标类型。
12、进一步的,所述采集目标类型包括集成设备、实时设备、惯性设备和计程仪设备,将其重要等级依次量化为4,3,2,1;采集目标类型无需归一化处理。
13、进一步的,归一化处理的计算公式为:
14、
15、其中,表示第i个采集任务的第j个规范化的参数,表示第i个采集任务的第j个参数,,,m为采集任务的总数量,n为参数的总数量。
16、进一步的,信息熵权重的计算公式为:
17、
18、其中,表示第j个参数的信息熵权重,表示第i个采集任务的第j个参数的比例值,表示第i个采集任务的第j个规范化的参数,
19、;
20、综合权重的计算公式为:
21、
22、其中,表示第j个参数的综合权重;表示第j个参数的主观权重;
23、任务目标重要度的计算公式为:
24、
25、其中,表示第i个采集任务的任务目标重要度。
26、进一步的,综合优先级的计算公式为:
27、
28、其中,表示第i个采集任务的综合优先级,表示第i个采集任务的任务初始优先级,表示第i个采集任务的任务最晚截止时间,表示加权值。
29、进一步的,所述步骤8包括:
30、步骤8.1:从任务请求队列中取出采集任务,计算采集任务是否满足当前调度间隔的调度要求;若满足,则根据采集任务的期望执行时刻和所需执行时间长度规划其实际执行时间,将该采集任务插入到可行队列,然后执行步骤8.3;若不满足,则执行步骤8.2;
31、步骤8.2:判断采集任务的任务最晚截止时间与所需执行时间长度之和是否大于等于当前调度间隔的结束时刻;若是,则将该采集任务插入到等待队列中;若不是,则将该采集任务放入挂起队列中;
32、步骤8.3:检查任务请求队列是否为空,若不为空,则执行步骤8.1;若为空,则执行步骤8.4;
33、步骤8.4:对可行队列进行执行时刻分配,得到航行数据记录仪的任务执行队列。
34、进一步的,根据采集任务的期望执行时刻和所需执行时间长度规划其实际执行时间,然后将该采集任务插入到可行队列的过程为:
35、根据期望执行时刻和所需执行时间长度计算得到实际执行时间;
36、判断实际执行时间是否被更高综合优先级的其他采集任务所占用;
37、若不是,则将该采集任务插入到可行队列;
38、若是,则对该采集任务的实际执行时间进行偏移,然后将该采集任务插入到可行队列。
39、本发明还提供一种用于航行数据记录仪的多任务调度系统,采用的技术方案如下:包括:采集任务目标重要度模型和道系统调度模块,所述采集任务目标重要度模型与道系统调度模块连接,
40、采集任务目标重要度模型,用于获取航行数据记录仪的采集任务;对采集任务的参数进行归一化处理,得到规范化的参数;根据规范化的参数,计算采集任务的参数的信息熵权重;根据信息熵权重计算得到综合权重;根据综合权重和规范化的参数计算采集任务的任务目标重要度;根据采集任务的任务初始优先级、任务最晚截止时间及任务目标重要度,计算得到综合优先级;按照综合优先级由高到低将采集任务排序,然后放入任务请求队列中;
41、道系统调度模块,用于在道系统下,对任务请求队列,采用抢占式的调度方式进行调度操作,得到航行数据记录仪的任务执行队列。
42、本发明还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的一种用于航行数据记录仪的多任务调度方法。
43、本发明实施例中的上述一个或多个技术方案,至少具有如下技术效果之一:
44、本发明分析了多任务调度中典型的最早截止期优先算法和任务优先级截止期算法两种算法的各自缺点,然后结合道系统的特点,构建了采集任务目标重要度模型,将任务目标重要度、任务优先级和任务最晚截止时间相结合,实时计算任务的综合优先级,然后根据实时综合优先级,进行任务调度,减少了cpu频繁的任务调度,提高了数据采集的实时性。
45、本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
本文地址:https://www.jishuxx.com/zhuanli/20241120/335333.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表