Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The following table shows the optional OAL functions.
Programming element | Description |
---|---|
CertifyModule | This function streams the bytes of a module for certification. It is called from the OEMCertifyModule function. |
CertifyModuleFinal | This function returns the final certification status of a file and any data embedded in the signature. |
CertifyModuleInit | This function begins verifying a signature on a module to certify the module. |
CreateInstance | This function returns a value that references a particular instance of the ISR. It is implemented by an interrupt service routine (ISR). |
DestroyInstance | This function frees the instance entry and is called when an installable ISR is unloaded using the FreeIntChainHandler function. |
FreeIntChainHandler | This function unloads an existing interrupt handler. |
IOControl | This function enables a communication path from the interrupt service thread (IST) to the ISR. It exported by the installable ISR DLL. |
KLibAllocShareMem | This function allocates memory that can be shared between the ISR and IST. |
KLibFreeShareMem | This function frees memory that is allocated by the KLibAllocShareMem function. |
LoadIntChainHandler | This function installs an ISR to handle a particular interrupt. It is called by a driver. |
lpNKHaltSystem | This function halts the system when a non-recoverable error is encountered. It is called when the kernel is about to halt the system. |
NKCallIntChain | This function determines which chained, or shared, interrupt device triggered an IRQ event. |
NKCreateStaticMapping | This function creates a static virtual memory address that maps to a physical address. |
NKForceCleanBoot | This function forces the OS to boot from a clean file system. |
OEMCertifyModule | This function enables the OS loader to pass the module code, for example, .dll, .exe, and .ocx, to the OEM to verify that a module can be safely run on the system. |
OEMCertifyModuleInit | This function enables the OS loader to notify the OEM that a new module is being loaded. |
OEMClearIntSources | This function initializes the fInterruptWakeup array to determine whether a wake event has occurred since the execution of this function. |
OEMEnumExtensionDRAM | This function returns information about extension DRAM, if present on the device. |
OEMEthISR | No longer required, as of Windows CE .NET 4.2.
For information about new debug communication settings, see the KITLTRANSPORT structure. |
OEMEthQueryClientInfo | No longer required. For information about new debug communication settings, see the KITLTRANSPORT structure. |
OEMFindFirstWakeSource | This function determines the lowest-valued wake event that has occurred since a call to the OEMClearIntSources function. It uses the SYSINTR or SYSWAKE logical interrupts to do this. |
OEMGetInterrupt | This function helps implement the IOCTL_HAL_REQUEST_IRQ IOCTL in the OEMIoControl routine. |
OEMGetWakeupSource | This function returns a wake event that has occurred since a call to the OEMPowerOff function. |
OEMHandleVFPException | This function handles a floating-point exception reported by vector floating point (VFP) hardware. |
OEMIndicateIntSource | This function, along with the set of enabled wake sources, determines if a wake event occurred. It indicates the occurrence of a specified SYSINTR. |
OEMInitCoProcRegisterSavedArea | This function initializes the debug registers. It is called by the kernel when a thread is created. |
OEMIntrOccurs | This function catches interrupts. It is called when an interrupt occurs. |
OEMKDIoControl | This function supports requests from the kernel debugger. It is implemented by the OEM. |
OEMIsRom | This function determines if a given address range falls within a valid range of ROM addresses, and may be used to support ROM breakpoints. |
OEMPowerManagerInit | This function handles the initialization routines used by the kernel's suspend code. |
OEMRequestSysIntr | This function implements IOCTL_HAL_TRANSLATE_IRQ and IOCTL_HAL_REQUEST_SYSINTR in the OEMIoControl function. |
OEMReschedule | This function catches thread switching. It is called when the new thread is ready to run. |
OEMResetWakeupSource | This function resets wake event sources. |
OEMRestoreCoProcRegister | This function restores the platform specific debug registers when a thread switch occurs. It is called by the kernel. |
OEMRestoreVFPCtrlRegs | This function restores the state of the extra implementation defined VFP registers for the current thread. |
OEMSaveCoProcRegister | This function saves the platform-specific debug registers when a thread switch occurs. It is called by the kernel. |
OEMSaveVFPCtrlRegs | This function saves the state of the extra FPU registers for the current thread. It is called by the kernel. |
OEMSetWakeupSource | This function sets wake event sources. |
OEMTranslateIrq | This function translates a non-shareable IRQ into a SYSINTR or into the last shared IRQ that an installable ISR does not contain. |
OEMTranslateSysIntr | This function maps a SYSINTR to its corresponding IRQ. |
OEMWriteDebugLED | This function sendsa byte to the target device's specified LED port. |
pfnNKDrWatsonClear | This function can be used to change the DrWatsonClear functionality. |
pfnNKDrWatsonFlush | This function can be used to change the DrWatsonFlush functionality. |
pfnNKDrWatsonRead | This function can be used to change the DrWatsonReadData functionality. |
pfnNKDrWatsonWrite | This function can be used to change the DrWatsonWriteData functionality. |
pfnOEMRefreshWatchDog | This function refreshes the hardware watchdog. It is called by the kernel. |
pfnOEMIntrOccurs | Optional. This function pointer points to the OEMIntrOccurs function, if defined. |
pfnOEMReschedule | Optional. This function pointer points to the OEMReschedule function, if defined. |
pfnOEMSetMemoryAttributes | This function supports changes to memory attributes. It is initialized to NULL. OEMs can initialize this function. |
pNKEnumExtensionDRAM | This function enumerates multiple memory sections. It is a kernel global function pointer that is used by the kernel. |
pNotifyForceCleanboot | This function forces a cold boot of the object store. It is called by Filesys.exe when a cold boot is about to occur. |
pOEMCalcFSPages | This function recalculates how much memory should be allocated to the object store. It is called in the OAL by the kernel to |
pOEMIsProcessorFeaturePresent | This function points to the IsProcessorFeaturePresent function, if defined. |
pOEMLoadInit | Optional. This function points to the OEMCertifyModuleInit function, if defined. |
pOEMLoadModule | Optional. This function points to the OEMCertifyModule function, if defined. |
pOEMUpdateRescheduleTime | This function points to the function that reprograms the system timer. |
pQueryPerformanceCounter | Optional. This function points to the OEM implementation of the OEMQueryPerformanceCounter function. It should be set for platforms that provide timer functions with higher granularity than GetTickCount. |
pQueryPerformanceFrequency | Optional. This function points to the OEM implementation of the OEMQueryPerformanceFrequency function. It should be set for platforms that provide timer functions with higher granularity than GetTickCount. |
pWriteDebugLED | This function writes debug output to an LED. It can be set by the OEM during OEMInit time. |
pWriteRegistryToOEM | Optional. This function points to the WriteRegistryToOEM function, if defined. |
ReadRegistryFromOEM | This function reads a registry file into RAM from persistent storage as defined by the OEM. |
WriteRegistryToOEM | This function transfers registry data to persistent storage. It is called by the operating system. |
See Also
Send Feedback on this topic to the authors