RT-Thread 内核配置示例(学习)

RT-Thread内核配置示例

RT-Thread的一个重要特性是高度可裁剪性,支持对内核进行精细调整,对组件进行灵活拆卸。

配置主要是通过修改工程目录下的rtconfig.h文件来进行,用户可以通过打开/关闭该文件中的宏定义来对代码进行条件编译,最终达到系统配置和裁剪的目的,如下:

在实际应用中,系统配置文件rtconfig.h是由配置工具自动生成的,无需手动更改。

常见宏定义说明

#define RT_USED __attribute__((used))

RT_USED,该宏的作用是向编译器说明这段代码有用,即使函数中没有调用也要保留编译。
例如RT-Thread自动初始化功能使用了自定义的段,使用RT_USED会将自定义的代码段保留。

#define RT_UNUSED ((void)x)

RT_UNUSED,表示函数或变量可能不使用,这个属性可以避免编译器产生警告信息。

#define RT_WEAK __weak

常用于定义函数,编译器在链接函数时会优先链接没有该关键字前缀的函数,如果找不到则再链接由weak修饰的函数。

#define ALIGN(4) __attribute__((aligned(n)))

在给某对象分配地址空间时,将其存放的地址按照n字节对齐,这里n可取2的幂次方。
字节对齐的作用不仅是便于CPU快速访问,同时合理的利用字节对齐可以有效地节省存储空间。

#define RT_ALIGN(size,align)  (((size) + (align) - 1) & ~((align) - 1))

作用是将size提升为align定义的整数的倍数,例如,RT_ALIGN(13,4)将返回16。

你可能感兴趣的:(RT-Thread,学习,RT-Thread,嵌入式实时操作系统)