Windows CE下bootloader和驱动之间的通信

本文主要介绍bootloader和image之间的通信,以ARM架构的CPU在CE5.0下的开发为例。

首先我们可以查看platform下的BIB文件(WINCEROOT/PLATFORM/MAINSTONEII/FILES),开始的一段如下:

; Memory Map
; ----------
;
; 8000.0000 -+
;            | Bootloader Stack (64KB)
; 8001.0000 -+
;            | Bootloader RAM (64KB)
; 8002.0000 -+
;            | Bootloader Code (256KB)
; 8006.0000 -+
;            | GAP (reserved for future)
; 800F.F000 -+
;            | ARGS (4KB)
; 8010.0000 -+
;            |
;            | OS (NK) Code (48MB)
;            |
; 8310.0000 -+   **auto-size**
;            |
;            | OS (NK) RAM (15MB)
;            |
; 8400.0000 -+
;
我们看到在0x80060000到0x800FF000的这段内存是reserved for future,在bootloader的代码中我们就可以把需要传递给系统的参数拷贝到这里,可以调用memcpy来

实现,在系统起来以后我们可以在驱动中把这个地址再映射出来,就可以得到bootloader传递过来的残说。调用MmMapIoSpace来实现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值