
bootloder相关
文章平均质量分 80
勇敢飞
这个作者很懒,什么都没留下…
展开
-
S3C2410&&WINCE6.0&&NBOOT
<br />S3C2410处理器支持将启动代码存储在NAND Flash中。为了实现这一功能,2410配备了一个名为“Steppingstone”的内部SRAM。在启动时,NAND Flash中第一个4K字节的内容将被加载到Steppingstone中并执行。这个工作由MCU主动完成,而我们只需将NAND Flash配置为Auto Boot模式即可。<br /> 一般来说,启动代码会拷贝存储在NAND Flash中的内容至SDRAM中。在使用ECC校验时,NAND Flash中数据的有效性将被确转载 2011-05-12 12:51:00 · 399 阅读 · 0 评论 -
WinCE6.0的EBOOT概要
<br /> 为一个新的硬件设备定制WinCE6.0操作系统,一般需要完成以下几个主要步骤:<br />1. 针对特定的硬件设备创建板级支持包(Board Support Package缩写为BSP),BSP必须包括BOOTLOADER、OEM适配层(OEM Adaptation Layer缩写为OAL)和一些必要的驱动。<br />2. 利用创建的BSP,定制一个系统设计(OS Design)。即通过VS2005创建一个Platform Builder的工程。该工程可编译产生最终的转载 2011-05-12 12:50:00 · 388 阅读 · 0 评论 -
Eboot启动代码分析
<br />启动代码通常都是用处理器相应的汇编代码写成,比较晦涩,但是却包含了很多与平台相关的信息,对初始化代码进行分析有利于对平台的理解。本文将对Eboot的初始化代码进行分析,主要包含从Reset到进入C的main开始。<br />mov r0, #0x48000000 ; Memory controller base physical addr.<br /> add r0, r0, #0x4 ; Add offset of MDREFR<br转载 2011-05-12 13:03:00 · 595 阅读 · 0 评论 -
WinCE5.0 BSP BOOTLOADER开发详解-生成bin和nb0
<br />一,生成EBOOT.exe <br />1,在D:/WINCE500/PLATFORM/Sun2410/SRC/BOOTLOADER/EBOOT目录下,建立名为Startup.s的汇编文件。 <br />源代码如下: <br />OPT 2 <br />INCLUDE kxarm.h <br />OPT 1 <br />OPT 128 <br />STARTUPTEXT <br />LEAF_ENTRY StartUp <br />nop <br />END <br />2,在D:/WINCE5转载 2011-05-12 13:01:00 · 530 阅读 · 0 评论 -
Bootloader 的主控函数bootloadermain函数分析
<br />startup.s对底层进行初始化后,调用main()此函数一般位于main.c下面<br />main函数调用BLCOMMON.c下的BootloaderMain()函数,bootloader的主控权丧失。<br />学习何老师书的内容摘抄如下:<br /> //目录是%/WINCE500/PUBLIC/COMMON/OAK/DRIVERS/ETHDBG/BLCOMMON下的BLCOMMON.c文件中的内容<br />void BootloaderMain (void)<br />{<br /转载 2011-05-12 12:59:00 · 818 阅读 · 0 评论 -
BootLoader开发经验谈
<br />嵌入式操作系统在嵌入式软件开发中占的重要性越来越大。而提到嵌入式操作系统,Boot Loader恐怕是不可或缺的话题,无论是Windows CE还是嵌入式Linux,抑或是其他的嵌入式操作系统。大多数都需要Boot Loader来加载操作系统。当我们拿到一块新的板子,希望在上面运行某个嵌入式操作系统,通常第一件需要我们来做的事情就是移植该操作系统相对应的Boot Loader。而据有关文章分析,在嵌入式开发中,通常会在Boot Loader上消耗大量的时间人力和物力。<br />为什么Bootl转载 2011-05-12 12:52:00 · 1853 阅读 · 0 评论 -
CE6内核启动过程-新角度
<br />开发人员有必要理解CE系统启动过程。首先回顾一下系统怎样建立起来的。微软工具链生成.exe和.dll文件。这些文件都包含了Portable Executable格式,简称PE格式。它们的结构都是一样的:<br />1、 是一种common object文件格式的扩展<br />2、 有导入、导出表<br />3、 头部有入口点,是开始执行的地方。<br />操作系统都是由编译器生成的,一个exe(nk.exe)不会连接到任何外部的库或者DLL。当这个文件执行时候,系统中还没有任何东西。Ex转载 2011-05-12 13:31:00 · 469 阅读 · 0 评论 -
配置config.bib的注意事项以及错误分析
<br />一、编译出NK,但是但是下载NK后不会启动。<br />原因:就是DNW设置地址不对,并不是每个NK下载到0x32000000都能运行的。欲知详情,请看下面。<br />先看这个能在0x32000000运行的NK的内存映射表<br />OEMAddressTable <br /> ;;;------------------------------------------------------------- <br /> ;;; Virt Addr Phys Addr MB转载 2011-05-12 13:04:00 · 398 阅读 · 0 评论 -
bootloader 开发,最郁闷前三步
<br />在书市和网上溜达一圈,只发现两本关于Bootloader的开发资料。一个是电子工业出版社出版的《Windows CE.NET实用开发技术》;另一个是PB的HELP文件。其他大多为介绍Bootloader相关知识的,最多也就是修改一下官方的Bootloader源码。 <br />觉得没什么意思!如果官方不给源码呢?咱还是要从零开始。也算是发扬自力更生、艰苦奋斗的革命精神。由于本人的英文太差,在金山词霸的帮助下,花了三天时间(没办法,白天要上班,晚上要照顾媳妇,自己能支配的时间实在是少的可怜)才看了转载 2011-05-12 13:02:00 · 620 阅读 · 0 评论 -
EBOOT通过bin文件形式读取、下载LOGO----韦伯篇之自我分析
<br />一般的WINCE系统都是在EBOOT阶段初始化LCD,所以要想显示自己的LOGO就需要在EBOOT阶段将LOGO内容显示出来,读取LOGO的方式可以和从存储器中读取NK一样,具体位置自己来定义。<br />在EBOOT阶段下载LOGO保存到FLASH中可以采用下载bin文件的方式,bin文件中的内容可以参考eboot.bin和nk.bin。<br />根据/WINCE500/PUBLIC/COMMON/OAK/DRIVERS /ETHDBG/BLCOMMON下blcommon.c文件中各函数分析转载 2011-05-12 12:53:00 · 617 阅读 · 0 评论