嵌入式实时操作系统uC/OS-II概述
一、 uC/OS-II是一种小型的嵌入式操作系统,它只提供了任务管理,任务通信同步和简单的存储管理三项基本功能。
二、 uC/OS-II作为一个微内核,它只对计算机的处理器和硬件时钟进行了抽象和封装,而没有提供其他的硬件抽象层(HAL)。在移植uC/OS-II时,其主要工作就是根据具体硬件换一个或添加一个硬件抽象层。
三、 uC/OS-II是基于优先级的可剥夺型内核,系统中的所有任务都有一个唯一的优先级别,它适合应用在实时性要求较强的场合。
四、 uC/OS-II的文件结构
a)与应用程序相关的文件
1)INCLUDES.H
INCLUDES.H是uC/OS-II的主头文件,在每个.C文件中都要包含这个文件。也就是说在.C文件的头文件应有如下语句。
#include "includes.h"
INCLUDES.H文件的内容为:
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <stdlib.h>
#include <conio.h>
#include <dos.h>
#include <setjmp.h>
#include "/software/ucos-ii/ix86l/os_cpu.h" //与应用程序相关
#include "os_cfg.h"//与应用程序相关
#include "/software/blocks/pc/source/pc.h"//与应用程序相关
#include "/software/ucos-ii/source/ucos_ii.h"//与应用程序相关
从文件的内容可看到,这个文件把工程项目中应包含的头文件都集中到了一起,使得开发者无须再去考虑项目中的每一个文件究竟应该需要或者不需要哪些头文件了。
2)OS_CFG.H
OS_CFG.H是配置文件。uC/OS-II是依靠编译时的条件编译来实现软件系统的裁剪性的,即把用户可裁剪的代码段写在#if和#endif预编译指令之间,在编译时根据#if预编译指令后面常数的值来确定是否该代码段进行编译。
此外,配置文件OS_CFG.H还包括与项目相关的其他一些常数的设置。
配置文件OS_CFG.H就是为用户设置上述的这些常数值的文件。当然在这个文件中对所有配置常数事先都预制一些默认值,用户可根据需要对这些预设值进行修改。
内容如下:
#define OS_MAX_EVENTS 2 /* Max. number of event control blocks in your application ... */
/* ... MUST be >= 2 */
#define OS_MAX_MEM_PART

本文介绍了嵌入式实时操作系统uC/OS-II,它是一个仅提供任务管理、任务通信同步和简单存储管理的微内核系统。uC/OS-II不提供硬件抽象层,移植时主要工作是创建或修改硬件抽象层。该系统是基于优先级的可剥夺型内核,适用于实时性强的应用场景。内容包括uC/OS-II的文件结构,如INCLUDES.H、OS_CFG.H等配置文件以及与计算机硬件相关的OS_CPU.H、OS_CPU_A.ASM和OS_CPU_C.C文件。

439

被折叠的 条评论
为什么被折叠?



