Web Analytics and Web Statistics by NextSTAT Caffeinated Cogitation: Virtual Memory Management by Windows

Sunday, April 23, 2006

Virtual Memory Management by Windows

I've finally understood how dll files interact with Windows executables.
How code redundancy is avoided and how virtual memory is actually managed by the Operating System.

Figured out how dll s are actually linked to executables.
Guess what?
Windows provides the virtual memory feature by giving each program (and it's instances) unique numbers (Handles in VC++) instead of directly alloting them addresses in memory. That , in turn, enables Windows to move the data and code segments around in the main memory.It cannot, however, cannot delete the data segment although the code segment may be done away with in case new code need to be introduced into the memory from the executable and the current segment no longer fulfils the programs functional criteria.This implies that whenever Windows needs to move a program to a different block in memory, it simply has to alter the program handle in an internal table that it maintains and the changes in the actual physical address are automatically reflected in the table as well.

This also explains the working of SQL injection attacks to a great extent.

Windows is finally going to be moving it's graphics subsystem out of the kernel.
This implies increased stability since the GDI is no longer going to be in Ring 0. This might make Vista a little slow but I think the additional security will more than compensate for that since more than 95% of inherent Windows crashes occur due to a GDI failure.
Yippie !!!
Moreover, Vista won't be supporting EFI booting.

Technology can be fun. If you want it to be, that is.
Sorry, I had nothing to talk about so I thought I might as well bore you with things you couldn't care less about.



Post a Comment

<< Home