Kernel Functions (Windows Embedded CE 6.0)
1/6/2010
The following table shows the kernel functions with a description of the purpose of each and what level modules, application or kernel, can call each function.
The following table shows the kernel functions common to all platforms.
Function | Kernel mode only | Description |
---|---|---|
Yes |
Allocates physically contiguous memory. |
|
Yes |
Flushes a specific range of the cache. |
|
Yes |
Flushes the cache. |
|
Yes |
Obtains cache information. |
|
No |
Obtains the assigned trust level of a process.This function is obsolete in Windows Embedded CE. |
|
No |
Obtains a random seed that can be used in an algorithm. |
|
Yes |
Uses memory attributes supported on some hardware platforms that the kernel does not support by default. |
|
Yes |
Signals events during suspend/resume. |
|
Yes |
Allocates read/write memory to the caller and read-only memory to other processes. |
|
Yes |
Creates a static virtual memory address that maps to a physical address. |
|
No |
Creates a watchdog timer. |
|
Yes |
Clears Windows Embedded CE error reporting dump storage by setting the Windows Embedded CE error reporting dump area to zero. |
|
Yes |
Flushes Windows Embedded CE error reporting dump data to the underlining storage. |
|
Yes |
Obtains the size of the Windows Embedded CE error reporting dump area. |
|
Yes |
Reads data from the Windows Embedded CE error reporting dump area. |
|
Yes |
Writes data to the Windows Embedded CE error reporting dump area. |
|
Yes |
Converts file time to the format of system time. |
|
Yes |
Forces the OS to swap out all discardable pages from memory. |
|
Yes |
Releases physical memory back to the system. |
|
Yes |
Obtains a handle for the caller process. |
|
No |
Obtains the kernel's internal thread permissions bit mask for the current thread. This function is obsolete in Windows Embedded CE. |
|
Yes |
Obtains the interrupted program counter, which is the exception program counter (EPC). |
|
No |
Obtains data associated with an event. |
|
No |
Obtains the process handle of the current thread owner. |
|
Yes |
Obtains the name of the device driver being used for a standard input, output, or error output operation. |
|
Yes |
Obtains information about the object store and system memory. This function is obsolete. |
|
No |
Obtains the call stack of an arbitrary thread in the system. |
|
Yes |
Registers an interrupt service routine (ISR) with the kernel, specifying a hardware interrupt indicated by its interrupt request (IRQ) line value. |
|
Yes |
Disables a hardware interrupt as specified by its interrupt identifier. |
|
Yes |
Signals to the kernel that interrupt processing has been completed. |
|
Yes |
Initializes a hardware interrupt with the kernel. This initialization allows the device driver to register an event and enable the interrupt. |
|
Yes |
Masks hardware interrupts. |
|
Yes |
Enables all interrupts based on a parameter and returns the current state. |
|
Yes |
Disables all interrupts. |
|
Yes |
Enables all interrupts. |
|
No |
Indicates whether the specified API has been registered. This function is obsolete in Windows Embedded CE. |
|
No |
Checks whether a named event is signaled. |
|
Yes |
Prototype function used by an OEM or an independent hardware vendor (IHV) to create and export an installable interrupt handler. |
|
Yes |
Compares two file time values for equality. |
|
No |
Called by a driver to communicate with an interrupt handler. |
|
Yes |
Maps the specified executable module into the address space of the calling process. |
|
Yes |
Locks into memory the specified region of the virtual address space of the process, ensuring that subsequent access to the region does not incur a page fault. |
|
Yes |
Validates whether a region of memory pointed to by the ptr parameter is valid with respect to the caller process. This function is obsolete in Windows Embedded CE. |
|
Yes |
Maps an unmapped pointer to a process. This function is obsolete in Windows Embedded CE. |
|
Yes |
Opens an existing watchdog timer. |
|
Yes |
Swaps out all the pages of a process or DLL that are available for paging. |
|
Yes |
Queries the OEM profiler after it is running. |
|
Yes |
Implemented in the kernel and called by the profiler ISR to record a profiling sample. |
|
Yes |
Implemented in the kernel and called by OEM adapatation layer (OAL) code generating interrupts. ProfilerHitEx is called by the profiler ISR to record a profiling sample. |
|
No |
Starts the Windows Embedded CE instrumented kernel or Monte Carlo profiling. |
|
No |
Starts the profiler. |
|
No |
Stops the Windows Embedded CE instrumented kernel or Monte Carlo profiling and displays a profile report on a debug terminal. |
|
Yes |
Refreshes a watchdog timer. |
|
Yes |
Sets or queries zones for either a process or a module, but not both. |
|
No |
Associates data with an event handle. |
|
Yes |
Used by a device driver to cause an artificial interrupt event. |
|
Yes |
Changes the default Just-in-Time (JIT) debugger dynamically. SetJITDebuggerPath can be called only by a privileged or trusted process. |
|
Yes |
This function is obsolete. |
|
Yes |
Switches between kernel and user modes. This function is obsolete in Windows Embedded CE. |
|
Yes |
Sets the internal permissions bit mask for the current thread, thereby enabling access to the address space of another process. This function is obsolete in Windows Embedded CE. |
|
Yes |
Sets the standard input, output, or error output destination path. |
|
Yes |
Obtains a 1-MB–aligned physical page and returns a pointer to the store queue. |
|
Yes |
Sets the specified number of pages for the object store. This function is obsolete. |
|
No |
Suspends the current thread until the next system tick. |
|
No |
Starts a watchdog timer. |
|
No |
Stops a watchdog timer. |
|
No |
Converts system time to file time format. |
|
Yes |
Deregisters an ISR with a specific hardware interrupt. |
|
Yes |
Unlocks a specified range of pages in the virtual address space of a process, enabling the system to swap the pages out if necessary. |
|
Yes |
Unmaps a memory pointer that was previously mapped using MapPtrToProcess. This function is obsolete in Windows Embedded CE. |
|
Yes |
Binds a specific physical memory range to a statically mapped virtual address. |
|
Yes |
Changes the per-page attributes for a range of virtual memory, which is usually copied from a physical location not known to the kernel. |
The following table shows additional kernel functions specific to Windows Embedded CE.
Function | Kernel mode only | Description |
---|---|---|
No |
Indicates whether the specified API set has been registered. This is a non-polling version of the IsAPIReady function. |
The following table shows new kernel functions specific to Windows Embedded CE 6.0.
Function | Kernel mode only | Description |
---|---|---|
No |
Enables drivers to forward I/O controls to other drivers when the driver does not know anything about the I/O control so that no validation is performed. The driver that is called into still has the correct direct caller information to perform parameter validation. |
|
No |
Obtains the process identifier of the caller that originated the call to the API. |
|
No |
Obtains the direct caller's process identifier. |
Remarks
In Windows Embedded CE 6.0, kernel mode means running inside the kernel as a kernel thread. Before CE 6.0, kernel mode essentially meant that you called SetKMode.