关注、星标公众号,直达精彩内容

参考:网络资料

整理:李肖遥

嵌入式大体分为以下四个方向:

一、嵌入式硬件开发:熟悉电路等知识,非常熟悉各种常用元器件,掌握模拟电路和数字电路设计的开发能力。熟练掌握嵌入式硬件知识,熟悉硬件开发模式和设计模式,熟悉ARM32位处理器嵌入式硬件平台开发、并具备产品开发经验。精通常用的硬件设计工具:Protel/PADS(PowerPCB)/Cadence/OrCad。一般需要有4~8层高速PCB设计经验。

二、嵌入式驱动开发:熟练掌握Linux操作系统、系统结构、计算机组成原理、数据结构相关知识。熟悉嵌入式ARM开发,至少掌握Linux字符驱动程序开发。具有单片机、ARM嵌入式处理器的移植开发能力,理解硬件原理图,能独立完成相关硬件驱动调试,具有扎实的硬件知识,能够根据芯片手册编写软件驱动程序。

三、嵌入式系统开发:掌握Linux系统配置,精通处理器体系结构、编程环境、指令集、寻址方式、调试、汇编和混合编程等方面的内容;掌握Linux文件系统制作,熟悉各种文件系统格式(YAFFS2、JAFFS2、RAMDISK等);熟悉嵌入式Linux启动流程,熟悉Linux配置文件的修改;掌握内核裁减、内核移植、交叉编译、内核调试、启动程序Bootloader编写、根文件系统制作和集成部署Linux系统等整个流程;、熟悉搭建Linux软件开发环境(库文件的交叉编译及环境配置等);

四、嵌入式软件开发:精通Linux操作系统的概念和安装方法、Linux下的基本命令、管理配置和编辑器,包括VI编辑器,GCC编译器,GDB调试器和 Make 项目管理工具等知识;精通C语言的高级编程知识,包括函数与程序结构、指针、数组、常用算法、库函数的使用等知识、数据结构的基础内容,包括链表、队列等;掌握面向对象编程的基本思想,以及C++语言的基础内容;精通嵌入式Linux下的程序设计,精通嵌入式Linux开发环境,包括系统编程、文件I/O、多进程和多线程、网络编程、GUI图形界面编程、数据库;熟悉常用的图形库的编程,如QT、GTK、miniGUI、fltk、nano-x等。

公司的日常活动还是看公司的规模,大一点的一般只是让你负责一个模块,这样你就要精通一点。若是公司比较小的话估计要你什么都做一点。还要了解点硬件的东西。

那么看了这么多,嵌入式和纯软最大的区别在于:

纯软学习的是一门语言,例如C,C++,java,甚至Python,语言说到底只是一门工具,就像学会英语法语日语一样。

但嵌入式学习的是软件+硬件,通俗的讲,它学的是做系统做产品,讲究的是除了具体的语言工具,更多的是如何将一个产品分解为具体可实施的软件和硬件,以及更小的单元。

不少人问,将来就业到底是选驱动还是选应用?只能说凭兴趣,并且驱动和应用并不是截然分开的。

▍PART  01

我们说的驱动,其实并不局限于硬件的操作,还有操作系统的原理、进程的休眠唤醒调度等概念。想写出一个好的应用,想比较好的解决应用碰到的问题,这些知识大家应该都懂。

PART  02

做应用的发展路径个人认为就是业务纯熟。比如在通信行业、IPTV行业、手机行业,行业需求很了解。

▍PART  03

做驱动,其实不能称为“做驱动”,而是可以称为“做底层系统”,做好了这是通杀各行业。比如一个人工作几年,做过手机、IPTV、会议电视,但是这些产品对他毫无差别,因为他只做底层。当应用出现问题,解决不了时,他就可以从内核角度给他们出主意,提供工具。做底层的发展方向,应该是技术专家。

▍PART  04

其实,做底层还是做应用,之间并没有一个界线,有底层经验,再去做应用,会感觉很踏实。有了业务经验,再了解一下底层,很快就可以组成一个团队。

‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧  END  ‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧
扫描下方微信,加作者微信进技术交流群,请先自我介绍喔。推荐阅读:嵌入式编程专辑Linux 学习专辑C/C++编程专辑
Qt进阶学习专辑关注微信公众号『技术让梦想更伟大』,后台回复“m”查看更多内容。
长按前往图中包含的公众号关注

