随着当今科技的快速发展,我们日常的生活习惯发生了根本性的变化,在生活中越来越离不开一些辅助性产品。
就拿日常生活中一个小小的片段来说,早晨六点半你的手机闹铃响了,提醒起床;起床后开始洗漱,此刻你可能边听着手机播放的音乐边用电动牙刷刷牙,接着开始准备使用豆浆机、烤箱或微波炉做早餐,吃完早饭后准备出门,刷公交卡坐公共汽车或地铁上班,在乘车的过程中,你可能会拿出iPad玩游戏,看电影……就在起床后到上班这段时间,你已经使用了多个嵌入式产品。
嵌入式产品和我们日常生活息息相关,只要你能想到的领域,都可以找到嵌入式产品的应用,小到你做的一份简单的早餐,大到登陆火星的装备。所以说嵌入式的产品包罗万象,应有尽有。
嵌入式系统这个名词在业内还没有统一的定义。英国电器工程师协会(U.K.Institution of Electrical Engineer)是这样定义的:
嵌入式系统(Embedded System),是一种“完全嵌入受控器件内部,为特定应用而设计的专用计算机系统”。
我们可以看出嵌入式系统为控制、监视或辅助设备、机器或用于工厂运作的设备。
与个人计算机这样的通用计算机系统不同,嵌入式系统通常执行的是带有特定要求的预先定义的任务。嵌入式系统只针对一项特殊的任务,设计人员能够对它进行优化,减小尺寸降低成本。由于嵌入式系统通常进行大量生产,所以单个的成本较低。
嵌入式系统还有一种多数人比较认可的一种定义:以应用为中心,计算机技术为基础,软硬件可剪裁,适应应用系统对功能、成本、体积、可靠性、功耗严格要求的计算机系统。
我们也可以从另一个角度解释嵌入式系统,凡是带有微处理器的专用软硬件系统都可称为嵌入式系统。即使是没有嵌入式操作系统的单片机和 DSP 系统,也可以称为嵌入式系统,这些系统在完成较为单一的专业功能时具有简洁高效的特点。但管理系统硬件和软件的能力有限,在实现复杂多任务功能时,往往困难重重,甚至无法实现。
虽然嵌入式系统没有统一的定义,许多业内人士对其理解也有所差异,但有些特征是业内人士能普遍接受的,嵌入式系统通常具备如下五个特征。
由于嵌入式系统的硬件资源相对有限,所以内核与传统的操作系统要小得多。比如,嵌入式Linux的内核可以做到100KB左右。
嵌入式系统是专用的系统,其中的软件系统和硬件的结合非常紧密,一般要针对硬件进行系统的移植。即使在同一品牌、同一系列的产品中也需要根据系统硬件的变化增或减不断进行修改。同时针对不同的任务,往往需要对系统进行较大更改,程序的编译下载要和系统相结合。
嵌入式系统的产品,其硬件和软件都是可以裁剪的,可以简单理解为它的硬件和软件由多个模块组成,我们根据实际的产品需求经行选择,不用的模块就不要添加,只用一次的模块也要设法避免。
这是嵌入式软件的基本要求,而且软件要求固态存储,以提高速度。软件代码要求高质量和高可靠性、实时性。
嵌入式系统产品的开发,对非功能性指标要求非常高,比如产品的体积要小,可靠性要求高(如可以在恶劣的环境下正常工作),功耗低等。还有更重要的一点是控制成本,软硬件的选择上遵循“够用就行”,不追求新潮。