分类: LINUX
2009-05-31 10:02:35
前 言
研究目的和意义
近几年,嵌入式系统很快就进入了人们的生活,与人们的生活越来越密切,发展也越来越迅速。在这个新的领域中,我们对它还很陌生,通过该课题的研究,对一个新领——域嵌入式系统有一个全新的了解,在研究嵌入式系统的同时,找到一种新的学习开发嵌入式的方法,并可以在以后的学习中不断增加这方面的知识,还可以通过它认识学习比较前卫的微处理器ARM,而且在Windows系统下的虚拟仿真环境中可学习设计出ARM9系列微处理器的驱动程序。
课题以移植虚拟仿真环境SkyEye为要点,对各种嵌入式系统进行构建,由于目前SkyEye的版本更新很快,它本身的仿真环境是针对对用途而设计的,在Windows下对各种嵌入式系统没有完整的开发设计过程,特别是目前对基于ARM9系列微处理器的嵌入式系统ARM Linux涉及到的系统移植过程散乱而复杂,为了寻找跟随目前SkyEye和ARM处理器的发展趋势,选择了这个课题,并将它所设计到的都进行一番深入的学习探索研究。
本课题涉及到虚拟机在Windows系统上的移植,虚拟仿真环境SkyEye在虚拟机下的移植和使用,逐渐深入到对嵌入式系统的认识和在仿真环境中的构建,深入到基于ARM构架的嵌入式处理器S3C2410的嵌入式系统的建立。课题的研究是在总结前人系统研究的基础上进行探索研究,通过对虚拟机Cygwin在Windows系统上的移植,对虚拟仿真环境SkyEye的整个过程的探索,不断增加创新意识和动手能力。
国内外研究现状和发展趋势
当今社会,嵌入式系统已经渗透到人们工作、生活中的各个领域,嵌入式处理器已占分散处理器市场份额的94%。而嵌入式系统也蓬勃发展,不仅继承了源码开放、内核稳定高效、软件丰富等优势,还具备支持广泛处理器结构和硬件平台、占有空间小、成本低廉、结构紧凑等特点。
虚拟技术已从企业计算空间转向嵌入式世界。虚拟技术包括在虚拟计算机监控器的控制下提取系统资源,有时称为系统管理程序。系统管理程序使运行同时执行环境具有可能性,每个环境孤立存在,分别运行在基础硬件平台的一个虚拟代表上。从器件整合和资源最优化的角度来说,虚拟计算机有很多优点。它们可以采用不同设计方法,从“纯粹”的或“完全”的虚拟到“部分虚拟(Paravirtualization)”,部分虚拟是嵌入式应用中最常用的方法。在部分虚拟中,进行进一步的细分,包括微内核、微调度程序和轻薄的产品,这种轻薄产品实际上扩大了硬件抽象层,使之包括了虚拟特性。
主要研究内容及要解决的问题
使用虚拟机Cygwin在Windows系统下建立Linux的模拟环境,在虚拟机中移植虚拟仿真开发环境SkyEye,通过SkyEye的虚拟仿真开发环境构建各种嵌入式系统。下文主要在仿真开发环境SkyEye下对μC/OS-II、μCLinux和基于S3C2410的嵌入式Linux系统进行逐步开发。
通过SkyEye仿真集成环境可以很方便地进入到嵌入式系统软件学习和开发的广阔天地中。尤其对于缺少嵌入式硬件开发环境和软件开发环境的用户来说,它将是一个非常有效的学习工具和开发手段,因为SkyEye的整个软件系统都是Open Source的,且基于GPL协议(μCOS-II除外)。因此,如果要学习Linux操作系统或者进行嵌入式系统开发,但苦于没有硬件支持,SkyEye仿真环境软件是一个很好的选择!
研究与具体硬件无关的系统软件(如TCP/IP协议栈等),采用SkyEye可以有效地提高工作效率,可以直接在μCOS-II、μCLinux和ARM Linux for SkyEye上进行开发和调试,而与具体硬件打交道的各种driver已经存在,且有源码级调试环境,只需关心高层的逻辑设计和实现就可以了。
SkyEye本身作为一个开放式的项目体系,可以划分为多个独立的子项目系统。通过参与SkyEye的各个子项目,可以进一步学习、分析、精通Linux内核,掌握ARM嵌入式CPU编程。