|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
嵌入式软件开发又是指什么?
随着嵌入式软件系统结构越来越复杂,嵌入式软件的开发已成为复杂的系统工程。早期的嵌入式系统中,软件与硬件密不可分浑然一体,开发者多是电子工程、自动控制等领域的工程师,软件基本上都是用汇编语言实现。随着软硬件技术的发展,人们对嵌入式系统的功能要求越来越复杂(比如,手机可以照相、摄影、播放MP3,还可以上网读新闻、玩游戏、购物等),而性能(比如,可靠性、安全性、响应速度、功耗等)要求也越来越高,与此同时,嵌入式软件的开发与硬件仍然密不可分,从软硬件系统与平台选择、设计、开发到测试与集成,整个过程都是软硬件并行交互进行,这样嵌入式软件开发已经成为一项很复杂的系统工程,嵌入式软件的开发必须遵循系统工程和软件工程的要求。
一个嵌入式系统的开发过程如下:
1)嵌入式系统的需求获取与需求分析;
2)设计系统的体系结构:选择处理器和相关外部设备,操作系统,开发平台以及软硬件的分割和总体系统集成;
3)硬件的结构设计、软件的系统设计;
4)软硬件详细设计:
5)软件代码开发,软件测试与调试;
6)软硬件的联调和集成;
7)系统的测试。
嵌入式系统中软件工作量约占全部工作量的80%,其中测试与验证的工作量占软件工作量的70%。而需求分析、系统设计在复杂系统中成为系统成功实现的关键,很多分析设计方法被引入到嵌入式系统设计中,包括面向对象方法、设计模式等。
基于PC 的软件设计只需考虑选择使用何种操作系统,而嵌入式软件设计不仅要慎重选择嵌入式操作系统,应用软件的设计与操作系统密切结合,甚至要根据需要对操作系统进行适当裁剪。
许多早期的嵌入式系统开发者认为嵌入式系统不需要操作系统,但现在除了最简单的系统外,越来越多的嵌入式系统都引入了操作系统,比如中断驱动系统在引入嵌入式操作系统之后,系统的可靠性、安全性、可扩展性、功能性、灵活性、可管理性都大大提高。当然,我们这里所讲的嵌入式操作系统不一定是UcOS、VxWorks、WinCE、Linux等通用产品,也包括开发者自己编写的专用嵌入式操作系统。
在这些嵌入式操作系统中封装了越来越多的功能,除了对任务的切换、调度、通信、同步、互斥、中断管理、时钟管理等,还可进一步封装内存管理、网络通讯协议、文件管理等功能,这些功能可以根据需要进行裁减。Linux正是由于其源代码开放,可以使开发者根据自己的需要进行裁剪而受到开发者的青睐。 |
|