文档解析
本文介绍了一种面向窄带物联网(NB-IoT)设备的微内核实时操作系统(RTOS)——nM-MKRTOS的设计与实现。针对NB-IoT设备对体积、能耗和稳定性的严格要求,以及对快速响应的需求,作者提出了一种无内存管理单元(MMU)的微内核RTOS。该系统利用微内核的优势,通过动态加载与链接(DL2)技术实现内存复用和快速启动,并采用模块化开发提高系统稳定性。nM-MKRTOS在内存利用率上提高了56.25%,系统启动时间在三个任务子集上分别减少了57.59%、52.55%与47.59%。该系统适用于智慧农业、智慧校园等场景,能够降低系统成本,提高系统稳定性。
文章首先分析了NB-IoT设备中宏内核RTOS存在的问题,如硬件资源需求高、内核错误可能导致系统崩溃等。随后,作者详细介绍了nM-MKRTOS的设计,包括调度管理模块、任务间通信模块、内存管理模块、DL2模块和策略优化模块。调度管理模块采用抢占式任务调度算法,支持同优先级任务时间片轮转执行。DL2模块负责模块的快速加载和执行,而策略优化模块则包含加载策略优化和内存“卸载”功能,以提高系统开机速度和内存复用。
在实验部分,作者使用具有64KB RAM、512KB ROM和72MHz主频的硬件设备进行测试。结果显示,nM-MKRTOS的可加载文件体积优化效果显著,仅为标准ELF文件大小的10.4%~68.4%,且在执行性能上与ELF文件相比几乎没有差异。系统启动速度测试表明,采用权重加载策略能够显著减少启动时间。内存复用测试中,内存利用率提高了56.25%。
评论