网易首页 > 网易号 > 正文 申请入驻

嵌入式开发:静态代码分析器的7种用途

0
分享至

  标准C编译器的一个问题是,它不寻找程序设计中的潜在缺陷,而只寻找其编码中的缺陷。使用静态代码分析器有助于改进固件并捕捉编译器无法想象的问题。下面是每个嵌入式开发人员都应该熟悉的静态代码分析器的七种用法。

  标准C编译器在确定程序中编写的代码是否有效以及是否可以编译成工作程序方面做得很好。但是它假设,如果它能编译代码,那么一切都是好的。这仍然给错误留下了很大的空间。当按如下方式使用时,静态代码分析器可能是一个非常有价值的工具。

  用途1——捕捉潜在的错误

  静态代码分析器最广为人知的用途之一是扫描软件中的潜在问题和缺陷。这些问题包括从在switch情况下忘记break语句到潜在的缓冲区溢出。静态代码分析器具有发现软件问题的能力,这些问题通常会被编译器和审查代码的工程师所忽略。在实现阶段的早期建立一个静态代码分析器是一个很好的实践,可以确保潜在的问题被立即处理,而不是在开发周期的后期。

  用途2——实施编码标准

  使用编码标准是确保软件以一致和可读的方式开发的好方法。编码标准不仅会指定可读性的问题,还可以用来实施最佳实践。许多静态代码分析器支持的编码标准的一个很好的例子是MISRA C。静态代码分析器可用于确保嵌入式开发人员没有违反标准的大多数建议或最佳实践(然而,一些规则需要视觉检查,并且不能自动确定合规性)。如果发生了违规,静态分析器将向开发人员报告违规情况,并采取纠正措施。使用静态分析器来执行编码标准的结果是快速确定代码是否遵循定义的标准。

  用途3——支持严格遵守ANSI-C标准

  关心编写符合ANSI-C标准的可移植软件的开发人员可以使用静态分析器来确定是否使用了任何非标准语言功能。将分析器设置为“strict”将会确定感兴趣的领域,在这些领域中,对不同编译器或平台的可移植性可能会成为一个问题。然后,开发人员可以检查这些区域并改进软件,以更好地符合ANSI-C标准,或者至少记录软件的哪些区域可能需要额外的移植工作。

  用途4——执行强类型检查

  C编程语言不支持强类型检查。在C中,如果开发人员要创建自己的类型,编译器将忽略新类型,而使用基础C类型。

  用途5——提供尺寸检查

  C编程语言无法提供任何类型的量纲分析来确保计算的一致性。然而,静态代码分析器可以执行这些检查,并确保千米不会意外地乘以英尺而产生错误的结果。量纲分析的设置因工具而异,但这是开发人员应该利用的一个重要特性。

  用途6——支持基本堆栈分析

  嵌入式开发人员了解最坏情况下的堆栈使用对于开发任何基于实时的嵌入式系统都至关重要。有许多方法可以分析和确定最坏情况下的堆栈使用情况,但是开始了解堆栈使用情况的一种方法是使用静态代码分析器。静态分析器可以计算一个函数的堆栈使用和调用图,以提供关于堆栈需要多深的基本感觉。静态分析器工具还可以提供对程序函数如何使用以及它们是否被认为是确定性的洞察。使用静态分析器来了解堆栈使用情况和最坏情况函数是理解最坏情况堆栈分析的良好开端。

  用途7——辅助线程检查

  静态分析工具也可用于识别处理器上同时运行的线程和任务的问题。例如,一个分析工具可以识别是否有任何与锁定或解锁互斥体相关的异常。线程检查对于识别实时系统中的问题是非常有用的工具,但是这种分析的设置通常并不简单。尽管如此,设置工作对于发现难以捉摸或异常的线程事件还是很有价值的。

  结论

  对于希望开发实时系统的嵌入式开发人员来说,静态分析是一个无价的工具。静态分析器的这七种用途只是许多可用分析工具中强大特性的几个例子。使用静态代码分析器可以极大地提高代码库的质量和健壮性,如果设置得当,甚至可以确保与众所周知的或定制的编码标准的一致性和一致性。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
朝鲜公开毛岸英牺牲真相:内容简短却很炸裂,真正凶手不是美国人

朝鲜公开毛岸英牺牲真相:内容简短却很炸裂,真正凶手不是美国人

南书房
2024-07-29 18:53:04
东北雨姐转移到山西,山西网友:能不能让她别来山西

东北雨姐转移到山西,山西网友:能不能让她别来山西

微光年
2024-11-01 07:01:04
揭秘女性性生活欲望强烈的四大原因

揭秘女性性生活欲望强烈的四大原因

智见派
2024-07-06 16:33:34
当年那个没腿的“篮球女孩”,如今28岁了,貌美如花,当了公务员

当年那个没腿的“篮球女孩”,如今28岁了,貌美如花,当了公务员

