RTEMS的裁剪

RTEMS的裁剪是通过一系列宏定义来完成的,通过这些宏设置RTEMS相关全局变量,RTEMS配置表,CPU依赖信息表,系统初始化任务表,以及用户初始化任务表,除了完成相关的系统功能之外,还可以提供系统的配置模板,可以通过预编译的方式来实现操作系统的裁剪,常见的方式如下

#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_MAXIMUM_TASKS4
#define CONFIGURE_RTEMS_INI$SKS_TABLE
#define CONFIGURE_EXTRA_TASK_STACKS

在cpukit/sapi/include目录下的confdefs.h是进行宏配置的模板文件,当然,应用程序也可以根据需要进行重写。如下代码是一个示例应用程序,可作为开发移植的参考,示例中配置了最大支持的任务数为4,同时,需要注意的是,rtems_task_argument ignored表示忽略参数。

#include <bsp.h>
#include <stdio.h>
#include <stdlib.h>
rtems_task_Init(
    rtems_task_argument argument
    //rtems_task_argument ignored
)

//配置项
#define CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER

#define CONFIGURE_MAXIMUM_TASKS
#define CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEMS

#define CONFIGURE_RTEMS_INIT_TASK_TABLE
#define CONFIGURE_EXTRA_TASK_STACKS (3 * RTEMS_MINIMUM_STACK_SIZE)
#define CONFIGURE_INIT
#include <rtems/confdefs.h>
{
    print("hello world");
    exit(0)
}
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值