提升嵌入式软件设计认知瓶颈

文摘   2024-09-26 21:39   广东  


正文


大家好,我是bug菌~
大家应该都经常听到“什么要提升认知”、“人只能赚到个人认知以内的money”等等。
认知其实就是当你获取、处理和理解信息的心理过程,包括感知、记忆、思考和决策等,其实做技术一样的也有对技术认知。
当面对一个设计、一个bug,会从哪些维度去思考,准备怎样去处理,一些工程师立马就会进去无尽的debug and step,而有些工程师却能不慌不忙的用一些“偏门的”调试技巧和方法就能分析个大概,然后稍加调试就能直击问题的要害,又或者构建的系统中原本就有这种方法,他知道而你却不知道。
那在嵌入式软件开发过程中一般会面临哪些技术方面的认知瓶颈呢?
1、软件系统复杂性管理
系统功能越来越多,软件越来越大,如何有效管理和组织复杂的软件架构成为开发中的一大挑战,如今很多工程师常常只是负责自己那一小部分功能,核心算法功能实现估计都看不到,难以掌控系统的整体结构。
2、实时
工业嵌入式系统通常需要满足严格的实时性要求,理解和深入不同实时操作系统的不同模式下的调度策略,以及给自己的任务进行最优的优先级管理是一个难点。
3、资源受限
嵌入式设备通常只有有限的计算能力和内存,需要在效率和资源使用之间找到平衡,压榨硬件,节省成本,这对设计和优化提出了较高的要求。
4、硬件平台抽象化(嵌入式的跨平台)这里并不谈linux与windows所谓的应用程序的跨平台,而是不同硬件平台和架构之间的抽象与统一,否则会导致代码重用性低和维护成本高。
5、安全性
随着物联网的发展,嵌入式系统面临着越来越多的安全威胁,如何设计安全可靠的系统仍然是一个重大挑战,还有固件会不会被恶意提取,反编译等问题都是一个成功产品需要考量的。
6、运行稳定与可靠
24h、72h稳定运行工况,掉电不损坏系统,各异常能够正常捕捉与上报,都成为优秀系统设计中的一大考量点。
7、软件更新与维护
嵌入式设备如果在生产后难以进行远程更新,那肯定是一大设计败笔,如何设计便于后期维护和更新的系统架构是一个挑战。
8调试
调试工具的熟练度和丰富度,不同的问题和现象采用不一样的调试手段和技巧。
9、测试自动化
尽管测试对确保软件质量至关重要,但许多嵌入式系统尚未完全实现测试自动化,增加了人工测试的负担。

最后

      好了,今天就跟大家分享这么多了,如果你觉得有所收获,一定记得点个~

唯一、永久、免费分享嵌入式技术知识平台~

推荐专辑  点击蓝色字体即可跳转

☞  MCU进阶专辑 

☞  嵌入式C语言进阶专辑 

☞  “bug说”专辑 

☞ 专辑|Linux应用程序编程大全

☞ 专辑|学点网络知识

☞ 专辑|手撕C语言

☞ 专辑|手撕C++语言

☞ 专辑|经验分享

☞ 专辑|电能控制技术

☞ 专辑 | 从单片机到Linux

最后一个bug
一个嵌入式技术进阶公众号,定期分享C语言,C++、MCU(如stm32等)、DSP、ARM、嵌入式Linux等“独门”软件设计技巧和知识归纳总结,同时分享应用程序设计、物联网、滤波及控制算法推导和仿真设计等嵌入式硬核知识技巧!欢迎大家关注!
 最新文章