毒舌混知所
2024-10-31 06:10:03
我没见过哪个真正的贫困生会舍得穿3000元的鞋子……

我没见过哪个真正的贫困生会舍得穿3000元的鞋子……

新浪财经
2024-10-31 18:02:11
男人的花期真的很短吗?网友:看完伟哥的销量,突然明白了什么!

男人的花期真的很短吗?网友:看完伟哥的销量,突然明白了什么!

奇特短尾矮袋鼠
2024-10-31 11:33:15
吴秀波,热搜!

吴秀波,热搜!

21世纪经济报道
2024-11-01 09:08:02
妻子告诉丈夫夜班回家敲5下门,这天丈夫没有敲门,打开门愣住了

妻子告诉丈夫夜班回家敲5下门,这天丈夫没有敲门,打开门愣住了

青青会讲故事
2024-10-31 16:58:09
泉州保安砍杀业主后续:业主多次辱骂投诉保安 被扣几千元还开除了

泉州保安砍杀业主后续:业主多次辱骂投诉保安 被扣几千元还开除了

鋭娱之乐
2024-10-31 11:19:04
友人曝顾国宁病逝细节:本月才查出肺癌晚期,喜欢抽烟喝酒!

友人曝顾国宁病逝细节:本月才查出肺癌晚期,喜欢抽烟喝酒!

古希腊掌管松饼的神
2024-10-29 17:22:59
何炅与杨钰莹惊喜现身街头,他们手牵手漫步,画面温馨又动人

何炅与杨钰莹惊喜现身街头,他们手牵手漫步,画面温馨又动人

娱乐的小灶
2024-10-31 16:15:10
云南一男子垂涎嫂子美貌,冒充哥哥和嫂子同居,与嫂子连生2娃

云南一男子垂涎嫂子美貌,冒充哥哥和嫂子同居,与嫂子连生2娃

一个人讲故事
2024-09-06 22:38:38
同曦男篮爆发内讧,西热力江遭老板背刺,深夜怒宣辞职离队!

同曦男篮爆发内讧,西热力江遭老板背刺,深夜怒宣辞职离队!

中国篮坛快讯
2024-11-01 07:15:01
坎耶29岁娇妻近乎赤身亮相派对,在东京仍放飞,被喊名字很得意

坎耶29岁娇妻近乎赤身亮相派对,在东京仍放飞,被喊名字很得意

译言
2024-11-01 07:36:20
想着“来都来了”!退票后拿着已经撕毁的票尝试入场,结果演唱会没看成,钱也退不了...

想着“来都来了”!退票后拿着已经撕毁的票尝试入场,结果演唱会没看成,钱也退不了...

灰产圈
2024-10-31 00:10:12
“虎背熊腰”成过去式!37岁刘亦菲瘦成纸片人,穿瑜伽服大秀身材

“虎背熊腰”成过去式!37岁刘亦菲瘦成纸片人,穿瑜伽服大秀身材

八卦南风
2024-10-30 10:38:06
全国羽毛球团体锦标赛比赛中,石宇奇身体不适被送往医院接受治疗

全国羽毛球团体锦标赛比赛中,石宇奇身体不适被送往医院接受治疗

直播吧
2024-11-01 00:36:12
美国震惊了,德国也震惊了!就连欧盟也万万没想到

美国震惊了,德国也震惊了!就连欧盟也万万没想到

星辰故事屋
2024-10-31 18:55:38
比特币“大户”MicroStrategy大胆宣布:未来三年将加码420亿美元!

比特币“大户”MicroStrategy大胆宣布:未来三年将加码420亿美元!

财联社
2024-10-31 11:42:09
济南奥体西路北延建设推进 新建双向道路露新貌

济南奥体西路北延建设推进 新建双向道路露新貌

爱济南新闻客户端
2024-10-31 13:38:30
2024-11-01 09:30:44
粤嵌教育培训
粤嵌教育培训
粤嵌教育,IT人才孵化中心!
1602文章数 64关注度
往期回顾 全部

科技要闻

苹果Q4营收949亿美元 中国成唯一下滑市场

头条要闻

从县长贪到副部级 65岁官员受审:非法倒卖土地使用权

头条要闻

从县长贪到副部级 65岁官员受审:非法倒卖土地使用权

体育要闻

中国篮球,告别姚明时代

娱乐要闻

黄圣依再次选择不离引发炒作质疑

财经要闻

房贷利率最快3个月就能调一次了

汽车要闻

腾势Z9 内饰官图首发 怀档设计/广州车展亮相

态度原创

旅游
家居
数码
教育
本地

旅游要闻

台湾“首来族”,四川145个景区对你们免除门票

家居要闻

回归自然 去繁求简开阔空间

数码要闻

苹果M4 Max内存带宽突破500GB/s 系非Ultra版首次

教育要闻

13门AP全自学?小众科目冲5分?美国中学生也在用这个“提分神器”

本地新闻

云游中国|我与这座城市 合得来 不怕肥

无障碍浏览 进入关怀版