论文部分内容阅读
近年来,伴随着智能型手机的崛起,手机操作系统也逐渐受到重视。以前手机操作系统大多是手机厂商自行研发且封闭的系统;自Google公司开始涉足手机市场,并着手开发一个完全免费开放的手机操作系统平台Android,全球相关企业和高校界争先相研究Android系统的开发及应用[1][2]。
Android系统官方目前只提供对ARM平台[8][9][10][21]的支持[33][34][36],有能力移植Android系统到非ARM平台的厂商通常不愿公开移植的步骤和代码。目前针对Android系统移植尤其是非ARM硬件架构移植的文献非常稀缺[37]138][39],故急需开展非ARM硬件架构的移植工作。而SuperH[6][7]是一款Renesas RISC嵌入式微处理器核,是一个有代表性的非ARM硬件架构。针对以上现状,本文研究并实现了基于SuperH架构的Android系统移植。
本文主要的工作集中以下几个部分:
论文在分析Android系统与SuperH架构的基础上,提出了Uboot、内核、Android层次化分析及移植思路;
在系统启动内核前,有许多工作要做。例如:需要将硬件设置为稳定状态,需要将内核加载入主存等,故本文首先以Uboot为例分析并实现BootLoader移植;
在进入Android系统前,必须先启动内核。移植工作量最大的部分是驱动移植,而内核同驱动密切相关,故本文在分析并实现Uboot移植后分析并实现内核驱动移植,在这部分以三个常用的模块为例实现驱动移植;
内核引导后,不同的系统进入各自的Init进程,进而开始运行用户空间软件。本文在这部分重点分析并实现Copybit硬件加速功能,该移植工作涉及用户空间及内核空间的多个方面,而目前鲜有文献分析论述这部分内容,故本为对该部分给予了详尽的分析。
在描述移植理论和技术的章节中,本文详细分析了代码的组织结构,逻辑框架和移植思路。经过将近一年的努力,移植工作已经告一段落。目前使用的R2r开发板已经可以运行的Linux系统,也可以进入到Android的启动界面,移植的预期目标完成。