嵌入式系统无疑是当前最热门最有发展前途的IT应用领域之一。嵌入式系统用
在一些特定专用设备上,通常这些设备的硬件资源(如处理器、存储器等)非常有
限,并且对成本很敏感,有时对实时响应要求很高等。特别是随着消费家电的智能
化,嵌入式更显重要。像我们平常常见到的手机、PDA、电子字典、可视电话、VCD
/DVD/MP3 Player、数字相机(DC)、数字摄像机(DV)、U-Disk、机顶盒(Set Top
Box)、高清电视(HDTV)、游戏机、智能玩具、交换机、路由器、数控设备或仪表、
汽车电子、家电控制系统、医疗仪器、航天航空设备等等都是典型的嵌入式系统。
嵌入式系统是软硬结合的东西,搞嵌入式开发的人有两类。
一类是学电子工程、通信工程等偏硬件专业出身的人,他们主要是搞硬件设计
,有时要开发一些与硬件关系最密切的最底层软件,如BootLoader、Board Suppor
t Package(像PC的BIOS一样,往下驱动硬件,往上支持操作系统),最初级的硬件
驱动程序等。他们的优势是对硬件原理非常清楚,不足是他们更擅长定义各种硬件
接口,但对复杂软件系统往往力不从心(例如嵌入式操作系统原理和复杂应用软件
等)。
另一类是学软件、计算机专业出身的人,主要从事嵌入式操作系统和应用软件
的开发。如果我们学软件的人对硬件原理和接口有较好的掌握,我们完全也可写BS
P和硬件驱动程序。嵌入式硬件设计完后,各种功能就全靠软件来实现了,嵌入式设
备的增值很大程度上取决于嵌入式软件,这占了嵌入式系统的最主要工作(目前有
很多公司将硬件设计包给了专门的硬件公司,稍复杂的硬件都交给台湾或国外公司
设计,国内的硬件设计力量很弱,很多嵌入式公司自己只负责开发软件,因为公司
都知道,嵌入式产品的差异很大程度在软件上,在软件方面是最有“花头“可做的
),所以我们搞软件的人完全不用担心我们在嵌入式市场上的用武之地,越是智能
设备越是复杂系统,软件越起关键作用,而且这是目前的趋势。
从事嵌入式软件开发的好处是:
(1) 目前国内外这方面的人都很稀缺。一方面,是因为这一领域入门门槛较高
,不仅要懂较底层软件(例如操作系统级、驱动程序级软件),对软件专业水平要
求较高(嵌入式系统对软件设计的时间和空间效率要求较高),而且必须懂得硬件
的工作原理,所以非专业IT人员很难切入这一领域;另一方面,是因为这一领域较
新,目前发展太快,很多软硬件技术出现时间不长或正在出现(如ARM处理器、嵌入
式操作系统、MPEG技术、无线通信协议等),掌握这些新技术的人当然很找。嵌入
式人才稀缺,身价自然就高,越有经验价格就越高。其实嵌入式人才稀少,根本原因
可能是大多数人无条件接触,这需要相应的嵌入式开发板和软件,另外需要有经验的
人进行指导开发流程。
(2) 与企业计算等应用软件不同,嵌入式领域人才的工作强度通常低一些(
但收入不低)。搞企业应用软件的IT企业,这个用户的系统搞完了,又得去搞下一
个用户的,而且每个用户的需求和完成时间都得按客户要求改变,往往疲于奔命,
重复劳动。相比而言,搞嵌入式系统的公司,都有自己的产品计划,按自己的节奏
行事。所开发的产品通常是通用的,不会因客户的不同而修改。一个产品型号开发
完了,往往有较长一段空闲时间(或只是对软件进行一些小修补),有时间进行充
电和休整。另外,从事嵌入式软件的每个人工作范围相对狭窄,所涉及的专业技术
范围就是那些(ARM、RTOS、MPEG、802.11等),时间长了这些东西会越搞越有经验
,卖卖老本,几句指导也够让那些初入道者琢磨半年的。若搞应用软件,可能下一
个客户要换成一个完全不同的软件开发平台,那就苦了。
(3) 哪天若想创业,搞自已的产品,那么嵌入式是一个不错的主意,这可不
像应用软件那样容易被盗版。土木学院有一个叫启明星的公司开发出一个好象叫“
工程e”的掌上PDA(南校区门口有广告),施工技术人员用该PDA可当场进行土木概
预算和其它土木计算,据说销路特好。我认识的某大学老师,他开发的饭馆用的点
菜PDA(WinCE平台,可无线连网和上网),据他说销路不错,饭馆点点PDA让客户点
菜,多显派头档次。我记得00级2+2班当年有一组同学在学Windows程序设计课程时
用VC++设计了一个功能很强的点菜系统做为课程项目,当时真想建议他们将这个软
件做成PDA,估计会有些销路(上海火车站南广场的Macdonald便使用很漂亮的PDA给
用户点食品,像摸像样的)。这些PDA的硬件设计一般都是请其它公司给订做(这叫
“贴牌”:OEM),都是通用的硬件,我们只管设计软件就变成自己的产品了。
从事嵌入式软件开发的缺点是:
(1) 入门起点较高,所用到的技术往往都有一定难度,若软硬件基础不好,
特别是操作系统级软件功底不深,则可能不适于此行。
(2) 这方面的企业数量要远少于企业计算类企业。特别是从事嵌入式的小企
业数量较多(小企业要搞自己的产品创业),知名大公司较少(搞嵌入式的大公司
主要有Intel、Motorola、TI、Philip、Samsung、Sony、Futjtum、Bell-Alcatel、
意法半导体、Microtek、研华、华为、中兴通信、上广电等制造类企业)。这些企
业的习惯思维方式是到电子、通信等偏硬专业找人。由于我院以前毕业生以企业计
算为主,所以我院与这些企业联系相对较少。我院正积极努力,目前已与其中部分
公司建立了联系,争取今后能有我院同学到这些企业中实习或就业。
(3)有少数公司经常要硕士以上的人搞嵌入式,主要是基于嵌入式的难度。但大多
数公司也并无此要求,只要有经验即可。
我院同学若学习嵌入式,显然应偏重于嵌入式软件,特别是嵌入式操作系统方
面,应是我们的强项。对于搞嵌入式软件的人,最重要的技术显然是(实际上很多
公司的招聘广告上就是这样写的):
(1) 掌握主流嵌入式微处理器的结构与原理
(2) 必须掌握一个嵌入式操作系统
(3) 必须熟悉嵌入式软件开发流程并至少做过一个嵌入式软件项目。
嵌入式软件方面最重要的课程包括:
(1) 嵌入式微处理器结构与应用:这是一门嵌入式硬件基础课程,我院用这
门课取代了传统的“微机原理与接口”课程(目前国内已有少部分高校IT专业这样
做了,因为讲x86微机原理与接口很难找到实际用处,只为教学而已)。我们说过,
嵌入式是软硬件结合的技术,搞嵌入式软件的人应对ARM处理器工作原理和接口技术
有充分了解,包括ARM的汇编指令系统。若不了解处理器原理,怎么能控制硬件工作
,怎么能写出节省内存又运行高速的最优代码(嵌入式软件设计>
更多学习嵌入式的同学们请咨询李老师 13500505486 QQ982288214
关键词:
关于
嵌入式
系统
方向