嵌入式软件进入高速成长期
2007年,嵌入式软件正受到前所未有的重视和发展。而在中国,同样经历着嵌入式软件发展的高速成长期。赛迪顾问基于对嵌入式软件产业的多年研究,对影响未来嵌入式软件发展的事件进行了总结:
行业应用领域持续拓展
在工业领域,以信息化带动工业化,以工业化促进信息化,提高科技含量,节能减排的新型时代要求为嵌入式软件提供了良好的发展环境。
数控装置、全自动柔性生产线、可编程控制器、分布式控制系统、工业机器人、机电一体化机械设备等正在成为越来越重要的生产要素。
在航空航天领域,“嫦娥探月”扩展了嵌入式软件的应用空间,从嵌入式操作系统、嵌入式中间件到嵌入式应用软件,自主知识产权嵌入式软件在实时性、可靠性、性能等方面都经受住了考验。
在消费电子领域,模拟电视信号到数字电视信号的转换进程正在如火如荼进行,数字电视终端及收发端需求大幅上升,智能手机、便携式移动娱乐设备、数字家电等逐步普及,更新换代速度逐步加快。
无线互联、移动商务等应用快速推广,在带给人们数字化生活变革体验的同时,也使得嵌入式浏览器、嵌入式GUI、嵌入式应用套件、嵌入式Java和嵌入式无线通讯软件等嵌入式支撑软件得到快速发展。
同时汽车电子、船舶电子、医疗电子等行业电子蓬勃发展,RFID、税控收款机、安全身份认证、智能交通系统等逐步推广,嵌入式软件应用范围日趋泛化。
导航定位应用受重视
更高集成度、更高性价比的GPS产品、更大屏幕的智能手机以及更精确的地图数据推动手机导航和定位服务成为手机领域增长最快的业务。
国外,导航定位市场的快速增长促使终端厂商和芯片厂商纷纷加大投入,尤其以诺基亚斥资81亿美元并购Navteq公司为典型。这次并购是诺基亚在手机内容和服务提供业务上发展放缓后作出的一项重要战略转移。也是一次防御性并购,不但控制获得地图和导航数据的成本,又压缩独立导航设备制造商的生存空间,在与 Google、雅虎和微软等竞争中抢得先机。
另外芯片厂商高通和博通在开发各自导航定位产品的同时也作出一系列战略性收购,而蓝牙芯片公司CSR也购入瑞典卫星导航技术公司NordNav。
国内,导航定位同样获得了前所未有的发展,地图提供商、导航软件提供商、运营商、设备提供商等纷纷加大研发推广力度,车载、手机等均成为GPS的应用载体,市场呈现高速增长态势。
虚拟系统原型
改善系统开发流程
随着嵌入式系统处理能力的提升,其设计复杂度也大幅提高,嵌入式系统开发无法在预定时间完成的情况时有发生,开发质量难以保证。
在传统的开发步骤中硬件设计要先于软件开发,软硬件的串行式设计方法面临变革。系统架构、硬件实现和软件实现各阶段之间的关系需要调整,需要一套能对全系统建模的方法,以促进系统架构研究并实现软硬件协同设计。
虚拟系统原型是解决软硬件协同设计问题的一种有效手段,硬件和软件开发可同时启动,有利于减少开发所用资源,并缩短系统开发时间。首先,虚拟系统原型运行的是与真实硬件相同的经过编译和链接的目标代码,能准确预测系统在实际情况下的表现,包含一个或多个处理器、总线、硬件外设,甚至包含作为整个系统一部分的机械或模拟子系统模型。
其次,虚拟系统原型还是一种周期精确的模型,被设计的系统可根据对实时性的要求建模。另外,其软件模型升级和分发可通过网络发送,有利于全球范围内的分布式开发团队合作。工程师只有在最后的集成阶段才需物理的硬件和芯片,而且由于软硬件开发采用的是同一个虚拟系统原型,集成亦会更便捷。
操作系统助力多核处理器
Intel、飞思卡尔等芯片厂商纷纷推出嵌入式多核处理器,但开发和设计人员在基于多核架构的应用开发中会遇到新的挑战性和复杂度:如何针对多核技术实现已有系统的过渡、调试和优化;如何更充分发挥多核硬件系统组件所具有的性能优势;如何减少多核系统的软件开发成本和加快产品上市速度等。
嵌入式操作系统提供商端到端多内核优化解决方案在芯片和软件开发间起到了桥梁作用。如Wind River对对称多处理结构的支持,面向多核设备在应用交互、性能和并发性的设计范式等方面进行软件优化,实现多核调试和性能调控等高级功能,使开发人员能利用多核调试技术进行快速错误定位和可视化行为监控。
移动Linux阵营不断壮大
Symbian和Windows Mobile占据着手机嵌入式操作系统的较大市场份额,但是Wind River、Monta Vista、摩托罗拉等产业链上各厂商对Linux移动业务寄予厚望。
2007年值得关注的是Google,在高调发布GPhone手机的背后是由Google号召下创建的由34个成员
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)