一种全局变量监控方法、装置、设备及存储介质制造方法及图纸

技术编号:27463034 阅读:12 留言:0更新日期:2021-03-02 17:23
本发明专利技术公开了一种全局变量监控方法、装置、设备及存储介质。其中,方法包括:根据嵌入式应用程序的执行过程中的中断处理事件或任务调度事件,触发执行目标函数;通过目标函数将变量监控任务列表中满足变量触发条件的变量监控任务加入至已触发任务列表,变量监控任务列表中包括至少一个变量监控任务,变量监控任务包括待监控全局变量、变量触发条件以及执行函数;通过任务执行进程,依次执行已触发任务列表中的各变量监控任务中的执行函数。本发明专利技术实施例可以为使用了嵌入式操作系统的应用系统提供了一套以软件方式实现全局变量监控的机制,监控的全局变量数量不受硬件资源的限制,一些对变量值敏感的嵌入式应用提供了方便。便。便。

【技术实现步骤摘要】
一种全局变量监控方法、装置、设备及存储介质


[0001]本专利技术实施例涉及嵌入式领域,尤其涉及一种全局变量监控方法、装置、设备及存储介质。

技术介绍

[0002]嵌入式操作系统一般采用交叉调试的方式进行调试。在调试过程中,嵌入式操作系统的全局变量监控依赖于主机端调试器以及目标机数据观察点的机制来实现。数据观察点是当被调试的嵌入式应用程序的地址空间的指定部分被访问或者修改时呈现给调试者的通知。开发人员可以使用数据观察点来对嵌入式应用程序中的指定全局变量进行监控。
[0003]目标机的数据观察点依赖于目标机的体系结构,依赖于目标机提供的硬件设施,并且目标机可提供的数据观察点的数量有限。当需要监控多个变量时,将不能够满足需求。有的目标机的体系结构甚至不支持数据观察点。

技术实现思路

[0004]本专利技术提供一种全局变量监控方法、装置、设备及存储介质,以实现采用软件的方式来进行全局变量监控。
[0005]第一方面,本专利技术实施例提供了一种全局变量监控方法,包括:
[0006]根据嵌入式应用程序的执行过程中的中断处理事件或任务调度事件,触发执行目标函数;
[0007]通过目标函数将变量监控任务列表中满足变量触发条件的变量监控任务加入至已触发任务列表,变量监控任务列表中包括至少一个变量监控任务,变量监控任务包括待监控全局变量、变量触发条件以及执行函数;
[0008]通过任务执行进程,依次执行已触发任务列表中的各变量监控任务中的执行函数。
[0009]第二方面,本专利技术实施例还提供了一种全局变量监控装置,包括:
[0010]目标函数触发模块,用于根据嵌入式应用程序的执行过程中的中断处理事件或任务调度事件,触发执行目标函数;
[0011]任务触发模块,用于通过目标函数将变量监控任务列表中满足变量触发条件的变量监控任务加入至已触发任务列表,变量监控任务列表中包括至少一个变量监控任务,变量监控任务包括待监控全局变量、变量触发条件以及执行函数;
[0012]任务执行模块,用于通过任务执行进程,依次执行已触发任务列表中的各变量监控任务中的执行函数。
[0013]第三方面,本专利技术实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如本专利技术实施例所述的全局变量监控方法。
[0014]第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机
程序,该计算机程序被处理器执行时实现如本专利技术实施例所述的全局变量监控方法。
[0015]本专利技术实施例的技术方案,通过根据嵌入式应用程序的执行过程中的中断处理事件或任务调度事件,触发执行目标函数,通过目标函数将变量监控任务列表中满足变量触发条件的变量监控任务加入至已触发任务列表,变量监控任务列表中包括至少一个变量监控任务,变量监控任务包括待监控全局变量、变量触发条件以及执行函数,从而通过任务执行进程,依次执行已触发任务列表中的各变量监控任务中的执行函数,可以为使用了嵌入式操作系统的应用系统提供了一套以软件方式实现全局变量监控的机制,实现采用软件的方式来进行全局变量监控,监控的全局变量数量不受硬件资源的限制,可以满足针对多个全局变量的监控需求,对于一些对变量值敏感的嵌入式应用提供了方便。
附图说明
[0016]图1为本专利技术实施例一提供的一种全局变量监控方法的流程图;
[0017]图2a为本专利技术实施例二提供的一种全局变量监控方法的流程图;
[0018]图2b为本专利技术实施例二提供的一种利用中断处理事件和任务调度事件进行全局变量监控的关键流程的示意图;
[0019]图3为本专利技术实施例三提供的一种全局变量监控方法的流程图;
[0020]图4为本专利技术实施例四提供的一种全局变量监控装置的结构示意图;
[0021]图5为本专利技术实施例五提供的一种计算机设备的结构示意图。
具体实施方式
[0022]下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。
[0023]另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
[0024]实施例一
[0025]图1为本专利技术实施例一提供的一种全局变量监控方法的流程图。本实施例可适用于在嵌入式应用程序的执行过程中,对全局变量进行监控的情况,该方法可以由本专利技术实施例提供的全局变量监控装置来执行,该装置可采用软件和/或硬件的方式实现,并一般可集成在安装于计算机设备中。
[0026]如图1所示,本实施例的方法具体包括:
[0027]步骤101、根据嵌入式应用程序的执行过程中的中断处理事件或任务调度事件,触发执行目标函数。
[0028]其中,在嵌入式操作系统中,运行体一般为任务和中断。嵌入式应用程序的执行环境一般不是在任务中就是在中断处理程序中。嵌入式操作系统通过内核调度接口进行多个任务之间的调度。操作系统一般采用时间片和优先级两种调度方式进行多个任务之间的调
度。
[0029]可选的,在根据嵌入式应用程序的执行过程中的中断处理事件或任务调度事件,触发执行目标函数之前,可以还包括:创建至少一个变量监控任务,变量监控任务包括待监控全局变量、变量触发条件以及执行函数;将至少一个变量监控任务加入至变量监控任务列表。
[0030]通过对需要监控的全局变量进行抽象,形成对应的变量监控任务。变量监控任务是根据待监控全局变量形成的触发器。触发器是一种数据结构,该结构包含需要监控的变量(待监控全局变量)、变量触发的条件(变量触发条件)以及当变量的值达到变量触发的条件后的需要执行的函数(执行函数)。触发器中的函数的执行不是由程序调用,也不是手工启动,而是由变量的值达到变量触发的条件的事件来触发。变量监控任务包含待监控全局变量、变量触发条件以及执行函数。变量监控任务中的执行函数的执行是由待监控全局变量满足变量触发条件的事件来触发。可选的,创建至少一个变量监控任务,用户输入各变量监控任务中的待监控全局变量、变量触发条件以及执行函数。
[0031]待监控全局变量是需要监控的全局变量。变量触发条件是待监控全局变量触发的条件。例如,待监控全局变量的值等于XX。执行函数是当待监控全局变量的值达到条件后的需要执行的函数。通过对需要监控的各全局变量进行抽象,形成对应的变量监控任务。将各变量监控任务通过链表的方式连接起来,得到变量监控任务列表,形成了对多个全局变量的监控。
...

