virtuelt adresserum - [[windows]]: noget om kortlægningen mellem elf og vas

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg læser noget fra wiki om Virtual Address Space (VAS).


En ting jeg ikke forstår, jeg er ikke sikker på, om jeg forstår det korrekt.
Her er det:



  programmets EXE-fil er kortlagt i VAS. Adresser i processen VAS er kortlagt til bytes i exe-filen. OS styrer kortlægningen:



           0                                            4GB
VAS        |---vvvvvvv------------------------------------|
mapping        |-----|
file bytes     app.exe


Mit dumme spørgsmål er, hvad betyder det med 'kortlagt i VAS'?
Betyder det, at exe filen vil blive indlæst i det fysiske mem?

Bedste reference


VAS, som det betyder betyder, er et virtuelt rum, så det behøver ikke at være relateret til en fysisk. Det er op til hukommelseslederen, hvor den skal læses (fysisk hukommelse eller virtuel hukommelse eller hvad som helst).

Andre referencer 1


Hver proces har sit eget adresserum, og operativsystemet styrer kortlægningen mellem det virtuelle adresserum og den fysiske adresse på den pågældende hukommelsesside (som på nogle tidspunkter kunne være på disken eller det kunne være i RAM).


Operativsystemet er der til at håndtere, når en proces kræver en læsning fra dens virtuelle adresserum, hvor den side virkelig er på disk (det er, når en sidefejl opstår). På samme måde på en computer, der kører med lidt ledig hukommelse, er det derfor, at disken ser ud til at ødelægge, da operativsystemet kæmper for at bytte sider mellem disk og fysisk hukommelse.