简介 嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。 嵌入式软件工程师就是编写嵌入式系统的工程师。 职业要求 应具备哪些能力 最直接的方法,就是去根据各公司,招聘网站的嵌入式软件工程师的应聘要求来分析 我帮你总结下: 1.最重要的是C语言编程,以及C++,这个与你读程,应用,开发项目,做系统移植息息相关; 2.操作系统: LINUX,WINCE等,至少学习过一种,并且还需要对些基础知识有蛮多的了解; 3.对ARM,FPGA,DSP等这些硬件比较了解。 这是最常规的条件 当然,一些基本素质,像英语能力,团队协作能管理,也很重要。 发展前景 嵌入式领域较新,发展非常快,很多软硬件技术出现的时间都不太长(如ARM处理器、嵌入式操作系统、LINUX操作系统),大多数人没有条件接触或进入嵌入式行业,更谈不上能有机会接受专业人士的指导。因此,踏进这个行业的难度比较大,嵌入式人才稀缺,身价自然也水涨船高。 权威部门统计,我国嵌入式人才缺口每年5万人左右。根据前程无忧网发布的调查报告,嵌入式软件开发是未来几年最热门和最受欢迎的职业之一。做软件实际上有高下之分,开发语言从机器语言、汇编到C、C++,再到红透半边天的Java、C#等,该学哪种呢?为什么有些开发者工资低,而有些开发者千金难求?为什么3年的Java高级程序员薪水仅仅8k-1k,而一个Linux底层C语言程序员两年经验就敢要1k的月薪?这就是他厉害之处了。 还是门槛,比如Linux嵌入式开发职位,门槛就有 Linux系统、Shell编程、Linux开发环境、C语言、ARM硬件平台、数据结构、Linux内核、驱动程序等,粗略数数就有8道关口,他需要非常熟悉整个的计算机体系,能做出实际的产品。 嵌入式开发本身也有高下之分,至少包含嵌入式应用程序工程师和底层的驱动内核工程师两种。根据芯片具体情况把操作系统(如Linux)移植到上面,同时编写必要的驱动程序,改写相应的内核代码,要做出那小小一行代码的修改需要经过大量的资料搜索以及调试才,耗费的脑力劳动是不能单单从改写相应内核代码的数量才判断的。很显然后者是一个公司真