Loogilise ja füüsilise aadressi erinevus

Sisukord:

Loogilise ja füüsilise aadressi erinevus
Loogilise ja füüsilise aadressi erinevus

Video: Loogilise ja füüsilise aadressi erinevus

Video: Loogilise ja füüsilise aadressi erinevus
Video: Парковки. Как испортить город кучей асфальта. 2024, Juuli
Anonim

Põhiline erinevus loogilise ja füüsilise aadressi vahel on see, et CPU genereerib programmi täitmise ajal loogilise aadressi, samas kui füüsiline aadress on asukoht mäluseadmes.

Lihtsam alt öeldes genereerib CPU loogilise aadressi või virtuaalse aadressi. Töötava programmi vaatenurgast näib, et üksus asub loogilise aadressi antud aadressil. Mäluseade jälgib füüsilist aadressi. Lisaks võimaldab see andmesiini kaudu juurdepääsu põhimälu kindlale mäluelemendile.

Loogilise ja füüsilise aadressi erinevus – võrdluse kokkuvõte
Loogilise ja füüsilise aadressi erinevus – võrdluse kokkuvõte
Loogilise ja füüsilise aadressi erinevus – võrdluse kokkuvõte
Loogilise ja füüsilise aadressi erinevus – võrdluse kokkuvõte

Mis on loogiline aadress?

CPU genereerib loogilise aadressi. Töötava programmi vaatenurgast näib, et üksus asub loogilise aadressi antud aadressil. Arvutis töötavad rakendusprogrammid ei näe füüsilisi aadresse. Nad töötavad alati loogiliste aadresside abil. Loogiline aadressiruum on loogiliste aadresside kogum, mille programm genereerib. Enne kasutamist on vaja loogilised aadressid vastendada füüsilisteks aadressideks. Selle vastendusprotsessiga tegeleb riistvaraseadme mäluhaldusüksus (MMU).

MMU kaardistamise skeemid

MMU järgib mitmeid kaardistamisskeeme. Lihtsaimas kaardistamisskeemis lisatakse ümberpaigutamisregistris olev väärtus igale rakendusprogrammide toodetud loogilisele aadressile enne nende mällu saatmist. Kaardistamise loomiseks on ka teisi keerukaid meetodeid. Aadresside sidumine (st juhiste ja andmete jagamine mäluaadressidesse) võib toimuda kolmel erineval ajal.

Erinevus loogilise ja füüsilise aadressi vahel
Erinevus loogilise ja füüsilise aadressi vahel
Erinevus loogilise ja füüsilise aadressi vahel
Erinevus loogilise ja füüsilise aadressi vahel

Joonis 01: loogiline ja füüsiline aadress

Esiteks, see võib juhtuda kompileerimise ajal, kui tegelikud mälukohad on ette teada ja see genereeriks kompileerimise ajal absoluutse koodi. See võib juhtuda ka laadimise ajal, kui mälu asukohad pole ette teada. Selleks tuleb kompileerimise ajal genereerida uuesti tuvastatav kood. Lisaks võib aadresside sidumine toimuda täitmise ajal. See nõuab aadresside kaardistamiseks riistvaratuge. Kompileerimisaja ja laadimisaja aadresside sidumisel on loogilised ja füüsilised aadressid samad. Kuid see protseduur on erinev, kui aadresside sidumine toimub täitmise ajal.

Mis on füüsiline aadress?

Mäluseade jälgib füüsilist või tegelikku aadressi. See võimaldab andmesiinil pääseda juurde põhimälu kindlale mäluelemendile. MMU vastendab loogilise aadressi füüsiliseks aadressiks. Näiteks kasutades lihtsaimat vastendusskeemi, mis lisab loogilisele aadressile ümberpaigutamisregistri (oletame, et väärtus registris on y) väärtuse, loogiline aadress vahemikus 0 kuni x vastendaks füüsilise aadressivahemiku y kuni x+. y.

Lisaks nimetatakse seda ka selle programmi füüsiliseks aadressiruumiks. Kõik loogilised aadressid tuleb enne kasutamist vastendada füüsilisteks aadressideks.

Mis vahe on loogilisel ja füüsilisel aadressil?

Loogiline aadress vs füüsiline aadress

Loogiline aadress on aadress, millel üksus näib olevat töötava rakendusprogrammi vaatenurgast. Füüsiline aadress on mäluaadress, mis on esitatud kahendarvuna aadressi siini vooluringis, et võimaldada andmesiinil pääseda juurde põhimälu kindlale salvestuselemendile või kaardistatud mäluregistrile. /O seade.
Nähtavus
Kasutaja saab vaadata programmi loogilist aadressi. Kasutaja ei saa vaadata programmi füüsilist aadressi.
Põllutamise meetod
CPU genereerib loogilise aadressi. MMU arvutab välja füüsilise aadressi.
Juurdepääsetavus
Kasutaja saab füüsilisele aadressile juurdepääsuks kasutada loogilist aadressi. Kasutaja ei pääse füüsilisele aadressile otse juurde.

Kokkuvõte – loogiline aadress vs füüsiline aadress

Loogilise aadressi ja füüsilise aadressi erinevus seisneb selles, et CPU genereerib programmi käivitamisel loogilise aadressi, samas kui füüsiline aadress on asukoht mäluseadmes. Kõik loogilised aadressid tuleb vastendada füüsilisteks aadressideks, enne kui MMU saab neid kasutada. Füüsilised ja loogilised aadressid on kompileerimisaja ja laadimisaja aadresside sidumise kasutamisel samad, kuid erinevad täitmisaja aadresside sidumise kasutamisel.

Soovitan: