什么是嵌入式 如何理解嵌入式系统开发

时间:2022-03-08 08:16:25

什么是嵌入式?如果在十年前也许有70%的人不曾了解。如今不管是从行业应用,还是智能硬件的爆发,物联网时代的来临,嵌入式技术都得到了史无前例的发展。所以如果你还不了解什么是嵌入式,那确实有些OUT了。简单的说下,嵌入式技术是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统技术。打个简单的举例,你智能手机其实就是一个嵌入式系统,它的系统配置的一些硬件如存储,CPU、电池,就是考虑到软硬件可裁剪、功耗等问题,试想一下,若智能手机还用台式电脑的CPU,那最终成型产品得有几十斤,显然也没有消费者。

它最初起源于单片机技术,是各类数字化的电子、机电产品的核心,主要用于实现对硬件设备的控制、监视或管理等功能。进入21世纪计算机应用的各行各业中90%左右的开发将涉及到嵌入式开发。全球嵌入式软件市场年增长率超过12.5%,嵌入式系统带来的工业年产值达一万亿美无,中国未来三年嵌入式软件产业将保持40%以上的年复合增长率。

做软件实际上有高下之分,开发语言从机器语言、汇编到C、C++,再到红透半边天的Java、C#等,该学哪种呢?为什么有些开发者工资低,而有些开发者千金难求?为什么3年的Java高级程序员薪水仅仅8k-10k,而一个Linux底层C语言程序员两年经验就敢要15K-20k的薪水?

还是门槛,比如月薪15k的嵌入式Linux开发职位,门槛就有Linux系统、Shell编程、Linux开发环境、C语言、ARM硬件平台、数据结构、Linux内核、驱动程序等,粗略数数就有8道关口,他需要非常熟悉整个的计算机体系,能做出实际的产品,而Java的开发者却仅仅是会使用名叫Java的语言工具,始终高高飘在众多层次之上,开发项目非常快,甚至可以不知道OSI模型,很可能自始至终都是软件蓝领。

2016年7月份,国内知名嵌入式培训机构——华清远见嵌入式学院公布了该月学员的就业薪资(http://www.embedu.org/jiuye/4895.html),很好的显示了当前嵌入式行业的就业水平,当然95%都是应届生。有一个相对客观的参考。

嵌入式开发本身也有高下之分,从当前看包含嵌入式应用程序研发工程师和底层的驱动内核研发工程师两种。前者是使用现成工具进行简单开发,技术难度系数远比不上后者。如使用J2ME开发小游戏或者进行一些界面开发,而后者是根据芯片具体情况把操作系统(如Linux)移植到上面,同时编写必要的驱动程序,改写相应的内核代码。很显然后者是一个公司真正的技术核心。而技术核心的工资很可能是其他开发者的数倍。但从入行新人而言前者到后者是一个过度。

嵌入式开发培训学习的话,一般都强调硬件平台和实战项目,学习不仅仅是学习几项技术,而是构建你的知识体系。比如学习嵌入式开发,就要从基础Linux,C语言,数据结构开始,到ARM,汇编,Linux内核、驱动等,更重要的是更多的项目练习,设计至少3个项目,多达10000行强制核心代码的编写可以让你真正获得知识。这一块相信在华清远见的课程体系中会有很好的体现。这也是应对大学生就业难当前比较主流的职业技术培训。