? Computer minne har två typer av adresser . Dessa är logiska adresser och fysiska adresser . Adress bindande allokerar en fysisk minnesplats till en logisk pekare genom att associera en fysisk adress till en logisk adress . Den logiska adressen är också känd som en virtuell adress . Adress bindning är en del av minneshantering och utförs av operativsystemet på uppdrag av tillämpningar som kräver tillgång till minnet . OS Services
Adress bindning avser hur koden i ett program lagras i minnet . Program skrivna i läsbar text , efter en rad regler som utformats av de strukturella kraven i programmeringsspråk , och använda sökord som tolkas till åtgärder av centralenheten i datorn . Den punkt där den körbara versionen av ett program skapas dikterar när adress bindning sker . Vissa programspråk , t.ex. " C " och COBOL behöver sammanställas , andra , främst skript körs från det ursprungliga programmet texten , snarare än en maskin kompilerad kod binär version .
Kompilering Binding
Den första typen av adress bindning är kompilering adress bindande . Detta tilldelar en plats i minnet till maskinkod av en dator när programmet kompileras till en körbar binär fil . Adressen bindande tilldelar en logisk adress till startpunkten för segmentet i minnet där objektet koden lagras . Den minnesallokering är långsiktigt och kan endast ändras genom att kompilera programmet .
Load Time bindande
p Om minnesallokering betecknas vid den tidpunkt då programmet fördelas , så inget program någonsin kan överföras från en dator till en annan i sitt sammanställt tillstånd . Detta beror på den exekverbara koden innehåller minnesallokeringar som kanske redan används av andra program på den nya datorn . I detta fall är programmets logiska adresser inte bundna till fysiska adresser tills programmet startas och laddas in i minnet .
Execution Time bindande
Exekveringstid adress bindande oftast gäller endast variabler i program och är den vanligaste formen av bindning för manus , som inte får sammanställts . I detta scenario , programmet begär minnesutrymme för en variabel i ett program för första gången den variabeln påträffas under bearbetningen av instruktionerna i manuset . Minnet kommer att tilldelas den variabeln tills programmet sekvensen slutar , eller om en särskild instruktion inom skriptet släpper minnesadress bunden till en variabel .