Prev: Poco VS Boost
Next: temp and preferences paths
From: glitteringsounds on 2 Feb 2010 02:52 Hello Can any body tell in detail what is relative virtual addressing and all its basics? Why virtual addressing is needed? How RVA invlolves in execution of PE files(EXEs,DLLs and so on..) Regards Muhammad Usman Khalil
From: nico on 2 Feb 2010 06:52 glitteringsounds wrote: > Hello > > Can any body tell in detail what is relative virtual addressing and > all its basics? > Why virtual addressing is needed? How RVA invlolves in execution of PE > files(EXEs,DLLs and so on..) It's explained in old MSDN articles like http://msdn.microsoft.com/en-us/magazine/cc301808.aspx
From: ScottMcP [MVP] on 2 Feb 2010 12:18 On Feb 2, 2:52 am, glitteringsounds <muhammadusman.kha...(a)gmail.com> wrote: > Hello > > Can any body tell in detail what is relative virtual addressing and > all its basics? > Why virtual addressing is needed? How RVA invlolves in execution of PE > files(EXEs,DLLs and so on..) > > Regards > Muhammad Usman Khalil Virtual addressing is needed because the programs that are running usually use more memory than a PC has. Virtual memory gives 2 GBytes of memory space to each program. If there are 10 programs running this adds up to 20 GBytes! But the PC does not have 20 GBytes. Virtual memory is a way to share the available physical memory between many programs. An RVA is simply the difference between two addresses. Also commonly called an offset. The loader decides where to load an EXE or DLL, and adds this base address to all (relative) addresses in the PE file.
|
Pages: 1 Prev: Poco VS Boost Next: temp and preferences paths |