[发明专利]一种基于多异构执行体控制器的多变体用户程序编译方法有效
申请号: | 202110049701.4 | 申请日: | 2021-01-14 |
公开(公告)号: | CN112363710B | 公开(公告)日: | 2021-03-30 |
发明(设计)人: | 林会肖;林嵩松;吴立其;杨汶佼;李绍勇 | 申请(专利权)人: | 之江实验室 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/41 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 邱启旺 |
地址: | 310023 浙江省杭州市余*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 多异构 执行 控制器 多变 体用 程序 编译 方法 | ||
1.一种基于多异构执行体控制器的多变体用户程序编译方法,其特征在于,包括以下步骤:
(1)将用户程序语句转为C语言代码,具体为:
(1.1)用户程序中的控制逻辑转为多套不同的C语言代码;
(1.2)每套C语言代码随机插入混淆代码、包括异常检查和异常处理的代码;
(1.3)每套C语言代码与其目标异构执行体的业务内存地址约定一致,且各异构执行体之间针对同一业务功能的业务内存地址不同;
(2)针对各异构执行体,将C语言代码分别交叉编译成相应架构的目标程序,具体为:各异构执行体的内核版本不同,每套C语言代码根据其目标异构执行体的内核版本,通过指定内核版本的编译器或者相应的编译参数,实现交叉编译多套内核架构的目标程序;
(3)将目标程序链接成多个可执行文件,具体为:将步骤(2)生成的目标程序链接生成可执行文件;其中,每个可执行文件链接时指定的运行地址与其目标异构执行体的运行地址约定一致,且各异构执行体之间的运行地址不同。
2.如权利要求1所述基于多异构执行体控制器的多变体用户程序编译方法,其特征在于,每个异构执行体的业务内存地址支持通过其它约定文件动态变更。
3.如权利要求2所述基于多异构执行体控制器的多变体用户程序编译方法,其特征在于,所述其它约定文件包括配置表。
4.如权利要求1所述基于多异构执行体控制器的多变体用户程序编译方法,其特征在于,所述可执行文件链接时指定的运行地址包括代码段和数据段的起始地址。
5.如权利要求1所述基于多异构执行体控制器的多变体用户程序编译方法,其特征在于,所述用户程序为装载到工业控制器后运行的业务控制程序,对应各个工业场景的工艺流程。
6.如权利要求1所述基于多异构执行体控制器的多变体用户程序编译方法,其特征在于,所述多异构执行体控制器为拟态工业控制器。
7.如权利要求1所述基于多异构执行体控制器的多变体用户程序编译方法,其特征在于,所述混淆代码包括无效的临时变量定义以及相关运算、正常变量值的加减异或、无法满足的条件分支下的复杂逻辑运算和赋值。
8.如权利要求1所述基于多异构执行体控制器的多变体用户程序编译方法,其特征在于,所述包括异常检查和异常处理的代码包括判断预留陷阱对应的内存变化时,进入指定的异常处理,从而记录异常事件或者触发报警。
9.如权利要求8所述基于多异构执行体控制器的多变体用户程序编译方法,其特征在于,所述预留陷阱包括业务无关的堆变量和栈变量。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于之江实验室,未经之江实验室许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110049701.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种无人机用高性能温度传感器
- 下一篇:课程标签生成方法、装置、设备及介质