随着现代计算机技术的飞速发展和互联网技术的广泛应用,从PC时代过渡到了以个人数字助理、手持个人电脑和信息家电为代表的3C(计算机、通信、消费电子)一体的后PC时代。后PC时代里,嵌入式系统扮演了越来越重要的角色,被广泛应用于信息电器、移动设备、网络设备和工控仿真等领域。
嵌入式系统是以嵌入式计算机为核心,面向用户、面向产品、面向应用,软硬件可裁减的,适用于对功能、可靠性、体积、成本、功耗等综合性能有严格要求的计算机系统。随着嵌入式系统的广泛应用,传统的前/后台程序开发机制已经不能满足日益复杂和荷记得的实现要求,因而现场常常采用嵌入式产时操作系统PROS(RealTimeOperationSystem)开发实时多任务系统。嵌入式实时操作系统一般可以提供多任务的任务调度、时间管理、任务间通信和同步以及内存管理MMU(MemoryManagerUnit)等重要服务,使得嵌入式应用程序易于设计和扩展。采用RTOS可以使嵌入式产品更可靠、开发周期更短。在嵌入式应用中使用RTOS已经成为当前嵌入式应用的一个热点。
完成简单功能的嵌入式系统一般不需要操作系统。如,以前许多MCS51系列单片机组成的小系统就只是利用软件实现简单的控制环路;但是随着所谓后PC时代的来临,嵌入式系统设计日趋复杂,嵌入式操作系统就必不可少了。
嵌入式RTOS在系统实时高效性、硬件的相关依赖性、软件固化以及应用的专业性等方面具有较为突出的优势。一般而言,嵌入式操作系统不同于一般意义的计算机操作系统,它有占用空间小、执行效率高、方便进行个性化定制和软件要求固化存储等特点。
从20世纪80年代起,国际上就有一些IT组织、公司,开始进行商用嵌入式操作系统和专用操作系统的研发。这其中涌现了一些著名的嵌入式操作系统,如Microsoft公司的WinCE和WindRiverSystem公司的VxWorks就分别是非实时和实时嵌入式操作系统的代表。但是商用产品的造价都十分昂贵,用于一般用途会提高产品成本从而失去竞争力。
UC/OS和uClinux操作系统是用两种性能优良、源码公开且被广泛应用的免费嵌入式操作系统,可以作为研究实时操作系统和非实时操作系统的典范。本文通过uC/OS和uClinux的对比,分析和总结嵌入式操作系统应用中的若干重要问题,归纳嵌入式系统开发中操作系统的选型依据。