Väzba adresy prideľuje pamäť počítača softvéru.
Kredit za obrázok: Ryan McVay/Photodisc/Getty Images
Pamäť počítača používa logické adresy aj fyzické adresy. Väzba adresy prideľuje umiestnenie fyzickej pamäte logickému ukazovateľu priradením fyzickej adresy k logickej adrese, ktorá je tiež známa ako virtuálna adresa. Väzba adries je súčasťou správy pamäte počítača a vykonáva ju operačný systém v mene aplikácií, ktoré potrebujú prístup k pamäti.
Správa pamäte
Väzba adresy sa týka spôsobu, akým je kód programu uložený v pamäti. Programy sú napísané v ľudsky čitateľnom texte podľa série pravidiel stanovených štrukturálnymi požiadavkami programovací jazyk a používanie kľúčových slov, ktoré centrálne spracovanie počítača interpretuje do akcií Jednotka. Bod, v ktorom sa vytvorí spustiteľná verzia programu, určuje, kedy dôjde k viazaniu adresy. Niektoré programové jazyky, ako napríklad „C“ a COBOL, je potrebné skompilovať, zatiaľ čo iné, najmä skripty, sa spúšťajú z pôvodného textu programu a nie z binárnej verzie kompilovanej strojovým kódom.
Video dňa
Čas kompilácie
Prvým typom viazania adresy je viazanie adresy v čase kompilácie. Toto prideľuje priestor v pamäti strojovému kódu počítača, keď je program kompilovaný do spustiteľného binárneho súboru. Väzba adresy prideľuje logickú adresu počiatočnému bodu segmentu v pamäti, kde je uložený kód objektu. Alokácia pamäte je dlhodobá a dá sa zmeniť iba opätovnou kompiláciou programu.
Čas načítania
Ak je alokácia pamäte určená v čase, keď je program pridelený, žiadny program sa nikdy nemôže preniesť z jedného počítača do druhého vo svojom skompilovanom stave. Je to preto, že spustiteľný kód bude obsahovať pridelenie pamäte, ktoré už môžu používať iné programy na novom počítači. V tomto prípade logické adresy programu nie sú viazané na fyzické adresy, kým sa program nevyvolá a nezavedie do pamäte.
Čas vykonania
Väzba adresy v čase vykonania sa zvyčajne vzťahuje iba na premenné v programoch a je najbežnejšou formou väzby pre skripty, ktoré sa nekompilujú. V tomto scenári program požaduje pamäťový priestor pre premennú v programe, keď sa s touto premennou prvýkrát stretne počas spracovania pokynov v skripte. Pamäť bude prideľovať priestor tejto premennej, kým sa neskončí postupnosť programu, alebo pokiaľ konkrétna inštrukcia v skripte neuvoľní adresu pamäte viazanú na premennú.