Creating and Building Oal.exe and OalKitl.exe (Windows Embedded CE 6.0)

1/5/2010

OEMs no longer need to build Kern.exe or KernKitl.exe because the kernel code has been moved into Kernel.dll. Instead, OEMs need to rename their targets to Oal.exe and OalKitl.exe.

OEMs also no longer need to build KernKitlProf.exe. If your OAL supports profiling, you should always include it in the final or shipping image. The kernel detects and uses OAL profiling if it is available. For more information, see Implementing Profiling Support in the OAL.

To create and build Oal.exe

  1. Modify the sources file in the Kernel\Kern folder.

    To do this, do the following tasks:

    1. Change TARGETNAME from kern to oal.
    2. Add the following TARGETLIBS: NkLdr.lib and OEMMain_StaticKitl.lib
    3. Replace Nk.lib with NkStub.lib.
  2. Replace the call to OalKitlStart in OEMInit with the following function call:

    KITLIoctl(IOCTL_KITL_STARTUP, NULL, 0, NULL, 0, NULL);
    
  3. Replace all calls to EdbgOutputDebugString with KITLOutputDebugString.

  4. Rename SC_GetTickCount to OEMGetTickCount.

  5. Run the build command and verify that Oal.exe builds without any errors.

To create and build OalKitl.exe

  1. Modify the sources file in the Kernel\KernKitl folder.

    To do this, do the following tasks:

    1. Change TARGETNAME from kernkitl to oalkitl.
    2. Add the following TARGETLIBS: NkLdr.lib and OEMMain_StaticKitl.lib
    3. Replace Nk.lib with NkStub.lib.
  2. Replace the call to OalKitlStart in OEMInit with the following function call:

    KITLIoctl(IOCTL_KITL_STARTUP, NULL, 0, NULL, 0, NULL);
    
  3. Replace all calls to EdbgOutputDebugString with KITLOutputDebugString.

  4. Rename SC_GetTickCount to OEMGetTickCount.

  5. Run the build command and verify that OalKitl.exe builds without any errors.

See Also

Tasks

How to Separate the Kernel and OAL and Link KITL to the OAL

Concepts

BSP Migration Guide