CN104503922B - 基于uboot引导加载WindowsCE系统的方法 - Google Patents

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

Info

Publication number
CN104503922B
CN104503922B CN201510024805.4A CN201510024805A CN104503922B CN 104503922 B CN104503922 B CN 104503922B CN 201510024805 A CN201510024805 A CN 201510024805A CN 104503922 B CN104503922 B CN 104503922B
Authority
CN
China
Prior art keywords
windowsce
uboot
memory
loading
systems
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201510024805.4A
Other languages
English (en)
Other versions
CN104503922A (zh
Inventor
熊永华
吴敏
郭述帆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China University of Geosciences
Original Assignee
China University of Geosciences
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China University of Geosciences filed Critical China University of Geosciences
Priority to CN201510024805.4A priority Critical patent/CN104503922B/zh
Publication of CN104503922A publication Critical patent/CN104503922A/zh
Application granted granted Critical
Publication of CN104503922B publication Critical patent/CN104503922B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开了一种利用uboot引导加载Windows CE系统的方法,属于移动设备的操作系统引导加载技术领域。移动设备上电,uboot程序启动,完成内外部设备初始化,从存储器中读取Windows CE内核至内存,跳转至内存中内核启动地址,启动Windows CE系统。本发明通过使用遵循GPL条款的uboot代替Windows CE自带引导加载程序nboot与eboot,降低了其引导加载程序的冗余性,增强了uboot的通用性,也扩展了Windows CE系统的应用范围。

Description

基于uboot引导加载WindowsCE系统的方法
技术领域
本发明涉及一种基于uboot引导加载WindowsCE系统的方法,属于移动设备的操作系统引导加载技术领域。
背景技术
U-Boot,全称Universal Boot Loader,是遵循GPL条款的开放源码项目,uboot以其通用性而著称,支持Linux、NetBSD,VxWorks,QNX,RTEMS,ARTOS,LynxOS等嵌入式内核的引导加载,同时在PowerPC、ARM、x86、MIPS、XScale等多个处理器系列也能保证其较高的可靠性和稳定性,但对于WindowsCE系统的引导加载并不支持。
WindowsCE系统是微软公司推出的一款针对嵌入式设备的操作系统,WindowsCE系统具有企业级的稳定性,简洁的线程管理、伸缩自如的数据库容量等突出优点,被广泛应用于工业领域及消费类电子产品中。WindowsCE系统的引导加载程序为微软公司开发nboot和eboot组合方式,相对于开放式的uboot而言,nboot与eboot的组合方式过于冗杂,不利于WindowsCE系统跨平台的推广和应用。
发明内容
为了解决现有技术的不足,本发明提供了一种基于uboot引导加载WindowsCE系统的方法,该方法能够降低其WindowsCE引导加载程序的冗余性,扩展uboot及WindowsCE系统适用范围。
本发明为解决其技术问题所采用的技术方案是:提供了一种基于uboot引导加载WindowsCE系统的方法,具体包括以下步骤:
(1)对存储器进行分区,以将存储器的地址空间分为用于存储uboot.bin文件的第一存储空间,以及用于存储NK.nb0的第二存储空间,得到第二存储空间的存储起始地址;
(2)修改WindowsCE内核的BSP源码中定义存储器分区的文件loader.h,以使指定的NK.nb0存储起始地址大于步骤(1)分区得到的第二存储空间的存储起始地址;获取WindowsCE内核运行的内存起始地址,并重新编译内核源码,得到WindowsCE内核镜像文件NK.nb0;
(3)在uboot中添加WindowsCE内核引导加载代码,WindowsCE引导加载代码用于读取NK.nb0并将其存储至内存,再跳转至内存起始地址处启动WindowsCE内核;编译生成uboot.bin文件;
(4)将NK.nb0烧写入存储器的第二存储空间,将编译生成的新的uboot.bin烧写入存储器的第一存储空间;
(5)将设备上电,执行编译生成的uboot.bin,初始化设备硬件,执行WindowsCE内核引导加载代码,从存储器中将Windows CE系统内核加载至内存,随后跳转启动系统。
步骤(1)所述的存储器为Nand Flash。
步骤(1)所述的第一存储空间的大小为2M。
步骤(2)所述的NK.nb0的存储起始地址为0x280000。
本发明基于其技术方案所具有的有益效果在于:与现有技术相比,本发明增加了uboot对WindowsCE系统的支持,扩展了uboot作为一种bootloader程序的适用范围,同时也减少了WindowsCE系统对于原生nboot与eboot结合引导加载方式的依赖,增强了WindowsCE系统的可移植行,相对于nboot启动后,通过使用网络,从服务器端下载Eboot及WindowsCE镜像随后启动Eboot及WindowsCE的方式,本发明通过使用简洁的分区,uboot启动后直接从本地存储器加载并启动内核镜像,这使得整体启动过程更加稳定、高效与快速,扩展了WindowsCE系统的应用范围,增强了uboot通用性,扩展了WindowsCE操作系统的应用范围。
附图说明
图1是本发明实施例Nand Flash分区结构图。
具体实施方式
下面结合附图和实施例对本发明作进一步说明。
本发明提供了一种基于uboot引导加载WindowsCE系统的方法,硬件平台采用Friendly ARM公司生产的Mini6410开发板,该平台可以作为平板电脑、手机等移动设备的开发平台。主要硬件配置如下:ARM架构CPU(Samsung S3C6410A,ARM1176JZF-S核,主频533MHz,最高667Mhz),DDR内存(256M DDR RAM、32bit数据总线)、Nand Flash存储器(1GBNand Flash,掉电非易失)、各类外设及接口模块(分辨率800x6407寸LCD显示器、按键、SDIO接口等)。
本发明的方法具体包括以下步骤:
(1)对存储器进行分区,以将存储器的地址空间分为用于存储uboot.bin文件的第一存储空间,以及用于存储NK.nb0的第二存储空间,参照图1,第一存储空间的存储起始地址为0,第一存储空间的大小为2M,第二存储空间的存储起始地址为2M;
(2)修改WindowsCE内核的BSP源码中定义存储器分区的文件loader.h,以使指定的NK.nb0存储起始地址大于步骤(1)分区得到的第二存储空间的存储起始地址,参照图1,所述的NK.nb0的存储起始地址为0x280000;获取WindowsCE内核运行的内存起始地址,并重新编译内核源码,得到WindowsCE内核镜像文件NK.nb0;
(3)在uboot中添加WindowsCE内核引导加载代码,WindowsCE引导加载代码用于读取NK.nb0并将其存储至内存,再跳转至内存起始地址处启动WindowsCE内核;编译生成uboot.bin文件;
(4)将NK.nb0烧写入存储器的第二存储空间,将编译生成的新的uboot.bin烧写入存储器的第一存储空间;
(5)将设备上电,执行编译生成的uboot.bin,初始化设备硬件,执行WindowsCE内核引导加载代码,从存储器中将Windows CE系统内核加载至内存,随后跳转启动系统。

Claims (4)

1.一种基于uboot引导加载WindowsCE系统的方法,其特征在于具体包括以下步骤:
(1)对存储器进行分区,以将存储器的地址空间分为用于存储uboot.bin文件的第一存储空间,以及用于存储NK.nb0的第二存储空间,得到第二存储空间的存储起始地址;
(2)修改WindowsCE内核的BSP源码中定义存储器分区的文件loader.h,以使指定的NK.nb0存储起始地址大于步骤(1)分区得到的第二存储空间的存储起始地址;获取WindowsCE内核运行的内存起始地址,并重新编译内核源码,得到WindowsCE内核镜像文件NK.nb0;
(3)在uboot中添加WindowsCE内核引导加载代码,WindowsCE引导加载代码用于读取NK.nb0并将其存储至内存,再跳转至内存起始地址处启动WindowsCE内核;编译生成uboot.bin文件;
(4)将NK.nb0烧写入存储器的第二存储空间,将编译生成的新的uboot.bin烧写入存储器的第一存储空间;
(5)将设备上电,执行编译生成的uboot.bin,初始化设备硬件,执行WindowsCE内核引导加载代码,从存储器中将Windows CE系统内核加载至内存,随后跳转启动系统。
2.根据权利要求1所述的基于uboot引导加载WindowsCE系统的方法,其特征在于:步骤(1)所述的存储器为Nand Flash。
3.根据权利要求1所述的基于uboot引导加载WindowsCE系统的方法,其特征在于:步骤(1)所述的第一存储空间的大小为2M。
4.根据权利要求3所述的基于uboot引导加载WindowsCE系统的方法,其特征在于:步骤(2)所述的NK.nb0的存储起始地址为0x280000。
CN201510024805.4A 2015-01-19 2015-01-19 基于uboot引导加载WindowsCE系统的方法 Expired - Fee Related CN104503922B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510024805.4A CN104503922B (zh) 2015-01-19 2015-01-19 基于uboot引导加载WindowsCE系统的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510024805.4A CN104503922B (zh) 2015-01-19 2015-01-19 基于uboot引导加载WindowsCE系统的方法

Publications (2)

Publication Number Publication Date
CN104503922A CN104503922A (zh) 2015-04-08
CN104503922B true CN104503922B (zh) 2018-02-13

Family

ID=52945321

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510024805.4A Expired - Fee Related CN104503922B (zh) 2015-01-19 2015-01-19 基于uboot引导加载WindowsCE系统的方法

Country Status (1)

Country Link
CN (1) CN104503922B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106951257A (zh) * 2017-03-24 2017-07-14 济南浪潮高新科技投资发展有限公司 一种用Uboot_CDROM启动WinCE的实现方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104899091B (zh) * 2015-07-02 2018-11-27 中国地质大学(武汉) 一种智能嵌入式设备多操作系统切换方法
CN106598593A (zh) * 2016-12-13 2017-04-26 济南浪潮高新科技投资发展有限公司 一种利用Uboot U盘启动WinCE的方法
CN111381892B (zh) * 2018-12-29 2023-04-28 斑马智行网络(香港)有限公司 一种数据处理方法、装置、设备和机器可读介质
CN110348233A (zh) * 2019-07-01 2019-10-18 电子科技大学 一种基于arm的多级安全操作系统实现方法
CN112732345A (zh) * 2021-01-06 2021-04-30 北京科银京成技术有限公司 一种嵌入式系统的启动方法、装置、设备及存储介质
CN113126914B (zh) * 2021-03-26 2022-07-19 福州智象信息技术有限公司 一种基于智能音箱操作系统的个性化数据存储方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102799451A (zh) * 2012-06-29 2012-11-28 深圳市安普尔科技有限公司 Wince系统镜像构建方法和系统、wince系统镜像
CN103019771A (zh) * 2012-11-22 2013-04-03 惠州华阳通用电子有限公司 支持倒车时快速启动车载android操作系统的方法
CN103853557A (zh) * 2014-03-05 2014-06-11 中南大学 一种用Uboot网络启动WinCE的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102799451A (zh) * 2012-06-29 2012-11-28 深圳市安普尔科技有限公司 Wince系统镜像构建方法和系统、wince系统镜像
CN103019771A (zh) * 2012-11-22 2013-04-03 惠州华阳通用电子有限公司 支持倒车时快速启动车载android操作系统的方法
CN103853557A (zh) * 2014-03-05 2014-06-11 中南大学 一种用Uboot网络启动WinCE的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《基于DM6446的WINCE BSP的称植实现》;张俊臣;《万方数据库》;20110928;正文第7-19页 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106951257A (zh) * 2017-03-24 2017-07-14 济南浪潮高新科技投资发展有限公司 一种用Uboot_CDROM启动WinCE的实现方法

Also Published As

Publication number Publication date
CN104503922A (zh) 2015-04-08

Similar Documents

Publication Publication Date Title
CN104503922B (zh) 基于uboot引导加载WindowsCE系统的方法
CN103246534A (zh) 操作系统迁移方法及装置
CN101510161A (zh) 一种引导程序的实现方法、装置和便携式电子设备
CN106445569B (zh) Vxworks操作系统的嵌入式装置的启动方法及系统
CN103593281B (zh) 测试系统及测试方法
CN104750492B (zh) 基于嵌入式操作系统的移动设备的开机控制方法及装置
CN110968331B (zh) 应用程序运行的方法和装置
CN102662717A (zh) 一种嵌入式系统自引导启动方法
CN102457405A (zh) Pxe测试装置及其pxe测试方法
CN102023874A (zh) 双Linux内核处理装置以及启动Linux系统内核的方法
CN101702130B (zh) 一种移动终端加载共享函数库的方法和装置
WO2018040270A1 (zh) 在Windows系统中加载Linux系统ELF文件的方法及装置
CN106569854B (zh) 一种设置设备固件和实现厂测的方法及系统
CN102075710A (zh) 一种电视机的启动运行方法及电视机
CN110113391B (zh) 一种客户端上线方法、装置及一种客户端运行方法、装置
CN102541579A (zh) 嵌入式系统应用程序动态加载的方法
CN104375866A (zh) 一种单板的驱动更新方法及装置
CN106598593A (zh) 一种利用Uboot U盘启动WinCE的方法
US20140298319A1 (en) Method for installing operating system on electronic device
US20150006845A1 (en) Method of creating target storage layout table referenced for partitioning storage space of storage device and related electronic device and machine-readable medium
WO2017202128A1 (zh) 非linux系统软件boot参数传递方法及系统
CN102117245B (zh) 嵌入式设备及其系统可执行文件分割加载和启动方法
CN102917267A (zh) 一种机顶盒升级方法及装置
CN103677928A (zh) Gnss接收机中实现软件快速串口升级的系统及方法
CN108304224B (zh) 一种操作系统的启动方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180213

Termination date: 20190119