[发明专利]一种优化嵌入式系统诊断打印的方法有效

专利信息
申请号: 201910236045.1 申请日: 2019-03-26
公开(公告)号: CN109960590B 公开(公告)日: 2021-05-18
发明(设计)人: 曾令辉 申请(专利权)人: 北京简约纳电子有限公司
主分类号: G06F9/50 分类号: G06F9/50;G06F3/12
代理公司: 南京正联知识产权代理有限公司 32243 代理人: 郭俊玲
地址: 100086 北京市海淀区知春*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 优化 嵌入式 系统 诊断 打印 方法
【权利要求书】:

1.一种优化嵌入式系统诊断打印的方法,其特征在于,包括以下步骤:

步骤一:定义诊断函数宏A和函数原型B,

设置诊断函数宏A(程序模块ID,过滤类型,格式化字符串);

函数原型B(格式化字符串哈希值,参数内存尺寸,程序模块ID,过滤类型,格式化字符串);

步骤二:定义诊断函数宏A 与函数原型B的引用关系,

#define A(程序模块ID,过滤类型,格式化字符串) ,

函数原型B(0,0,程序模块ID,过滤类型,格式化字符串,##__VA_ARGS__),

函数原型B中的参数若在诊断函数宏A中不存在,则使用缺省定义,包括如下:

1)格式化字符串哈希值:在诊断函数宏A中不存在,缺省使用特征值0,0值表征为启用打印优化功能;

2)参数内存尺寸:在诊断函数宏A中不存在,缺省使用特征值0,0值表征参数内存的大小为0,即,打印函数不存在变参列表;

步骤三:使能编译器在汇编C代码之前生成*.i 文件,读入C文件中的引用文件并进行宏扩展,生成一个高级语言汇编前的临时文件,其次在编译规则里插入代码字符处理脚本,功能为提取函数原型B调用代码串S,根据应用程序传入的“格式化字符串哈希值”规则,若为0,则对“格式化字符串”参数串进行哈希转换为整形值n,并根据格式符‘%’计算参数内存大小为整形m,单位为字,然后修改S中的“格式化字符串哈希值”参数0为n,“参数内存尺寸”参数0为m,得到一个新的代码串S’,最后替换C文件中的函数原型B的调用代码串S为S’,同时每个编译单位文件都要生成一个诊断数据库文件, 编译单位文件的每个item为格式化字符串哈希值与“格式化字符串”参数的一一映射;

步骤四:编译规则对步骤三步骤中的每个编译单位文件重复执行步骤三的任务,直到整个编译项目的所有编译单位都完成了步骤三的任务;

步骤五:函数原型B运行时,获取“格式化字符串哈希值”参数,根据“参数内存尺寸”参数获取参数内存大小m,通过标准C的va_start获取变参列表,并通过标准C的va_arg宏和m快速获取参数内存,接着把参数内存和格式化字符串哈希值按诊断帧格式组织成一个二进制负载;

步骤六:诊断IO任务把流缓存发送到嵌入式系统外设接口;

步骤七:上位机软件接收IO收到的数据流,识别出每个诊断负载的边界,并分拣出一个个完整的诊断负载包,按照诊断帧格式结构化提取出诊断负载的格式化字符串哈希值和参数二进制内存,接着从诊断数据库里寻找该格式化字符串哈希值对应的参数格式化字符串,调用格式化函数对参数二进制内存进行格式化,进而得到诊断打印的格式化串,最后把格式化串输出到终端显示器上。

2.根据权利要求1所述的优化嵌入式系统诊断打印的方法,其特征在于,所述步骤一中,

程序模块ID:整形,指示这个诊断信息的所有者;

过滤类型:整形,用比特域指示该模块的诊断信息分类,用于过滤诊断信息;

格式化字符串:以‘%’来表示格式符,格式符类型同C99中C语言库函数printf的格式化符,并简化了支持的格式符类型,当前为提高打印效率,只支持32bit整形,单精度浮点数,双精度浮点数的格式化。

3.根据权利要求1所述的优化嵌入式系统诊断打印的方法,其特征在于,所述步骤一中,

函数原型B(格式化字符串哈希值,参数内存尺寸,程序模块ID,过滤类型,格式化字符串),

其中,格式化字符串哈希值:把“格式化字符串”转化成一个32bit的整形格式化字符串哈希值;

参数内存尺寸: 指示变参的参数内存大小,计量单位为字。

4.根据权利要求1所述的优化嵌入式系统诊断打印的方法,其特征在于,所述步骤二中,格式化字符串哈希值为:

0:指示编译脚本需要对“格式化字符串”进行格式化字符串哈希值计算,转换后的格式化字符串哈希值重新赋值给“格式化字符串哈希值”参数;

0xFFFFFFFF: 指示编译脚本不需要对“格式化字符串”进行格式化字符串哈希值计算;

编译脚本进行字符串转换时负责对0,0xFFFFFFFF 这两特殊值的散列冲突。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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