all i know about is the software reloc by the OS whic got several disadavantages over correct basing.
but your second point is true... if we rebase all DLLs to the same address all should be based by the OS contiguously (sorry i'm not natural english speaker) ... with some performance disadavantages and some physical memory loss for the whole system. an intressting idea but only the second best solution over basing all to an perfect place.
LLXX, on Oct 27 2006, 03:50 PM, said:
The hardware can still remap virtual addresses - to a different area of physical memory, or even to the swap file. FYI, all the processors since the 386 supported up to 256 terabytes of virtual memory via this mechanism.
Indeed, there is fragmentation within the VM of each process, but since processes are not static, simply restarting them is enough to reorganise the virtual memory layout. Besides, if a process is doing enough alloc()s and free()s to fragment the virtual memory badly, whoever wrote the code is not paying attention to how memory allocation works.
One way to force the DLLs to be contiguous within memory, if that's what you intended, is to rebase all of them that have relocs to the same address. That way the OS will almost always have to relocate them somewhere else, and they'll usually be loaded contiguously.
...and the word is contiguous. Google shows that nearly 2^10 sites have it spelt wrong
Indeed, there is fragmentation within the VM of each process, but since processes are not static, simply restarting them is enough to reorganise the virtual memory layout. Besides, if a process is doing enough alloc()s and free()s to fragment the virtual memory badly, whoever wrote the code is not paying attention to how memory allocation works.
One way to force the DLLs to be contiguous within memory, if that's what you intended, is to rebase all of them that have relocs to the same address. That way the OS will almost always have to relocate them somewhere else, and they'll usually be loaded contiguously.
...and the word is contiguous. Google shows that nearly 2^10 sites have it spelt wrong
[quote]



Help

Back to top








