none
intel_BSP_2.3定制WinCE 6.0的nk.bin,运行后系统重启 RRS feed

  • 问题

  • 配置是intel ATOM N270 1.6GHz,945GSE芯片组,内存1G,256MB CF存储卡,使用了intel IEGD v10.3.1版配置显卡驱动。

    在vs2005的Platform Builder中选择Intel_CSX86的BSP生成wince 6.0 OS 镜像NK.bin,然后通过U盘启动并将nk.bin以及loadcepc.exe等文件考到目标CF卡上,启动执行时选择BOOT CE/PC(local nk.bin),然后有一个进度条

    在更新,最后jumping to 0x0224D50,就重新启动。请问这是什么原因呢。

    串口接到的消息如下所示:代码粘贴不下太多,大概就是下面这样。主要有Exception 'Access Violation' (14),Exception 'Secure Stack Overflow' (-2)和!FATAL ERROR!: Secure stack overflow - IP = 8024e6f0
    !FATAL ERROR!: Killing thread - pCurThread = bbfff024错误。

    Debug Serial Init

    SysInit: GDTBase=81667000 IDTBase=816b33a0 KData=8166d800
    Windows CE Kernel for i486 Built on Sep 25 2009 at 11:01:57
    INFO:OALLogSetZones: dpCurSettings.ulZoneMask: 0xb
    InitKitlNIC: Searching for PCI Ethernet NIC (dwIrq = 0, dwIoBase = 0, dwDfltType = 0) ...

    Intel(R) PRO/1000 KITL driver [Build: Apr 16 2010  10:10:34]
    Intel(R) PRO/1000 KITL driver [Build: Apr 16 2010  10:10:34]
    Intel(R) PRO/1000 KITL driver [Build: Apr 16 2010  10:10:34]
    Intel(R) PRO/1000 KITL driver [Build: Apr 16 2010  10:10:34]
    RTC - Status Reg B - 0x02
    ide deviceId = 0x27c4
    disLegacyUsbSupport LPC deviceId = 0x27b9
    X86Init done, OEMAddressTable = 80224d70, RAM mapped = 40000000.
    Exception 'Access Violation' (14): Thread-Id=00410002(pth=bbfff024), Proc-Id=00400002(pprc=816b0800) 'NK.EXE', VM-active=00400002(pprc=816b0800) 'NK.EXE'
    PC=80249aa5(kernel.dll+0x00009aa5) RA=00000000(???+0x00000000) SP=e001fc50, BVA=0000000e
    Exception 'Access Violation' (14): Thread-Id=00410002(pth=bbfff024), Proc-Id=00400002(pprc=816b0800) 'NK.EXE', VM-active=00400002(pprc=816b0800) 'NK.EXE'
    PC=00000000(???+0x00000000) RA=00000000(???+0x00000000) SP=e001faac, BVA=00000000
    Exception 'Access Violation' (14): Thread-Id=00410002(pth=bbfff024), Proc-Id=00400002(pprc=816b0800) 'NK.EXE', VM-active=00400002(pprc=816b0800) 'NK.EXE'
    PC=00000000(???+0x00000000) RA=00000000(???+0x00000000) SP=e001f908, BVA=00000000

    Exception 'Secure Stack Overflow' (-2): Thread-Id=00410002(pth=bbfff024), Proc-Id=00400002(pprc=816b0800) 'NK.EXE', VM-active=00400002(pprc=816b0800) 'NK.EXE'
    PC=8024e6f0(kernel.dll+0x0000e6f0) RA=80244525(kernel.dll+0x00004525) SP=e0011f50, BVA=00000000
    Exception 'Access Violation' (14): Thread-Id=00410002(pth=bbfff024), Proc-Id=00400002(pprc=816b0800) 'NK.EXE', VM-active=00400002(pprc=816b0800) 'NK.EXE'
    PC=00000000(???+0x00000000) RA=80244525(kernel.dll+0x00004525) SP=e0011dac, BVA=00000000
    Exception 'Access Violation' (14): Thread-Id=00410002(pth=bbfff024), Proc-Id=00400002(pprc=816b0800) 'NK.EXE', VM-active=00400002(pprc=816b0800) 'NK.EXE'
    PC=00000000(???+0x00000000) RA=80244525(kernel.dll+0x00004525) SP=e0011c08, BVA=00000000
    Exception 'Access Violation' (14): Thread-Id=00410002(pth=bbfff024), Proc-Id=00400002(pprc=816b0800) 'NK.EXE', VM-active=00400002(pprc=816b0800) 'NK.EXE'
    PC=00000000(???+0x00000000) RA=80244525(kernel.dll+0x00004525) SP=e0011a64, BVA=00000000
    Exception 'Access Violation' (14): Thread-Id=00410002(pth=bbfff024), Proc-Id=00400002(pprc=816b0800) 'NK.EXE', VM-active=00400002(pprc=816b0800) 'NK.EXE'
    PC=00000000(???+0x00000000) RA=80244525(kernel.dll+0x00004525) SP=e00118c0, BVA=00000000
    Exception 'Access Violation' (14): Thread-Id=00410002(pth=bbfff024), Proc-Id=00400002(pprc=816b0800) 'NK.EXE', VM-active=00400002(pprc=816b0800) 'NK.EXE'
    PC=00000000(???+0x00000000) RA=80244525(kernel.dll+0x00004525) SP=e001171c, BVA=00000000
    Exception 'Access Violation' (14): Thread-Id=00410002(pth=bbfff024), Proc-Id=00400002(pprc=816b0800) 'NK.EXE', VM-active=00400002(pprc=816b0800) 'NK.EXE'
    !FATAL ERROR!: Secure stack overflow - IP = 8024e6f0
    !FATAL ERROR!: Killing thread - pCurThread = bbfff024
    Exception Access Violation (14): Thread-Id=00410002(pth=bbfff024), Proc-Id=00400002(pprc=816b0800) 'NK.EXE', VM-active=00400002(pprc=816b0800) 'NK.EXE'
    EIP=8025d468 Flags=00013202 EA=e0010f60
    Eax=00000000 Ebx=816b0500 Ecx=0000b064 Edx=816b03f8
    Esi=00000000 Edi=bbfff024 Ebp=e0011270 Esp=e0010f64
    CS=0019 DS=0040 ES=0040 SS=0021 FS=0060 GS=0000

    Dumping 199 dwords at address e0010f64
    e0010f64 - ffffffff c00000fd 8024e6f0 ffffffff
    e0010f74 - ffffffff ffffffff ffffffff ffffff7f
    e0010f84 - ffffffff fffffffd ffffffff ffffffff
    e0010f94 - ffffffff ff7fffff ffffffff fffffffe
    e0010fa4 - ffffffff fbffffff ffffffdf fb7fffff
    e0010fb4 - ffffffff ffffffbf ffffffff ffffffff
    e0010fc4 - ffffffff bfffffff ffffffff ffffffff
    e0010fd4 - ffffffff ffffffff ffffffff ffffffff
    e0010fe4 - ffffffff ffffffff ffffffff ffffffbd
    e0010ff4 - ffffffff ffffffff ffffffff 00000000
    e0011004 - 00000000 ffff7fff ffffffff ffffffff
    e0011014 - ffffffff ffffffff ffffffff ffffffff

    Exception 'Access Violation' (14): Thread-Id=00410002(pth=bbfff024), Proc-Id=00400002(pprc=816b0800) 'NK.EXE', VM-active=00400002(pprc=816b0800) 'NK.EXE'
    PC=8025d4f8(kernel.dll+0x0001d4f8) RA=ffffffff(???+0xffffffff) SP=e0010f3c, BVA=00000014

     

    2010年4月16日 6:01

