I read something from wiki about Virtual Address Space (VAS).
One thing I don't understand, I'm not sure whether I understand it correctly. Here is it:
the application's EXE file is mapped into the VAS. Addresses in the process VAS are mapped to bytes in the exe file. The OS manages the mapping:
0 4GB VAS |---vvvvvvv------------------------------------| mapping |-----| file bytes app.exe
My stupid question is what does it mean by 'mapped into the VAS'? Does it mean the exe file will be loaded into the physical mem?
The VAS, as it names implies, is a virtual space, so it doesn't need to be related to a physical one. That's up to the memory manager where to load it (physical memory or virtual memory or whatever).