嵌入式开发是什么,与纯软件什么区别?相关推荐

  1. SPC58芯片的嵌入式开发准备工作——SPC5Studio与Debug软件的安装

    (一)SPC5Studio的安装是相对简单的. 参考官方的指导手册即可. 第一步:从官网上下载最新版本的软件. 第二步:按指导手册安装软件(免费的) <SPC5Studio安装应用向导 > ...

  2. 纯软件程序员向嵌入式系统工程师转型时需注意的问题

    纯软件程序员向嵌入式系统工程师转型时需注意的问题 在中国,PC(主要是Windows-Intel体系)软件开发程序员,也就是"纯软件程序员"的"黄金年龄段"较短 ...

  3. 嵌入式开发<网络调试工具>

    嵌入式开发<网络调试工具> 前言 1,设备参数分类 2,设备参数修改 3,调试工具软件 一.软件界面 二.功能说明 1.网络设置 1)TCP Client设置 A, 协议类型: B, 远程 ...

  4. 专访许雪松:深入理解嵌入式开发

    许雪松,毕业于西北工业大学生物医学工程专业,现任必达测控技术总经理.15岁开始接触计算机编程,18岁学习C/C++编程,迄今已十多年有余,领导并参与大大小小几十个项目的开发及维护.涉及工业自动化.嵌入 ...

  5. 教你怎么更好的学习嵌入式开发

    很多大学生.初学者总爱问一个问题:该不该放弃嵌入式.单片机这条路? 以下是一位网友分享的嵌入式开发经历,希望可以帮到你. 阶段 1 大一到大三这个阶段我与大多数学生相同: 学习本专业知识(EE专业), ...

  6. 单片机开发和嵌入式开发的区别

    单片机开发和嵌入式开发都是针对嵌入式系统的应用领域,但是两者有着不同的特点和应用场景.在本文中,我们将探讨单片机开发和嵌入式开发的区别,并介绍它们的应用场景和技术特点. 一.单片机开发和嵌入式开发的区 ...

  7. 学习纯软件开发(如Java/Python...)还是C语言、嵌入式、物联网呢?

    我国科技的迅速发展带动了计算机行业的兴盛发展,越来越多的学生,在职人士以及想要提升自己的人群都想学习这一行,给自己的美好未来打好物质基础,有得人想要学习纯软件开发比如Java/Python...,有的 ...

  8. AES加解密效率测试(纯软件AES128/256)--以嵌入式Cortex-M0与M3 平台为例

    目录 AES256/128 纯软件加解密时间效率测试--以Cortex-M0与M3 MCU为例 一.测试环境与方法: 二.测试代码介绍(以AES256为例) 三.测试结果与抓包截图 1.主频统一设置为 ...

  9. 从硬件工程师转到纯软件开发,回顾那些岁月

    1. 序 前段时间,我写了很多关于js的文章,分享的乐趣使我决定继续写下去.在接下来的时间,我计划也开始写关于Java的内容. 其实我很早以前就想写了,Java是我毕业后学的第一门语言,准确来说,如果 ...

  10. 基于软件开发对嵌入式开发的思考

    由于本人专业方向是计算机体系结构方向的,平时做嵌入式方面的实验以及项目较多,这个学期又学习了软件工程的课程,因此想借此机会,总结下在软件工程上面学习到的知识,并看看是否有什么能够借鉴到嵌入式方向的开发 ...

最新文章

  1. Python控制流:顺序结构、分支结构、循环结构+for、if ... else、while、if... elif...elif..else、if
  2. torch.empty()
  3. 【积淀】半夜突然有点想法
  4. 卷积神经网络(CNN)在无人驾驶中的应用
  5. 初识virtual memory
  6. 工作所用的模块回滚脚本
  7. Java为xml跟节点添加子节点_如何将xml节点作为第一个子节点插入Java中的另一个xml文档中?...
  8. 40Linux组41Linux所有者42Linux所在组43Linux修改所有组
  9. 改写画质、突破性能, Unity 全面升级!
  10. opencv 重用代码块记录
  11. Python基础-通过随机数实现抽奖功能 (代码分享)
  12. 细数实现流水灯的三种代码形式
  13. flash在线拍照并上传
  14. Unity Shader零基础入门4:纹理贴图与法线贴图
  15. 今天安利几个App给你
  16. AI 图像识别的测试
  17. 对话英特尔副总裁Erez Dagan:自动驾驶引擎盖下的秘密!|《新程序员》
  18. java把汉字转换成拼音_Java实现汉字转换为拼音
  19. 【VLAN高级技术】--- MUX VLAN运行原理及实例配置讲解
  20. win7 codecs 32/64位 v11.3.4

热门文章

  1. mongodb查询某个字段数据
  2. itchat——使用python登录网页版微信
  3. matlab调整文字方向,python 旋转文字方向_如何通过Python 在绘图中旋转文字?
  4. Android跑马灯进度条,跑马灯进度条在Powershell中冻结
  5. FLUX-TMS-物流整体解决方案 附下载地址
  6. mac 虚拟打印机:
  7. PCIe扫盲——PCI总线的三种传输模式
  8. 【NLP】第6章 使用 Transformer 进行机器翻译
  9. 位置不可用——文件或目录损坏且无法读取
  10. 7-2 整数的因子 (10 分)