gzyueqian
13352868059

粤嵌西安培训 嵌入式软件工程师不可或缺的基础知识

更新时间: 2018-04-20 15:16:48来源: 粤嵌教育浏览量:3369

  学习嵌入式有软件和硬件两种不同的发展方向,而它们学习的侧重点也是不一样的,例如你要往软件方向发展,一些重要的基础知识不可或缺。粤嵌西安嵌入式培训介绍一下成为一名嵌入式软件工程师,需要掌握哪些基础知识:

  1、 计算机组成/微机原理

  主要是为了了解微型计算机的硬件工作原理,明白CPU、总线、I/O、存储器等一些关键结构是怎么工作的,虽然是很枯燥的知识,但是对熟悉外围设备硬件工作方式,及操作系统,软件架构的设计及优化相当关键。

  2、编程语言:C语言和汇编

  对于C语言本身的基础来说,无非是把结构化,函数,数组,指针弄熟,但是嵌入式开发对C语言应用的要求会更高。要对内存分配,文件访问,寄存器访问,预处理指令,中断处理程序等等相当熟悉,这些都是在使用中要注意的细节问题。C语言对程序的优化也很重要,而这些往往是需要从全局去考虑。汇编一般是和处理器的指令集相关的,可以更好的去理解处理器的工作原理,往往是用在一些需要效率的地方,如系统的初始化。



  3、操作系统

  嵌入式产品应用比较广泛的是Linux和WinCE。但操作系统的内部设计原理都是殊途同归。首先要去学习的是操作系统原理,去了解进程通信、内存管理、文件系统等几个重要的部分,因为这些在软件开发尤其是内核驱动开发时会用到。接下来可以去熟悉至少一种主流的操作系统,Linux是一个很好的选择,去了解它的内核架构,设备驱动架构,如何去编译,裁剪,编写应用程序,以及如何使用在具体的嵌入式产品上。

  4、数字电路

  学习这方面的知识主要是了解一些基本的电路知识,如门电路、逻辑电路、存储器、寄存器,为了更好的理解嵌入式芯片,存储器,外围设备等硬件的设计,但往往在软件开发中未必能用的到。因为大部分硬件都提供了很完整的软件接口。

  5、 数据结构和算法

  数据结构在嵌入式开发中也很重要,比如说操作系统里的很多实现都用到了具体的算法。基本的数据结构需要掌握,如各种链表,树,图等等;而算法的学习需要数学知识作为铺垫,用计算机语言去实现。对于软件从业人员来说,算法终究是一个工具,在实际应用时再深入挖掘也可。

  6、 软件工程/软件测试/项目管理基础及开发平台

  嵌入式的开发平台不局限于一种操作系统,因此要熟悉各种操作系统下的命令、编辑器及开发工具,这一点往往被很多人忽视。举个例子,Linux下的程序员开发环境往往是按自己的习惯搭建,熟练掌握一种编辑器如Vim/Emacs可以大幅度提高工作效率。

  这些知识的学习不是一蹴而就的,嵌入式需要通过大量的练习实践来将所学的理论知识转化为自己的技能,如果只是单纯学习理论知识,很大程度上会无法将理论与实际结合起来运用。因此粤嵌西安嵌入式培训表示,还是找到一家专业的培训机构,可让嵌入式的学习事半功倍。




免费预约试听课