嵌入式技术栈太深,除了极少数人,一般人很难实现“技术破圈”

嵌入式是一门跨学科的学科。

嵌入式电子产品(如手机)一般自下而上涉及半导体芯片、电子电路、计算机、操作系统、多媒体等不同专业领域的知识。

许多从事嵌入式开发的朋友通常来自不同的专业(电子、电气、计算机、机械、自动化、物理,甚至一些文科专业)。在实际学习和开发中,由于专业背景的限制,经常会遇到各种这样的技术壁垒:搞硬件的不懂软件从51到arm—32位嵌入式系统入门,搞软件的不懂硬件,搞低级芯片的不懂上层软件,搞上层软件的人不懂底层芯片。

嵌入式技术栈太深了。除了极少数人,普通人很难“打破科技圈”。整个技术栈从上到下被抚摸过。

与桌面开发相比,嵌入式开发也有碎片化的特点:架构不同(如ARM、MIPS、RISC-V等),不同厂商的SoC处理器(如Cortex-M系列、Cortex-A系列、AI芯片等),不同的操作系统(Linux、uC/OS、FreeRTOS、Android等)一般都需要匹配相应的编译开发环境,然后工程师可以基于这个编译环境开发应用。

如果把软件开发比作开饭馆卖饺子,那么对于桌面软件开发,锅碗瓢盆、水电煤气甚至饺子(超市速冻饺子)都应有尽有,标准统一,只等你来做饭,根据顾客的不同需求,可以做出不同的菜式:猪肉芹菜,三鲜,蒸,煮,炒。

对于嵌入式开发,情况可能不同:没有现成的成品饺子可以使用,需要自己准备饺子皮、剁肉、锅碗瓢盆,需要自己搭建开发环境。

遇到问题时,不应局限于当前的软件业务逻辑,还可以从芯片、硬件电路、操作系统、底层驱动、甚至编译器等不同维度进行分析,定位问题原因。

随着半导体产业趋势的变化和国内对芯片产业的投入,国产芯片越来越多,未来嵌入式软件工程师的岗位和工作内容也将发生一些变化:

嵌入式开发者不再只是基于芯片厂商提供的现成开发板、BSP软件包、产品解决方案开发产品,而是越来越多的工程师直接进入芯片厂工作,参与底层软件的开发的芯片。及维护工作:芯片测试、操作系统移植、驱动开发与维护,以及基于自身芯片产品解决方案的推广与技术支持。

在芯片设计的早期,嵌入式软件工程师有时需要和IC工程师一起对芯片进行测试,编写相应的测试代码和测试用例。

工作职责和工作内容的变化,要求嵌入式软件开发人员不断拓展知识体系,学习和解锁新技能:C语言编程技能、软件工程、编译原理、计算机体系结构、操作系统、汇编语言、硬件电路,有时甚至需要了解芯片设计、芯片制造、CPU内部结构等一些“圈外”知识。

对于每一个新的知识点和每一个新的技能,市面上都有大量的经典书籍可供参考从51到arm—32位嵌入式系统入门,但是每本书都很厚,都有自己的首选领域和重点,以及我们实际工程中经常会出现偏差需求,需要花费大量的时间和精力去阅读和消化,然后才能提炼出一些嵌入式开发需要的核心知识点和关键技能。

以这些核心知识点和关键技能为理论支撑,我们可以更好更快地解决嵌入式开发中的各种工程问题。

工程师很忙,没有时间和精力去翻阅各种经典书籍,或者很少有人能坚持读下去。

嵌入式开发人员的专业背景不同,每个人的知识储备和技能树也参差不齐。知识体系不完善、基本技能储备不足,往往影响实际工作的产出效率。而学习会遇到各种解决不了的问题,学习有困难,工作卡顿。

有没有更好的方法可以快速掌握这些嵌入式开发所需的核心知识点和关键技能?

答案是:是的。

基于这种实际需要,《嵌入式C语言的自我修养:从芯片、编译器到操作系统》出版。

笔者结合自己的嵌入式学习心得和工作经验,从最底层的一堆沙子开始,一步步带你了解CPU芯片是如何设计制造的:

这些问题在书中都有解释。

写作的初衷

编写本书的初衷主要是为不同专业背景的嵌入式同学补上理论短板:从C语言开始,从最底层的芯片开始,到编译器、操作系统、软件工程、系统框架、进程、线程、协程,构建嵌入式开发所需的完整知识体系和认知框架。

平衡理论与工程

这本书不会像经典书籍那样全面​​,深入到每一个细节,但目的是在理论和工程之间取得平衡,一切都恰到好处:一切以实际工程需要为参照点,所有学到的知识点满足实际项目所需的理论支持就足够了,不会深入到学派关注的各种细节和绩效指标,以免深陷其中无法自拔并且消耗太多时间。

掌握实际开发中需要的核心知识点和关键技能,也填补了理论的不足。

这个时候,相信大家对嵌入式开发的整体认识就会更加清晰了。如果你在工作中遇到各种问题,可以尝试用这个知识体系和认知框架来分析和解决。分析问题有重点。,你会有一个想法,你就不会再迷茫了。

流行和有趣

与其他书籍相比,本书坚持用白话文书写,通俗易懂。我不怕学不会,只怕你学不会。

用诙谐幽默的文风,提升阅读体验,越看越想看,让你读多长时间都不会觉得无聊。

新颖的内容

在本书的内容安排上,做了很多实验性的创新,比如:

口口相传

本书大部分内容基于作者几年前录制的嵌入式工程师C语言视频教程:C语言嵌入式Linux高级编程。

结合上千名学员的中肯评价和持续反馈,经过多次修改和结构和内容安排的不断优化,纸质版现已提供给大家。

书的正文560+页,加上目录、前言等,将近600页,放在我手里很沉,干货满满。写一本书既无聊又费时。经过几次拖延和修改,我终于见到了你。我用口碑和信仰做编程教育,致力于分享最正宗的技术和干货知识。成千上万的学生是相关的。反馈和好评是本书最令人欣慰的,也是本书质量的保证。

愿本书也有助于您的嵌入式学习,并为您的嵌入式职业增光添彩。

▊ 《嵌入式C语言修身——从芯片、编译器到操作系统》

王立涛

本书是专为嵌入式读者打造的C语言进阶学习书。本书的学习重点不再是C语言的基本语法,而是嵌入式和C语言相关的一系列知识。作者以C语言为切入点,探讨了嵌入式开发所需的诸多核心理论和技能,力图帮助读者从零开始构建嵌入式开发所需的完整知识体系和技能树。

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论