如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
万方数据嵌入式操作系统及其移植技术1嵌入式操作系统2嵌入式操作系统的移植苟双全,姚家鸣甘肃科技随着现代化技术的发展,嵌入式系统的应用范围越来越广泛,基于嵌入式技术的产品从尖端复杂的航空航天精密仪器、医疗器材到时尚的信息家电、消费电了等众多领域,嵌入式系统正越来越受重视。嵌入式系统的核心是嵌入式操作系统,常用的嵌入式操作系统有VxWorks,PalmOS,Win—dowsCE,Linux,pSOS,uCOS—II,Nucleus等。1.1嵌入式操作系统的必要性及特点早期的硬件设备很简单,软件的编程和调试上具也很原始,与硬件系统配套的软件都必须从头编写。程序大都采用宏汇编语言,调试是一件很麻烦的事。随着系统越来越复杂,操作系统就显得很必要。因为:(1)操作系统能有效管理越来越复杂的系统资(2)操作系统能够把硬件虚拟化,使得开发人员从繁忙的驱动程序移植和维护中解脱出来。(3)操作系统能够提供库函数、驱动程序、上具集以及应用程序。与其他类型的操作系统相比,嵌入式操作系统具有以下一些特点:1)体积小,2)实时性,3)特殊的开发调试环境uCOS一|I及NucIeus简介uCOS—II是一个基于优先级的抢占式实时多任务操作系统,它包含了实时内核任务管理、时问管理信号量、内存管理等,可用于8位16位和32位单片机或DSP,用户只要有标准的ANSIC交叉编译器,有汇编器、连接器等软件工具就可以将uCOS—II嵌入到开发的产品中。用户还可以根据自己的需要对uCOS—II进行裁剪。uCOS—II源代码公开,大部分是用ANSIC编写的,只有与处理器硬件相关的部分是用汇便语言编写的,移植性相对来说较强。,uCOS—II的稳定性、可靠性也得到了认可,已通过了美国的FAA认证.Nucleus嵌入式实时操作系统是ATI公司的产品,它采用微内核技术,提供丰富的功能模块,并且开放源码。在以往的工作中,我们以NucIeus为基础开发了大量的软件产品。随着硬件技术的发展,旧的芯片而临淘汰。所以需要将新的嵌入式操作系统移植到新硬件环境中,使各种软件产品可以不加改动地实现移植,从而大大缩短整个软件系统的开发周期。下面介绍将基于EP7312的Nucleus嵌入式操作系统移植到基于Xscale的硬件环境中的过程,主要步骤有:移植硬件初始化模块;移植中断处理模块;移植进程调度模块;移植操作系统时钟等。2.1硬件初始化硬件初始化从CPU上电开始到操作系统接管所有资源结束。经过总结,嵌入式系统硬件初始化部分主要包括Memory控制器初始化;时钟初始化;内存管理单元(MMU)及Cache初始化;操作系统代码搬移;堆栈初始化等儿大步骤。虽然不同硬件的初始化步骤大致相同,但由于具体实现存在较大差别,所以移植操作系统时需要在保证主要步骤不变的前提下重写硬件初始化模块。EP7312与XScale的CPU控制器和协处器不第24卷第13期(西北师范大学数学与信息学院,甘肃兰州730070)摘要:嵌入式系统是固化在硬件里而的系统,嵌人式硬件的更新往往造成相应软件系统需要重新开发.为鹪决这一问题,可以将嵌入式软件系统建立在嵌入式操作系统之上。通过移植操作系统达到移植整个软件系统的目的.本文以基于EP7312处理器的Nucleus嵌入式操作系统移植到基于XScale处理器的硬件环境中的过程为例,说明了嵌入式操作系统在不同处理器上移植的过程。关键词:嵌入式操作系统;移植;Nucle∞源。2008年7月GansuScienceandTechnologyNo.13J扯Z.中图分类号:TN9191.2V以.242008’万方数据FD-“_d一(FD·Ick一·铷P娜疆-s磁)第13期苟双全等:嵌入式操作系统及其移植技术同,在移植Nucleus时,我们重写了硬件初始化部分。下而逐个介绍硬件初始化的主要步骤:(1)初始化Memory控制寄存器。因为程序代码在Memory(SDRAM或Flash)中执行,若初始化错误将影响代码的正确执行。Memory控制寄存器的初始化主要包括:首先初始化静态Memory(Flash),其次初始化动态Memory(SDRAM)。初始化代码主要配置Memory控制器的数据宽度、寻址方式、访问速度、等待周期等参数。(2)配置硬件系统时钟及操作系统时钟。时钟初始化包括:首先硬件时钟使能为CPU、Memory、设备控制器提供时钟;其次操作系统时钟初始化,为软件特别是操作系统提供时钟。另外,在该步骤中可以对XScale的运行频率和运行模式进行初始化。(3)初始化MMU和Cache。在具备MMU单元的CPU初始化过程,该步骤比较重要,关系到整个软件系统的正确运行。MMU和Cache初始化包含TLB地址映射表的建立、MMU及Cache使能、代码跳转,其主要通过控制协处理器完成。TL