The invention provides a multi-task breakpoint debugging method based on an improved task scheduling mechanism, including steps: a) according to the coordination management requirements of multi-operation tasks, a first-level task control block is defined, one or more first-level task control blocks form a first-level task control queue; b) according to the operation requirements of a single operation task and the storage requirements of breakpoint information, a second-level task control block is defined; Level 1 task management mechanism between multi-operation tasks; d) According to the category of breakpoint debugging function, corresponding instruction preprocessing mechanism is established for each type of debugging instructions to realize the transformation from debugging instructions to structured task control descriptions and add them to Level 2 task control blocks; e) Define multiple operation states of operation tasks, and realize the transformation between different operation states of operation tasks. The invention maximizes the execution of high priority computing tasks and the full utilization of processor resources, and realizes the breakpoint debugging function of control logic.
【技术实现步骤摘要】
基于改进任务调度机制的多任务断点调试方法
本专利技术属于工业自动化控制领域,特别提供了基于改进任务调度机制的多任务断点调试方法,用于工业过程控制系统中分布式控制器的软件内核设计。
技术介绍
随着工业生产过程对自动化水平的要求不断提高,DCS/PLC控制系统在各个领域得到了广泛的应用。在工艺复杂、控制实时性和精确性要求较高的场合,分布式控制器(以下简称控制器)不仅要有常规的控制功能,而且需要支持多个周期运算任务,以满足同一系统不同对象的控制要求。应用场景的复杂度直接导致了控制器控制逻辑复杂度的增大,这给逻辑调试带来了诸多不便。常规的逻辑调试方法仅能通过逻辑的运算结果判断逻辑的正确性,而无法获取逻辑运算过程中的断面数据,因此调试效率低下,逻辑漏洞查找困难。为解决上述问题,需要在控制器中集成断点调试功能,以实现对运算任务运行的人为控制。而现有工控厂家往往并不支持该功能或支持的断点调试功能单一。对于DCS/PLC控制系统而言,断点调试,指在控制逻辑的调试过程中,为了找到控制逻辑的错误或漏洞,在控制逻辑的某最小运算单元处设置一个断点,在调试状态下,控制逻辑运算到断点处则停止执行,所有数据保持当前状态。通过设置多个断点或使用诸如逐步、逐页、逐块的虚拟断点,一步一步跟踪控制逻辑的运算过程,根据控制逻辑停止时的断面数据,定位控制逻辑的错误或漏洞。断点调试通过控制逻辑中的断点干预控制器运算任务的运行过程,其中涉及到控制器对控制逻辑的执行机制。目前控制器对于控制逻辑的处理,一般分为两类,即解释执行机制和编译执行机制。采用解释执行机制的控制器,其内核对算法逻辑边解释边执行。而采 ...
【技术保护点】
1.基于改进任务调度机制的多任务断点调试方法,其特征是,包含步骤:a)根据多运算任务间的协调管理需求,定义一级任务控制块,一个或多个一级任务控制块组成一级任务控制队列;b)根据单个运算任务的控制需求、断点信息存储需求及运算任务中断后恢复运行所需的必要信息,定义二级任务控制块;c)在满足多运算任务基本调度需求且多优先级运算任务的周期及负荷相互之间不影响、不受限的条件下,建立多运算任务间的一级任务管理机制,实现在不同时间片内,控制多个运算任务根据优先级的高低顺序依次执行,并将相关控制信息通过一级任务控制块发送到二级任务控制块;d)依据断点调试功能的类别,针对每类调试指令,建立相应的指令预处理机制,实现调试指令到结构化的任务控制描述的转化,并添加到二级任务控制块;e)定义运算任务的多个运行状态,根据二级任务控制块中的控制信息,实现运算任务不同运行态之间的转换。
【技术特征摘要】
1.基于改进任务调度机制的多任务断点调试方法,其特征是,包含步骤:a)根据多运算任务间的协调管理需求,定义一级任务控制块,一个或多个一级任务控制块组成一级任务控制队列;b)根据单个运算任务的控制需求、断点信息存储需求及运算任务中断后恢复运行所需的必要信息,定义二级任务控制块;c)在满足多运算任务基本调度需求且多优先级运算任务的周期及负荷相互之间不影响、不受限的条件下,建立多运算任务间的一级任务管理机制,实现在不同时间片内,控制多个运算任务根据优先级的高低顺序依次执行,并将相关控制信息通过一级任务控制块发送到二级任务控制块;d)依据断点调试功能的类别,针对每类调试指令,建立相应的指令预处理机制,实现调试指令到结构化的任务控制描述的转化,并添加到二级任务控制块;e)定义运算任务的多个运行状态,根据二级任务控制块中的控制信息,实现运算任务不同运行态之间的转换。2.如权利要求1所述的基于改进任务调度机制的多任务断点调试方法,其特征是:所述步骤a)中的一级任务控制块包括运算任务的运算周期、时间计数、运算权需求标记及该运算任务所对应的二级任务控制块入口;一级任务控制块按运算周期由小到大的顺序形成一级任务控制队列。3.如权利要求1所述的基于改进任务调度机制的多任务断点调试方法,其特征是:所述步骤b)中的二级任务控制块包括断点信息列表、控制信息及状态信息三部分;...
【专利技术属性】
技术研发人员:卢海松,吴波,牛洪海,徐卫峰,臧峰,
申请(专利权)人:南京南瑞继保电气有限公司,南京南瑞继保工程技术有限公司,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。