当前位置: 首页 > 专利查询>暨南大学专利>正文

WSN程序中事件过程实例的识别方法、介质和设备技术

技术编号:23161556 阅读:30 留言:0更新日期:2020-01-21 21:57
本发明专利技术公开了一种WSN程序中事件过程实例(简称实例)的识别方法、介质和设备,针对于中断事件和非中断事件的实例,首先定义实例中的关键执行点并且设置数据结构,在WSN程序运行过程中执行每条指令时,可以根据该指令所属的关键执行点更新实例信息,从而实时的获取到当前所执行指令对应的实例信息,判定出当前指令所属实例,具有更强的实时性。本发明专利技术在实例识别过程中,只需要使用几个恰当的关键执行点,不需要作额外的系统操作假设,因此能够有效提高通用性。另外,本发明专利技术实现实例识别,只需要几个数据结构动态存储少量的执行点信息并且实时的跟踪实例的切换即可,不需要利用列表存储和搜索大量信息,因此本发明专利技术方法能够明显降低时空开销。

Identification method, medium and device of event process instance in WSN program

【技术实现步骤摘要】
WSN程序中事件过程实例的识别方法、介质和设备
本专利技术涉及软件测试
,特别涉及一种WSN程序中事件过程实例(简称实例)的识别方法、介质和设备。
技术介绍
物联网是信息
的一次重大变革,无线传感器网络(WirelessSensorNetwork),简称WSN,是物联网中感知事物、传输数据的重要手段。部署在被监测区域内的大量传感器形成一个WSN,这些传感器节点通过无线通信组成一个多跳的自组织网络。这些节点协同地感知、收集和处理被监测的对象或环境信息,并通过WSN发送给监测者。WSN作为物联网(IoT)生态系统的重要组成部分,越来越多地应用于各种应用领域。它能帮助人类增强感知、改善健康、保护环境等。例如,哈佛大学的MattWelsh教授领导开发了一个WSN系统,对厄瓜多尔的活火山进行了持续19天的观测:该系统采用Mica2传感器节点以100Hz的频率采集地震和声音数据,次声麦克风节点将所采集的数据发送给基站,而基站将数据实时地传送到离火山十多公里远的监测中心;监测中心还能远程控制各网络节点;该系统以低耗费和灵活安全的方式获取了本文档来自技高网...

【技术保护点】
1.一种WSN程序中事件过程实例的识别方法,其特征在于,步骤如下:/n针对于WSN程序中为中断事件的事件过程实例,定义以下关键执行点:IHEntry点、IHExit点、RunTaskEntry点、RunTaskExit点和PostOk点;其中IHEntry点表示的是中断处理的入口,IHExit点表示的是中断处理的出口,RunTaskEntry点表示的是函数taskName$runTask()的入口,RunTaskExit点表示的是函数taskName$runTask()的出口,PostOk点表示的是系统postTask函数的函数体中表明系统的任务提交操作成功的执行点;/n定义如下数据结构:IN...

【技术特征摘要】
1.一种WSN程序中事件过程实例的识别方法,其特征在于,步骤如下:
针对于WSN程序中为中断事件的事件过程实例,定义以下关键执行点:IHEntry点、IHExit点、RunTaskEntry点、RunTaskExit点和PostOk点;其中IHEntry点表示的是中断处理的入口,IHExit点表示的是中断处理的出口,RunTaskEntry点表示的是函数taskName$runTask()的入口,RunTaskExit点表示的是函数taskName$runTask()的出口,PostOk点表示的是系统postTask函数的函数体中表明系统的任务提交操作成功的执行点;
定义如下数据结构:INST、instAfterExit、pInst_S栈和okInst_Q队列;
INST,用于存储一个实例的信息;
instAfterExit,针对于程序执行时从一个IHExit点或RunTaskExit点转换到该点的直接后继点的实例的情况,通过instAfterExit表示后续点的实例的信息;
pInst_S栈,用于跟踪每个被中断抢占的实例的信息;
okInst_Q队列,用于跟踪每个被成功提交的任务的实例信息;
针对于中断事件的事件过程实例,在WSN程序运行过程中进行以下事件过程实例的识别:
在WSN程序开始运行时,将WSN程序中执行的当前指令i的实例信息CurInst进行初始化;WSN程序开始运行时,检测执行的当前指令i是否为上述关键执行点;
若执行的当前指令i是IHEntry点,则采用当前实例编号和中断号创建一个INST值,通过该INST值来更新实例信息CurInst,同时将上述更新后的实例信息CurInst推入到pInst_S栈;
若执行的当前指令i是IHExit点,则从pInst_S栈中弹出栈顶的INST值,通过弹出的该INST值来更新instAfterExit,并且采用上述更新后的instAfterExit更新实例信息CurInst;
若执行的当前指令i是RunTaskEntry点,则从okInst_Q队列中移出队首元素,通过该元素来更新实例信息CurInst;
若执行的当前指令i是RunTaskExit点,则将instAfterExit设置为非中断实例对应的INST值,并且采用该instAfterExit更新实例信息CurInst;
若执行的当前指令i是PostOk点,则将当前实例信息CurInst放入okInst_Q队列中;
根据WSN程序中当前指令i执行时获取到的实例信息识别出该指令所属实例。


2.一种WSN程序中事件过程实例的识别方法,其特征在于,步骤如下:
针对于WSN程序中为非中断事件的事件过程实例,定义以下关键执行点类型:IHEntry点、IHExit点、EHEntry点、EHExit点、RunTaskEntry点、RunTaskExit点和PostOk点;其中IHEntry点表示的是中断处理的入口,IHExit点表示的是中断处理的出口,EHEntry点表示的是非中断事件的事件函数入口,EHExit点表示的是非中断事件的事件函数出口;
RunTaskEntry点表示的是函数taskName$runTask()的入口,RunTaskExit点表示的是函数taskName$runTask()的出口,PostOk点表示的是系统postTask函数的函数体中表明系统的任务提交操作成功的执行点;
定义如下数据结构:INST、instAfterExit、pInst_S栈和okInst_Q队列,其中:
INST,用于存储一个实例的信息;
instAfterExit,针对于程序执行时从一个IHExit点或RunTaskExit点转换到该点的直接后继点的实例的情况,通过instAfterExit表示后续点的实例的信息;
pInst_S栈,用于跟踪每个被中断抢占的实例的信息;
okInst_Q队列,用于跟踪“每个被成功提交的任务”的实例信息;
针对于非中断事件的事件过程实例,在WSN程序运行时进行以下事件过程实例的识别:
在WSN程序开始运行时,将WSN程序中执行的当前指令i的实例信息CurIn...

【专利技术属性】
技术研发人员:孙玉霞任羽
申请(专利权)人:暨南大学
类型:发明
国别省市:广东;44

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

1