dwOEMPTPoolSize (Windows Embedded CE 6.0)
1/5/2010
This variable is no longer used as of Windows CE .NET 4.2.
The page table is now dynamically–allocated as needed.
This variable defines the page table pool size in pages.
Syntax
const DWORD dwOEMPTPoolSize;
Parameters
None.
Return Value
None.
Remarks
The default value is 16 pages, with the maximum being 512 pages.
Based on your system, you must increase the value until you get the right fit. As the pool gets bigger, your average process switch time goes up because you are affecting more memory.
It takes 8 pages to map one full process. To map 2 GB, all process space and the shared memory in the second GB of virtual memory takes 512 pages.
A process might not use all 8 pages of its pool so the unused pool can be used by another process.
The size of the pool effects when a page of the pool must be set to zero to map a different area of a process or a different process.
The zeroing of a page occurs when there are no free pages left, so a page must be zeroed before assigning it to the new process.
The act of zeroing several pages can affect the IST latency of a real-time platform.
To determine how many pages to map
Determine how many processes will run simultaneously.
Multiply the number by eight pages.
Determine how much memory is being used by Memory-mapped Files in the 2–GB area.
- Use the "mi" command from the Platform Builder Target Control application.
- Look for the sections marked "Mapped file section".
- Total the "r/w" value of each section and divide by 32.
Add the values together to determine home many pages should be allocated.
Requirements
Header | Developer Implemented |
Windows Embedded CE | Windows CE .NET 4.0 and later |