目前面前嵌入式软件工程师的知识体系
创始人
2024-03-22 15:11:54
0

嵌入式目前最流行的就是基于ARM9的开发,相关学习的资料也非常的全。但是嵌入式的开发是个非常长的战线。想一个人把全线贯通至少需要两年的时间.我目前只能在某些点上做到精通。对于整个线上的知识我现在做下总结,留给我以后各个击破。

嵌入式设备的用途非常的广阔。小到遥控器、游戏机,大到坦克、航天飞机都有着它的身影,正是以为这个特点它深深的吸引了我。但是所有的技术万变不离其宗。核心技术只占20%。最核心的飞机上的嵌入式和游戏机上的嵌入式产品只是功能上的一点点差异。核心硬件差别不大。

按我的理解它的技术大致分三层。底层基于硬件的开发、软件平台的特性开发、应用场景和市场的分析。

底层基于硬件的开发,需要电路知识,数电、模电、微机原理、单片机原理、汇编、C语言。这部分学习的特点是技术相对稳定。硬件平台包含多个器件。但是在平台的搭建上,每个器件厂家都会给出相关的建议方案。一般产品基于一个平台开发都是两年以上的开发。核心变化不会太大。在初始设计的时候就要充分考虑几年内不会有大的变动。因为一旦开版投产成本都相当高的。包含了电路设计和驱动开发两方面的工作。硬件的换代一般3到5年。有的甚至更长时间。

软件平台的特性开发,对于简单逻辑的一般没有操作系统很简单时序的运算。常使用8位一下的硬件。扩展性比较低。一般通过汇编直接编写。对于越来越多的电子产品支持多种功能的集成,使得软件平台越来越复杂。于是出现了操作系统来管理协调多个程序之间的调度协调。让嵌入式平台在硬件不变的情况下提高了功能和性能。需要的知识,操作系统、TCP/IP协议、高级编程语言(C/C++/JAVA/Dephie)、软件工程、数据结构、图象处理、数据库等。实际在正规的大公司中只需要了解这里的两到三点就可以完全胜任平时的工作了。毕竟要研究透所有的知识要花大量的时间。很多公司也只希望你把一部分工作做好就可以了。太强了留不住人的。根据实际需求和岗位使用不同的技术。

应用场景和市场的分析,这部分是站在最前沿的。它引导着整个产业链的发展方向。对于现有技术可以实现的应用场景,并不一定满足实际需求。这里需要的知识就很大程度基于经验了。要了解用户的真正需求。了解市场的发展趋势。还要了解目前硬件技术到达什么程度,是否可以满足需求。这里需要考验人的眼光。要在竞争对手之前看到商机。引导客户使用现有技术。一般做这一部分工作的都是技术型企业的老总。要对行业的走向作出清晰的判断。这些决定非常重要。

目前我之前做过的技术主要集中于软件层,语言上只是精通C语言因为它在嵌入式开发有着天生的优势。能够看懂简单的汇编(大学一年单片机的结果)。硬件系统的架构和软件系统的架构非常熟悉。目前的能力只有软件上的提高自己才是最现实的。是我的近期目标。

【编辑推荐】

  1. 软件工程师的务实职业生涯规划
  2. 软件工程师7天13家公司面试经历
  3. 以身为“软件工程师”为荣

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
粉嫩如何诠释霸道 东芝M805... “霸道粉”是个什么玩意东芝M805拿过来的时候,笔者扑哧笑了,不是笑这款笔记本,而是笑这款产品的颜色...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
30分钟搞定iOS自定义相机 最近公司的项目中用到了相机,由于不用系统的相机,UI给的相机切图,必须自定义才可以。就花时间简单研究...
Intel将Moblin社区控... 本周二,非营利机构Linux基金会宣布,他们将担负起Moblin社区的管理工作,而这之前,Mobli...