基于uboot引导加载WindowsCE系统的方法

文档序号:6649143阅读:1068来源:国知局
基于uboot引导加载WindowsCE系统的方法
【专利摘要】本发明公开了一种利用uboot引导加载WindowsCE系统的方法,属于移动设备的操作系统引导加载【技术领域】。移动设备上电,uboot程序启动,完成内外部设备初始化,从存储器中读取WindowsCE内核至内存,跳转至内存中内核启动地址,启动WindowsCE系统。本发明通过使用遵循GPL条款的uboot代替WindowsCE自带引导加载程序nboot与eboot,降低了其引导加载程序的冗余性,增强了uboot的通用性,也扩展了WindowsCE系统的应用范围。
【专利说明】基于1^001引导加载VIII 11010^3(^系统的方法

【技术领域】
[0001]本发明涉及一种基于11)3001:引导加载1111(10界8(32系统的方法,属于移动设备的操作系统引导加载【技术领域】。

【背景技术】
[0002]11-8001:,全称 11111^61*8511 8001: 103(161',是遵循⑶[条款的开放源码项目,11)3001:以其通用性而著称,支持7x101^8,咖X,^£18,^108,1^11x08等嵌入式内核的引导加载,同时在等多个处理器系列也能保证其较高的可靠性和稳定性,但对于系统的引导加载并不支持。
[0003]1111(10界8⑶系统是微软公司推出的一款针对嵌入式设备的操作系统,1111(10界8⑶系统具有企业级的稳定性,简洁的线程管理、伸缩自如的数据库容量等突出优点,被广泛应用于工业领域及消费类电子产品中。1111(10旧⑶系统的引导加载程序为微软公司开发11)3001:和6)3001:组合方式,相对于开放式的11)3001:而言,1113001:与6)3001:的组合方式过于冗杂,不利于系统跨平台的推广和应用。


【发明内容】

[0004]为了解决现有技术的不足,本发明提供了一种基于11)3001:引导加载1111(10界8(1:系统的方法,该方法能够降低其引导加载程序的冗余性,扩展11)3001:及系统适用范围。
[0005]本发明为解决其技术问题所采用的技术方案是:提供了一种基于油0於引导加载1111(10^802系统的方法,具体包括以下步骤:
[0006](1)对存储器进行分区,以将存储器的地址空间分为用于存储油0於.化!1文件的第一存储空间,以及用于存储爾.他0的第二存储空间,得到第二存储空间的存储起始地址;
[0007](2)修改11=(10界8⑶内核的83?源码中定义存储器分区的文件卜,以使指定的爾.11%存储起始地址大于步骤(1)分区得到的第二存储空间的存储起始地址;获取1111(10^802内核运行的内存起始地址,并重新编译内核源码,得到1111(10界8(1:内核镜像文件爾.汕0 ;
[0008](3)在11)3001:中添加评1=(10界8(1;内核引导加载代码,11=(10界8(1;引导加载代码用于读取爾.他0并将其存储至内存,再跳转至内存起始地址处启动1111(1冊8⑶内核;编译生成
11)3001:.13111 文件;
[0009](4)将爾.他0烧写入存储器的第二存储空间,将编译生成的新的油00七13111烧写入存储器的第一存储空间;
[0010](5)将设备上电,执行编译生成的11)3001:.13111,初始化设备硬件,执行1111(10界8 02加载程序,从存储器中将1111(10*8 02系统内核加载至内存,随后跳转启动系统。
[0011]步骤(1)所述的存储器为版111 (1 ?188110
[0012]步骤⑴所述的第一存储空间的大小为21。
[0013]步骤(2)所述的爾.汕0的存储起始地址为0x280000。
[0014]本发明基于其技术方案所具有的有益效果在于:与现有技术相比,本发明增加了1113001:对1111(10*8⑶系统的支持,扩展了 11)3001:作为一种)3001:1051(16:^程序的适用范围,同时也减少了 1111(10界8(32系统对于原生11)3001:与6)3001:结合引导加载方式的依赖,增强了评111 系统的可移植行,相对于11)3001:启动后,通过使用网络,从服务器端下载213001:及评111(10界8⑶镜像随后启动£)3001:及1111 (1(3界8⑶的方式,本发明通过使用简洁的分区,11)3001:启动后直接从本地存储器加载并启动内核镜像,这使得整体启动过程更加稳定、高效与快速,扩展了 1111(10界8⑶系统的应用范围,增强了 11)3001:通用性,扩展了 1111(10界8⑶操作系统的应用范围。

【专利附图】

【附图说明】
[0015]图1是本发明实施例版111(1分区结构图。

【具体实施方式】
[0016]下面结合附图和实施例对本发明作进一步说明。
[0017]本发明提供了一种基于油00七引导加载评111(10界系统的方法,硬件平台采用^1-1611(117八咖公司生产的11=16410开发板,该平台可以作为平板电脑、手机等移动设备的开发平台。主要硬件配置如下:仙1架构0^(^1111811118 3306410八,仙11176了2?-3核,主频533册12,最高6671112),001?内存(2561 00尺狀1、3261丨数据总线)、恥11(1打&吐存储器(168版111(1 掉电非易失)、各类外设及接口模块(分辨率800x6407寸1X0显示器、按键、3010 接口等
[0018]本发明的方法具体包括以下步骤:
[0019](1)对存储器进行分区,以将存储器的地址空间分为用于存储油00七化!1文件的第一存储空间,以及用于存储爾.他0的第二存储空间,参照图1,第一存储空间的存储起始地址为0,第一存储空间的大小为21,第二存储空间的存储起始地址为21 ;
[0020](2)修改11=(10界8⑶内核的83?源码中定义存储器分区的文件卜,以使指定的爾.他0存储起始地址大于步骤(1)分区得到的第二存储空间的存储起始地址,参照图1,所述的爾.他0的存储起始地址为0x280000 ;获取⑶内核运行的内存起始地址,并重新编译内核源码,得到1111(1(^8⑶内核镜像文件爾.他0 ;
[0021](3)在11)3001:中添加11=(10界8(^2内核引导加载代码,11=(10界8(^2引导加载代码用于读取爾.他0并将其存储至内存,再跳转至内存起始地址处启动1111(1冊8⑶内核;编译生成11)3001:.13111 文件;
[0022](4)将爾.他0烧写入存储器的第二存储空间,将编译生成的新的油00七13111烧写入存储器的第一存储空间;
[0023](5)将设备上电,执行编译生成的11)3001:.13111,初始化设备硬件,执行1111(10界8 02加载程序,从存储器中将1111(10*8 02系统内核加载至内存,随后跳转启动系统。
【权利要求】
1.一种基于uboot引导加载WindowsCE系统的方法,其特征在于具体包括以下步骤: (1)对存储器进行分区,以将存储器的地址空间分为用于存储uboot.bin文件的第一存储空间,以及用于存储NK.nbO的第二存储空间,得到第二存储空间的存储起始地址; (2)修改WindowsCE内核的BSP源码中定义存储器分区的文件loader,h,以使指定的NK.nbO存储起始地址大于步骤(1)分区得到的第二存储空间的存储起始地址;获取WindowsCE内核运行的内存起始地址,并重新编译内核源码,得到WindowsCE内核镜像文件NK.nbO ; (3)在uboot中添加WindowsCE内核引导加载代码,WindowsCE引导加载代码用于读取NK.nbO并将其存储至内存,再跳转至内存起始地址处启动WindowsCE内核;编译生成uboot.bin 文件; (4)将NK.nbO烧写入存储器的第二存储空间,将编译生成的新的uboot.bin烧写入存储器的第一存储空间; (5)将设备上电,执行编译生成的uboot.bin,初始化设备硬件,执行Windows CE加载程序,从存储器中将Windows CE系统内核加载至内存,随后跳转启动系统。
2.根据权利要求1所述的基于uboot引导加载WindowsCE系统的方法,其特征在于:步骤(1)所述的存储器为Nand Flash。
3.根据权利要求1所述的基于uboot引导加载WindowsCE系统的方法,其特征在于:步骤(1)所述的第一存储空间的大小为2M。
4.根据权利要求3所述的基于uboot引导加载WindowsCE系统的方法,其特征在于:步骤(2)所述的NK.nbO的存储起始地址为0x280000。
【文档编号】G06F12/02GK104503922SQ201510024805
【公开日】2015年4月8日 申请日期:2015年1月19日 优先权日:2015年1月19日
【发明者】熊永华, 吴敏, 郭述帆 申请人:中国地质大学(武汉)
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1