RT-THREAD的版本
- RT-Thread nano版本:小资源场景的MCU用于简单控制
- RT-Thread宏内核版本:中等规模的IoT节点
- RT-Thread Smart(混合微内核版本):功能丰富的智能设备,主要面向带MMU的中高端处理器
关于宏内核与微内核:
宏内核:用户应用程序是通过系统调用,陷入到内核中,然后再读取、访问文件。如安卓。
微内核:用户应用程序通过发送IPC消息给到运行在用户态的文件系统服务来访问文件。如Google的Fuchsia;Intel在CPU的管理引擎中使用Minix微内核操作系统;华为的鸿蒙分布式微内核。
微内核有点:操作系统启动快;应用崩溃时不再影响到内核、系统其他无关功能;差分升级而不是APP升级需要升级整个软件。
RT-Thread nano版:
Nano 不含 Scons 构建系统,不需要 Kconfig 以及 Env 配置工具,也去除了完整版特有的 device 框架和组件,仅是一个纯净的内核。
发环境时,可以选择移植或使用 Nano 的方法:
- 在 RT-Thread Studio 上使用 RT-Thread Nano
- 基于 KEIL MDK 移植 RT-Thread Nano
- 基于 CubeMX 移植 RT-Thread Nano
- 基于 IAR 移植 RT-Thread Nano
- 移植 RT-Thread Nano 到 RISC-V
4、使用简单
RT-Thread Nano 在使用上也非常简单,带给开发者友好的开发体验。
- 易裁剪:Nano 的配置文件为 rtconfig.h,该文件中列出了内核中的所有宏定义,有些默认没有打开,如需使用,打开即可。具体的配置可见 Nano 版块的 RT-Thread Nano 配置 教程。
- 易添加 FinSH 组件:FinSH 组件 可以很方便的在 Nano 上进行移植,而不再依赖 device 框架,只需要对接两个必要的函数即可完成 FinSH 移植。
- 自选驱动库:可以使用厂商提供的固件驱动库,如 ST 的 STD 库、HAL 库、LL 库等,可以自行选择。
- 完善的文档:包含 内核基础、线程管理 (例程)、时钟管理 (例程)、线程间同步 (例程)、线程间通信 (例程)、内存管理 (例程)、中断管理 ,以及 Nano 版块的移植教程。