Forskellen mellem logisk adresse og fysisk adresse

Det nøgle differencmellem logisk adresse og fysisk adresse er det CPU genererer logisk adresse under programudførelse, hvorimod den fysiske adresse er en placering i hukommelsesenheden.

Enkelt sagt genererer CPU den logiske adresse eller den virtuelle adresse. Set fra et program, der kører, ser et element ud til at være placeret på den adresse, der er angivet af den logiske adresse. Hukommelsesenheden overvåger den fysiske adresse. Desuden giver det adgang til en bestemt hukommelsescelle i hovedhukommelsen af ​​databussen.

INDHOLD

1. Oversigt og nøgleforskel
2. Hvad er logisk adresse
3. Hvad er fysisk adresse
4. Sammenligning side ved side - Logisk adresse vs fysisk adresse i tabelform
5. Resume

Hvad er logisk adresse?

CPU genererer logisk adresse. Set fra et program, der kører, ser et element ud til at være placeret på den adresse, der er angivet af den logiske adresse. Applikationsprogrammer, der kører på computeren, ser ikke de fysiske adresser. De fungerer altid ved hjælp af de logiske adresser. Det logiske adresserum er det sæt logiske adresser, et program genererer. Det er nødvendigt at kortlægge de logiske adresser til fysiske adresser, før du bruger dem. Hardwareenhedens hukommelsesstyringsenhed (MMU) håndterer denne kortlægningsproces.

MMU-kortlægningsordninger

MMU følger flere kortlægningsordninger. I det enkleste kortlægningsskema føjes værdien i flytningsregisteret til hver logisk adresse, der er produceret af applikationsprogrammer, før den sendes til hukommelsen. Der er også nogle andre komplekse metoder til at generere kortlægningen. Adressebinding (dvs. allokering af instruktioner og data til hukommelsesadresser) kan ske på tre forskellige tidspunkter.

Figur 01: Logisk og fysisk adresse

For det første kan det ske i kompileringstid, hvis de faktiske hukommelsesplaceringer er kendt på forhånd, og dette ville generere den absolutte kode i kompileringstiden. Det kan også ske ved indlæsningstid, hvis hukommelsesplaceringerne ikke er kendt på forhånd. Til dette skal genplacerbar kode genereres på kompileringstidspunktet. Yderligere kan adressebinding ske på udførelsestidspunktet. Dette kræver hardwarestøtte til adressekortlægning. I kompilering af tid og indlæsningstid er adressebinding, logiske og fysiske adresser de samme. Men denne procedure er forskellig, når adressebinding sker i eksekveringstiden.

Hvad er fysisk adresse?

Hukommelsesenheden overvåger den fysiske adresse eller den rigtige adresse. Det giver databussen adgang til en bestemt hukommelsescelle i hovedhukommelsen. MMU kortlægger den logiske adresse til den fysiske adresse. For eksempel ved at bruge det enkleste kortlægningsskema, der tilføjer flytningsregisteret (antag at værdien i registeret er y) -værdien til den logiske adresse, vil en logisk adresse i området fra 0 til x kortlægge til et fysisk adresseområde y til x + y.

Desuden kaldes dette også det fysiske adresserum til det pågældende program. Alle de logiske adresser skal kortlægges til fysiske adresser, før de kan bruges.

Hvad er forskellen mellem logisk adresse og fysisk adresse?

 Logisk adresse vs fysisk adresse

Logisk adresse er den adresse, hvor et element ser ud til at opholde sig fra perspektivet for et eksekverende applikationsprogram. Fysisk adresse er en hukommelsesadresse, der er repræsenteret i form af et binært tal på adressebuskredsløbet for at gøre det muligt for databussen at få adgang til en særlig lagringscelle i hovedhukommelsen eller et register over hukommelseskortlagt I / O-enhed.
Sigtbarhed
Brugeren kan se et programs logiske adresse. Brugeren kan ikke se programmets fysiske adresse.
Generationsmetode
CPU genererer den logiske adresse. MMU beregner den fysiske adresse.
Tilgængelighed
Brugeren kan bruge den logiske adresse til at få adgang til den fysiske adresse. Brugeren har ikke direkte adgang til fysisk adresse.

Resume - Logisk adresse kontra fysisk adresse

Forskellen mellem logisk adresse og fysisk adresse er, at CPU genererer logisk adresse, når programmet udføres, medens den fysiske adresse er en placering i hukommelsesenheden. Alle de logiske adresser skal kortlægges til fysiske adresser, før MMU kan bruge dem. Fysiske og logiske adresser er de samme, når der bruges kompileringstid og indlæsningstid adressebinding, men de er forskellige, når man bruger bindingstid til udførelsestid.

Reference:

1. "Logisk adresse." Wikipedia, Wikimedia Foundation, 30. april 2018. Tilgængelig her 
2. “Fysisk adresse.” Wikipedia, Wikimedia Foundation, 30. april 2018. Tilgængelig her 

Billede høflighed:

1.'MMU-princip 'Ved Andre Schieleit - Eget arbejde, (Public Domain) via Commons Wikimedia