论文部分内容阅读
嵌入式操作系统是嵌入式系统重要的运行环境,它能否高效、稳定、安全地运行直接关系到嵌入式系统开发的成败。嵌入式操作系统的成功移植是解决上述问题的基础。Nucleus作为一款传统的实时嵌入式操作系统,被广泛应用于消费类电子产品。然而由于商用技术保密或其他原因,关于Nucleus内核移植技术的公开研究比较少,这无疑抬高了我国进入Nucleus嵌入式开发领域的技术门槛,因此研究Nucleus内核的移植技术具有重要的理论价值和实际意义。 本论文针对基于ARM体系结构v.5版本的i.MX21处理器,在自主研发的宽带通信SoC板级原型开发平台上,对Nucleus内核的移植技术进行了深入的研究和实践。Nucle-us内核移植过程包括处理器体系相关的初始化、Nucleus内核移植修改以及设备驱动开发三个主要部分。处理器体系相关的初始化包括硬件时钟、存储管理、系统资源及中断控制器等关键资源的初始化,重点讨论了ARM926EJ-S微内核中的存储管理单元(Memory Management Unit,MMU)在Nucleus不支持虚拟地址访问要求下的配置方案;Nucleus内核移植修改重点关注软硬时间衔接处理以及部分硬中断和操作系统可管理的中断服务程序之间的映射处理两方面的内容,并针对中断响应移植处理提出了一种适用于ARM标准中断控制器的移植处理方案;设备驱动开发总结了Nucleus下I/O设备驱动的基本结构和设计模板,设计并完成了Nucleus串口驱动程序的开发。 最后,本文从任务级和系统级对移植系统进行了验证测试。测试结果的分析表明Nucleus内核移植成功;并通过自主开发的系统加载程序,完成了移植代码的固化,实现移植系统的自启动。