南京大学许蕾获国家专利权
买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
龙图腾网获悉南京大学申请的专利基于发生序关系规则的Node.js应用程序数据竞争检测方法获国家发明授权专利权,本发明授权专利权由国家知识产权局授予,授权公告号为:CN115904998B 。
龙图腾网通过国家知识产权局官网在2026-05-01发布的发明授权授权公告中获悉:该发明授权的专利申请号/专利号为:202211587201.7,技术领域涉及:G06F11/362;该发明授权基于发生序关系规则的Node.js应用程序数据竞争检测方法是由许蕾;周敬尧设计研发完成,并于2022-12-09向国家知识产权局提交的专利申请。
本基于发生序关系规则的Node.js应用程序数据竞争检测方法在说明书摘要公布了:本发明是一种基于发生序关系规则的Node.js应用程序数据竞争检测方法,属于计算机软件技术领域,能够解决当前难以检测Node.js应用中数据竞争的问题。本发明提出了针对Node.js应用的发生序关系Happens‑Before关系,简称HB关系规则,将其分为用于不同步骤的三类,并提出了HB关系匹配规则和资源特性匹配规则;首先,本发明利用动态程序分析对被测应用程序进行插桩并收集分析运行数据,提取资源访问情况及事件处理函数间的异步调用HB关系,构建异步调用树;其次,本发明在异步调用树上应用树可达性检测算法检测候选数据竞争;再次,本发明利用HB关系匹配规则和资源特性匹配规则判断候选数据竞争是否为误报;最后,本发明在被测应用退出后输出数据竞争检测报告。
本发明授权基于发生序关系规则的Node.js应用程序数据竞争检测方法在权利要求书中公布了:1.基于发生序关系规则的Node.js应用程序数据竞争检测方法,包括以下五个步骤: 1根据Node.js事件循环特性提出针对性的HB关系规则,对HB关系规则分类讨论; 2执行被测应用程序并收集运行数据,根据运行数据提取事件处理函数异步调用关系,并依据异步调用HB关系构建异步调用树; 3根据运行数据提取资源访问情况,将之与异步调用树结点进行对应关联; 4根据异步调用树及资源访问情况,利用树可达性检测算法在异步调用树上推断候选数据竞争; 5根据事件优先级HB关系规则和事件注册次序HB关系规则提出HB关系匹配规则;基于Node.js文件权限与内容的二元特性、对象与变量的懒加载模式以及ArrayBuffer的底层共享机制,提出资源特性匹配规则;利用HB关系匹配规则和资源特性匹配规则,判断候选数据竞争是否为误报,依据事件优先级HB关系提出了2条HB关系匹配规则,根据事件注册次序HB关系提出了2条HB关系匹配规则,依据Node.js资源的特点提出了4条资源匹配规则,具体规则如下: HB关系匹配规则: 1给定候选数据竞争RCR,op1,op2且op1∈e1.handler、op2∈e2.handler,e1的类型为TickObject,e2的类型不为TickObject,回溯e1.handler的父结点直到e3.handler满足e3的类型不为TickObject,检查e1.handler与e3.handler之间是否存在HB关系,如果存在,那么判定该候选数据竞争为误报; 2给定候选数据竞争RCR,e1.handler,e2.handler,且e1的类型为Promise,e2的类型不为Promise,回溯e1.handler的父结点直到e3.handler满足e3的类型不为Promise,检查e1.handler与e3.handler之间是否存在HB关系,如果存在,那么判定该候选数据竞争为误报; 3给定候选数据竞争RCR,op1,op2且op1∈e1.handler、op2∈e2.handler,e1、e2均为Timeout类型且均在同一个事件处理函数中被注册,如果e1比e2更早被注册,且e1被注册时设定的延迟时间不大于e2,那么判定该候选数据竞争为误报; 4给定候选数据竞争RCR,op1,op2且op1∈e1.handler、op2∈e2.handler,e1、e2均不为Timeout类型且均在同一个事件处理函数中被注册,如果e1比e2更早被注册,那么判定该候选数据竞争为误报; 资源特性匹配规则: 1给定候选数据竞争RCR,op1,op2,R的类型为文件,op1∈e1.handler,op2∈e2.handler,因为文件存在权限与内容两个部分,因此有1op1与op2均访问了文件内容;2op1或op2访问了文件权限,且访问类型为写,如果候选数据竞争同时不满足1和2,那么判定该候选数据竞争为误报; 2给定候选数据竞争RCR,op1,op2,R的类型为对象Object,op1∈e1.handler,op2∈e2.handler,如果op1或op2的操作为构造R,那么判定该候选数据竞争为误报; 3给定候选数据竞争RCR,op1,op2,R的类型为变量,op1∈e1.handler,op2∈e2.handler,如果op1或op2的操作为初始化R,那么判定该候选数据竞争为误报; 4给定候选数据竞争RCR,op1,op2,R的类型为ArrayBuffer,如果op1与op2中访问的下标范围不重合,那么判定该候选数据竞争为误报; 5依据HB关系匹配规则与资源匹配规则,通过提取候选数据竞争信息与上述匹配规则相匹配,以判断候选数据竞争是否为误报。
如需购买、转让、实施、许可或投资类似专利技术,可联系本专利的申请人或专利权人南京大学,其通讯地址为:210023 江苏省南京市仙林大道163号;或者联系龙图腾网官方客服,联系龙图腾网可拨打电话0551-65771310或微信搜索“龙图腾网”。
以上内容由龙图腾AI智能生成。
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。

皖公网安备 34010402703815号
请提出您的宝贵建议,有机会获取IP积分或其他奖励