1.嵌入式操作系统的概念
嵌入式操作系统通常由硬件驱动程序、调式代理、操作系统内核、文件系统和可配置组件等功能组成,并为应用软件提供标准的API(Application Programming Interface)接口服务。
2.一般嵌入式操作系统的体系结构
从嵌入式操作系统体系架构看,主要存在4中结构:整体结构、层次结构、客户/服务器结构和面向对象结构。
整体结构也称为模块结构或无序结构,它是基于结构化程序设计的一种软件设计方法。图1给出了传统嵌入式操作系统的体系结构。
图1 一般嵌入式操作系统的体系结构
2.1硬件
如图1所示,嵌入式操作系统通常应支持多种处理器类型,一般选择嵌入式操作系统产品前,需要考虑对该产品覆盖处理器的能力。
2.2 与硬件相关的软件
对于与硬件相关的软件而言,与处理器硬件相关的驱动称为结构支持包(ASP),与处理器外围芯片相关的驱动称之为板级支持包(BSP),对于特殊硬件配置,如SCSI盘、图形处理芯片,其驱动程序应单独设计。
2.3 嵌入式操作系统
2.3.1嵌入式操作系统核心
嵌入式操作系统通过调用硬件驱动软件实现对硬件资源的管理,其本身软件可与硬件无关,嵌入式操作系统核心是由操作系统内核和操作系统可配置库组成,操作系统内核是系统主体,承载着操作系统核心功能,其主要完成任务管理、内存管理、任务间通信管理、时钟管理和中断管理等功能。操作系统可配置库是操作系统功能的延伸,为应用程序提供更加丰富的服务,可配置库是一种可配置、可剪裁代码,用户可根据目标系统的需求,进行静态或动态裁剪。其主要包括运行时库、设备管理、人机接口、图形图像以及API扩展等。
2.3.2文件系统
文件系统是嵌入式操作系统必须支持组件功能,它主要是为嵌入式系统提供数据或程序的存储能力。在嵌入式操作系统中,通常提供了DosFS文件系统,为了满足实时性要求,不同操作系统产品还提供了其他类型的文件系统,如VxWorks还提供了RT11FS,TSFS和TFFS等。
2.3.3I/O系统
I/O系统是嵌入式操作系统必须提供的组件功能,它能够为嵌入式系统提供标准的输入输出管理。I/O系统的主要功能是为数据传输操作选择输入/输出设备、控制被选输入/输出设备与主机之间的信息交换。
2.3.4网络系统
网络系统是嵌入式操作系统为满足嵌入式系统的互联互通所支持网络通信协议软件,如TCP/IP、UDP等,同时可支持宿主机的软件开发。