I work with WinCE 212, eMbedded Visual C++ 3.0 and a SH-4 Proc.
When I load a DLL with LoadLibrary() I found code and data of this DLL
also in the virtual address space of the kernel process nk.exe when
using "mi full" in cesh. That is ok. But the memory for the data (.bss
section) of the DLL is physically allocated in the process that loads
the DLL and in the kernel. So a global array with 100 KB in the DLL
requires 200 KB physical memory. In the kernel process this memory is
zero and I think never used.
Why is this so?
Is there a possibility to avoid the allocation of physical memory in
the kernel nk.exe for DLL-data?