答案

  • CEPC我不太熟,不过看上去好像是memory overflow之类的问题。有可能是你得KITL设置不对,试试看在Visual Studio里的Project property page里面disable KITL或者GlobalDrv setting(EBoot setting)里面disable KITL.

    看看会怎么样。

     

    2010年4月16日 6:38
    版主

全部回复

  • CEPC我不太熟,不过看上去好像是memory overflow之类的问题。有可能是你得KITL设置不对,试试看在Visual Studio里的Project property page里面disable KITL或者GlobalDrv setting(EBoot setting)里面disable KITL.

    看看会怎么样。

     

    2010年4月16日 6:38
    版主
  • 想问下你这个问题已经解决了吗?

    你所说的

    通过U盘启动并将nk.bin以及loadcepc.exe等文件考到目标CF卡上

    是什么意思?

     nk.bin以及loadcepc.exe是在开发机直接考到CF卡,还是U盘启动是loadcepc进去的?

    我是把nk.bin以及loadcepc.exe放到U盘,然后选择load 、local;结果重启,无效,黑在那里了

    把CF卡取出来,发现CF卡还是空的

     

    2010年5月17日 7:47
  • 楼主您好

    请问您的问题解决了吗?我也在用这个板子,不知道为什么,我的一直没有跑起WinCE6.0 来,希望和您交流下。QQ253197402

     

    2010年6月22日 2:16