Razlika između logičke adrese i fizičke adrese

Sadržaj:

Razlika između logičke adrese i fizičke adrese
Razlika između logičke adrese i fizičke adrese

Video: Razlika između logičke adrese i fizičke adrese

Video: Razlika između logičke adrese i fizičke adrese
Video: Kemija - Stehiometrija 2024, Lipanj
Anonim

Ključna razlika između logičke adrese i fizičke adrese je u tome što CPU generira logičku adresu tijekom izvođenja programa, dok je fizička adresa mjesto u memorijskoj jedinici.

Jednostavno rečeno, CPU generira logičku adresu ili virtualnu adresu. Iz perspektive programa koji se izvodi, čini se da se stavka nalazi na adresi koju daje logička adresa. Memorijska jedinica prati fizičku adresu. Štoviše, omogućuje pristup određenoj memorijskoj ćeliji u glavnoj memoriji podatkovnom sabirnicom.

Razlika između logičke adrese i fizičke adrese - Sažetak usporedbe
Razlika između logičke adrese i fizičke adrese - Sažetak usporedbe
Razlika između logičke adrese i fizičke adrese - Sažetak usporedbe
Razlika između logičke adrese i fizičke adrese - Sažetak usporedbe

Što je logička adresa?

CPU generira logičku adresu. Iz perspektive programa koji se izvodi, čini se da se stavka nalazi na adresi koju daje logička adresa. Aplikacijski programi koji se izvode na računalu ne vide fizičke adrese. Oni uvijek rade koristeći logičke adrese. Logički adresni prostor je skup logičkih adresa koje generira program. Potrebno je mapirati logičke adrese u fizičke adrese prije njihove uporabe. Jedinica za upravljanje memorijom hardverskog uređaja (MMU) upravlja ovim procesom mapiranja.

MMU sheme mapiranja

MMU slijedi nekoliko shema mapiranja. U najjednostavnijoj shemi preslikavanja, vrijednost u registru premještanja dodaje se svakoj logičkoj adresi koju proizvode aplikacijski programi prije nego što ih pošalju u memoriju. Postoje i neke druge složene metode za generiranje mapiranja. Vezanje adrese (tj. dodjela instrukcija i podataka u memorijske adrese) može se dogoditi u tri različita vremena.

Razlika između logičke adrese i fizičke adrese
Razlika između logičke adrese i fizičke adrese
Razlika između logičke adrese i fizičke adrese
Razlika između logičke adrese i fizičke adrese

Slika 01: Logička i fizička adresa

Prvo, to se može dogoditi tijekom vremena prevođenja ako su stvarne memorijske lokacije unaprijed poznate, a to bi generiralo apsolutni kod u vremenu prevođenja. To se također može dogoditi tijekom učitavanja ako memorijske lokacije nisu unaprijed poznate. U tu svrhu potrebno je generirati kod koji se može ponovno locirati tijekom kompilacije. Nadalje, vezanje adrese može se dogoditi u vrijeme izvođenja. To zahtijeva hardversku podršku za mapiranje adresa. U vremenu kompajliranja i vremenu učitavanja vezanja adrese, logičke i fizičke adrese su iste. Ali ova je procedura drugačija kada se vezanje adrese događa u vremenu izvođenja.

Što je fizička adresa?

Memorijska jedinica promatra fizičku adresu ili stvarnu adresu. Omogućuje podatkovnoj sabirnici pristup određenoj memorijskoj ćeliji u glavnoj memoriji. MMU preslikava logičku adresu u fizičku adresu. Na primjer, korištenjem najjednostavnije sheme preslikavanja, koja dodaje vrijednost registra premještanja (pretpostavimo da je vrijednost u registru y) logičkoj adresi, raspon logičke adrese od 0 do x mapirao bi se u raspon fizičke adrese y do x+ g.

Nadalje, ovo se također naziva fizički adresni prostor tog programa. Sve logičke adrese moraju se mapirati u fizičke adrese prije nego što se mogu koristiti.

Koja je razlika između logičke adrese i fizičke adrese?

Logična adresa naspram fizičke adrese

Logična adresa je adresa na kojoj se čini da se stavka nalazi iz perspektive izvršnog aplikacijskog programa. Fizička adresa je memorijska adresa koja je predstavljena u obliku binarnog broja u strujnom krugu adresne sabirnice kako bi se podatkovnoj sabirnici omogućio pristup određenoj ćeliji za pohranu glavne memorije ili registru memorije mapirane I /O uređaj.
Vidljivost
Korisnik može vidjeti logičku adresu programa. Korisnik ne može vidjeti fizičku adresu programa.
Metoda generiranja
CPU generira logičku adresu. MMU izračunava fizičku adresu.
Pristupačnost
Korisnik može koristiti logičku adresu za pristup fizičkoj adresi. Korisnik ne može izravno pristupiti fizičkoj adresi.

Sažetak – Logička adresa naspram fizičke adrese

Razlika između logičke adrese i fizičke adrese je u tome što CPU generira logičku adresu kada se program izvršava, dok je fizička adresa mjesto u memorijskoj jedinici. Sve logičke adrese moraju se mapirati u fizičke adrese prije nego što ih MMU može koristiti. Fizička i logička adresa iste su kada se koristi vezanje adrese vremena kompajliranja i vremena učitavanja, ali se razlikuju kada se koristi vezanje adrese vremena izvršavanja.

Preporučeni: