multibin

来源:互联网 发布:js设计模式是什么 编辑:程序博客网 时间:2024/05/19 22:51
为提高boot引导速度,,需支持multibin。方法如下:


1.D:\WINCE600\PLATFORM\SMDKV210\SMDKV210.bat
@REM For Multiple XIP (using demand paging on BINFS)
set IMGMULTIXIP=1


2.调整config.bib镜像大小
由于系统生成的XIPKERNEL约为3M。大于默认设置。所以改大到3M。后面的相应调整
IF WINCEDEBUG = retail
    XIPKERNEL   80020000  00300000  RAMIMAGE    ; 
    NK          80320000  03D00000  NANDIMAGE   ; Max size (it will be autosized)
    RAM         80320000  05BFF000  RAM         ; Max size (it will be autosized)
3.smdkv210\src\bootloader\eboot\nand.cpp
bool LoadNK()
{
...
#if 0 
    // Read the kernel region from the Boot Media into RAM.
    //
    if ( !BP_ReadData( hPart,
                       (LPBYTE)(g_pTOC->id[TOC_ENTRY_NK].dwLoadAddress),
                       SECTOR_TO_FILE_SIZE(g_pTOC->id[TOC_ENTRY_NK].dwTtlSectors)) )
    {
        OALMSG(1, (TEXT("Failed to read kernel region from partition.\r\n")));
        return FALSE;
    }
#else  //for support multibin .
    if ( !BP_ReadData( hPart,
                       (LPBYTE)(g_pTOC->id[TOC_ENTRY_NK].dwLoadAddress),
                       3*1024*1024/*3M*/) )
    {
        OALMSG(1, (TEXT("Failed to read kernel region from partition.\r\n")));
        return FALSE;
    }
#endif
...
}
4.运行SMDKV210.bat
5.重新编译生成新的9tripod_boot.nb0 和新的xip.bin 
6.用新的9tripod_boot.nb0来引导系统,下载OS从NK.BIN改为XIP.BIN。
7.启动速度约12S,不计bootloader中的5S倒计时(注此5S倒计时可去除,加快启动速度)。即可
出现界面。
8.存在的后续工作:
  要根据实现需要来调整reg、bib文件
原创粉丝点击