[发明专利]一种基于多级反馈队列的事件注入引擎的任务调度方法有效
申请号: | 201410216140.2 | 申请日: | 2014-05-21 |
公开(公告)号: | CN103970603B | 公开(公告)日: | 2017-05-24 |
发明(设计)人: | 王慧强;何占博;冯光升;吕宏武;郭方方;林俊宇 | 申请(专利权)人: | 哈尔滨工程大学 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 150001 黑龙江省哈尔滨市南岗区*** | 国省代码: | 黑龙江;23 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明属于计算机系统的事件注入技术领域,特别涉及一种基于多级反馈队列的事件注入引擎的任务调度方法。本发明包括扫描器根据用户指令或系统控制信号扫描目标系统,返回包括目标系统所有脆弱点类型的扫描结果;根据所有脆弱点或用户需求分析扫描结果,确定需要注入的批量型事件的类型;扫描器将需要注入的批量型事件类型信息发送到事件模型库;事件模型库接收扫描器发送来的批量型事件类型信息,并根据批量型事件的类型选取相应的事件等。本发明具有适用范围广、反馈开销小、兼容性好、事件注入引擎利用率高,更加灵活、高效、合理的实现批量型事件注入等优点。 | ||
搜索关键词: | 一种 基于 多级 反馈 队列 事件 注入 引擎 任务 调度 方法 | ||
【主权项】:
一种基于多级反馈队列的事件注入引擎的任务调度方法,其特征在于:(1)扫描器根据用户指令或系统控制信号扫描目标系统,返回包括目标系统所有脆弱点类型的扫描结果;(2)根据所有脆弱点或用户需求分析扫描结果,确定需要注入的批量型事件的类型;(3)扫描器将需要注入的批量型事件类型信息发送到事件模型库;(4)事件模型库接收扫描器发送来的批量型事件类型信息,并根据批量型事件的类型选取相应的事件;(5)事件模型库为每个事件设置一个事件控制块ECB,ECB作为每个事件在事件注入引擎的任务调度过程中存在的标志,保存事件注入器对事件进行管理和调度所需的全部信息,包括事件标识、事件参数、事件状态、事件优先级、事件注入标准时间和事件注入失败计数器;(6)当步骤(4)执行完成后,事件模型库将生成的批量型事件序列发送给排队器;(7)排队器将从事件模型库获取的批量型事件序列按照每个事件的ECB中优先级的大小排序,生成以优先级最高的事件为队首、优先级最低的事件为队尾的事件后备队列,事件后备队列长度为m;(8)排队器将事件后备队列发送到后备队列寄存器,事件注入器中的就绪调度引擎可最快找到并调度优先级最高的事件到事件就绪队列中;(9)批量型事件由就绪调度引擎调度进入事件注入器:(9.1)当事件就绪队列S1未满,队列长度小于n,且事件后备队列不为空时,就绪调度引擎首先向阻塞调度引擎发送调度信号,阻塞调度引擎接收到就绪调度引擎发送来的调度信号后检查注入失败阻塞队列是否为空;若注入失败阻塞队列为空,跳转到(9.2);若不空,即注入失败阻塞队列中存在已注入失败且等待再次调度的事件,跳转到(9.3);(9.2)就绪调度引擎在接收到阻塞调度引擎发送来的反馈信号后,按照FCFS算法从事件注入器外的事件后备队列队首取下一个事件,入队到事件就绪队列S1队尾,并将其ECB中的事件状态设置为就绪状态,直到S1队满或事件后备队列空为止,FCFS算法为先来先调度算法;(9.3)就绪调度引擎在接收到阻塞调度引擎发送来的反馈信号后优先调度注入失败阻塞队列中的事件,阻塞调度引擎根据事件ECB中的注入失败计数器判断进一步调度方式,若注入失败阻塞队列队首事件注入失败次数小于正整数j次,跳转到(9.4),若队首事件注入失败次数大于等于j次,则跳转到(9.5);(9.4)阻塞调度引擎取下该事件并调度给就绪调度引擎,就绪调度引擎将该事件入队到S1队尾,并将其ECB中的事件状态设置为就绪状态,直到S1队满或注入失败阻塞队列空为止;(9.5)阻塞调度引擎根据其ECB中的事件标识直接给事件模型库发送重新获取该事件及其ECB的信号,阻塞调度引擎从注入失败阻塞队列取下并删除该事件,直到注入失败阻塞队列空为止,就绪调度引擎对该事件重新执行(9.1)完整调度过程;(10)事件注入器内事件注入的任务调度:(10.1)多级反馈调度引擎按照FCFS算法取下事件就绪队列Si队首事件并发送到事件注入引擎;(10.2)事件注入引擎将事件ECB中的事件状态设置为注入状态,并根据事件参数对相应目标实施注入;(10.3)事件注入引擎监视注入过程,包括注入耗时和注入成功与否:若事件根据ECB在对应的时间片内成功完成注入,跳转到(10.4);若事件根据ECB中在对应的时间片内未成功完成注入,跳转到(10.5);若事件在注入过程中注入失败,不能继续注入,则跳转到(10.6);(10.4)事件注入引擎将事件ECB中事件状态设置为完成状态,将事件撤离事件注入器,恢复事件注入引擎自身现场状态,准备注入下一事件;(10.5)事件注入引擎向多级反馈调度引擎发送注入未完成信号,并将事件退还给多级反馈队列引擎,恢复自身现场状态准备注入下一事件,多级反馈队列引擎收到注入未完成信号后,接收退回的事件,从事件就绪队列Si调度下一事件给事件注入引擎,再将被退回的事件调度到事件就绪队列Si+1的队尾;(10.6)事件注入引擎无需等待时间片结束,直接将失败事件调度到注入失败阻塞队列队尾,将ECB中的事件状态设置为阻塞状态,注入失败计数器加1;当事件处在注入失败阻塞队列队首,且就绪调度引擎向阻塞调度引擎发送调度信号时,阻塞调度引擎根据事件ECB中的注入失败次数判断进一步调度方式。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工程大学,未经哈尔滨工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201410216140.2/,转载请声明来源钻瓜专利网。