[发明专利]一种跨平台的程序指令重排的验证方法在审

专利信息
申请号: 202210222209.7 申请日: 2022-03-09
公开(公告)号: CN114741117A 公开(公告)日: 2022-07-12
发明(设计)人: 束长栋;廖球 申请(专利权)人: 上交所技术有限责任公司
主分类号: G06F9/38 分类号: G06F9/38
代理公司: 上海三方专利事务所(普通合伙) 31127 代理人: 吴玮
地址: 200131 上海市浦东新*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 平台 程序 指令 重排 验证 方法
【权利要求书】:

1.一种跨平台的程序指令重排的验证方法,其特征在于将两个应用进程对同一块共享内存读写并发操作,运行时写进程在某地址写数据时,读进程在该地址上追赶到写进程进行读操作;具体方法如下:

写进程程序,主流程中执行两个步骤:

先进行Data变量赋值操作,后进行Flag变量的赋值操作;

读进程程序,主流程中执行两个步骤:

先判断Flag变量是否就绪;就绪后再进行Data变量的读操作,然后检查Data值和上一次读取值preData之差,差值不为1则表示指令重排。

2.如权利要求1所述的一种跨平台的程序指令重排的验证方法,其特征在于所述应用进程中的变量Data和Flag在内存实现中组成程序操作的最小单元,以便读写进程的使用,因此程序中使用结构体将两个变量组合成逻辑上的整体。

3.如权利要求1所述的一种跨平台的程序指令重排的验证方法,其特征在于所述共享内存是一块大小固定且连续的共享内存,形同一块连续的数组。

4.如权利要求2所述的一种跨平台的程序指令重排的验证方法,其特征在于所述的共享内存为首尾相接的环形结构。

5.如权利要求1-4任一所述的一种跨平台的程序指令重排的验证方法,其特征在于所述验证方法,具体如下:

a.写进程负责内存数据的生成,写进程使用写指针操作共享内存,从第一位置开始,将Data和Flag赋一个相同的64位的long long类型值,使用相同的数值用于读进程进行数据判断,赋值完成后,写指针后移一位,同时,下一个位置的赋值递增一;

b.读进程负责内存数据的读取,同时,通过对Flag和Data的数据检查,完成对程序运行状态的验证,判断进程运行过程中CPU操作是否发生了指令重排,读进程使用读指针操作共享内存,在读进程中设置一个变量为preData,初始化为0,该值记录每次读进程获取到的内存位置中的Data值,供读进程进行数据正确性判断。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上交所技术有限责任公司,未经上交所技术有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202210222209.7/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top