x86 Kernel

When the x86 StartUp function is called, you must pass the kernel OEMAddressTable to set up the page tables and the CPU capability bits to determine the level of support passed when KernelInitialize is called. Platform Builder ships with two X86-based BSPs for which the StartUp function is specified in the following shared source directory.

BSP Source file
National Geode SP4SC30 %_WINCEROOT%\Public\Common\Oak\CSP\i486\OAL
CEPC %_WINCEROOT%\Public\Common\Oak\CSP\i486\OAL

You are expected to perform the following tasks before handing the control to the x86 kernel:

  • CPU state should be protected mode, paging disabled (CR0, CR3, and CR4 initialized)
  • Initialize memory controllers
  • Place CPU capability bits in EDI before jumping to KernelInitialize
  • Place physical address of OEMAddressTable in ESI before jumping to Kernelnitialize

See Also

CPU Initialization | OAL StartUp Function Implementation

Last updated on Wednesday, April 13, 2005

© 2005 Microsoft Corporation. All rights reserved.