【技术保护点】

【技术特征摘要】
1.一种全局变量监控方法,其特征在于,包括:根据嵌入式应用程序的执行过程中的中断处理事件或任务调度事件,触发执行目标函数;通过所述目标函数将变量监控任务列表中满足变量触发条件的变量监控任务加入至已触发任务列表,所述变量监控任务列表中包括至少一个变量监控任务,所述变量监控任务包括待监控全局变量、变量触发条件以及执行函数;通过任务执行进程,依次执行所述已触发任务列表中的各变量监控任务中的执行函数。2.根据权利要求1所述的方法,其特征在于,在根据嵌入式应用程序的执行过程中的中断处理事件或任务调度事件,触发执行目标函数之前,还包括:创建至少一个变量监控任务,所述变量监控任务包括待监控全局变量、变量触发条件以及执行函数;将所述至少一个变量监控任务加入至变量监控任务列表。3.根据权利要求1所述的方法,其特征在于,在根据嵌入式应用程序的执行过程中的中断处理事件或任务调度事件,触发执行目标函数之前,还包括:在操作系统的中断处理入口函数以及内核调度接口中添加目标函数。4.根据权利要求1所述的方法,其特征在于,通过所述目标函数将所述变量监控任务列表中满足变量触发条件的变量监控任务加入至已触发任务列表,包括:通过所述目标函数判断变量监控功能是否开启;通过所述目标函数在确定所述变量监控功能开启时,依次判断所述变量监控任务列表中的各变量监控任务中的待监控全局变量的值是否满足对应的变量触发条件,并将满足变量触发条件的待监控全局变量所对应的变量监控任务加入至已触发任务列表。5.根据权利要求4所述的方法,其特征在于,通过所述目标函数在确定所述变量监控功能开启时,依次判断所述变量监控任务列表中的各变量监控任务中的待监控全局变量的值是否满足对应的变量触发条件,并将满足变量触发条件的待监控全局变量所对应的变量监控任务加入至已触发任务列表,包括:依次获取所述变量监控...

【专利技术属性】
技术研发人员:李昱江
申请(专利权)人:北京科银京成技术有限公司
类型:发明
国别省市:

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

1