Skillnad mellan logisk adress och fysisk adress

De nyckelskillnade mellan logisk adress och fysisk adress är det CPU genererar logisk adress under programkörning medan den fysiska adressen är en plats i minnesenheten.

Enkelt uttryckt genererar CPU den logiska adressen eller den virtuella adressen. Ur ett program som körs verkar ett föremål vara beläget på adressen från den logiska adressen. Minnesenheten observerar den fysiska adressen. Dessutom tillåter den åtkomst till en särskild minnescell i huvudminnet av databussen.

INNEHÅLL

1. Översikt och nyckelskillnad
2. Vad är logisk adress
3. Vad är fysisk adress
4. Jämförelse vid sida vid sida - Logisk adress mot fysisk adress i tabellform
5. Sammanfattning

Vad är logisk adress?

CPU genererar logisk adress. Ur ett program som körs verkar ett föremål vara beläget på adressen från den logiska adressen. Applikationsprogram som körs på datorn ser inte de fysiska adresserna. De arbetar alltid med de logiska adresserna. Det logiska adressutrymmet är uppsättningen av logiska adresser, ett program genererar. Det är nödvändigt att kartlägga de logiska adresserna till fysiska adresser innan de används. Maskinhanteringsenhetens minnehanteringsenhet (MMU) hanterar denna kartläggningsprocess.

MMU Mapping Schemes

MMU följer flera kartläggningssystem. I det enklaste kartläggningssystemet läggs värdet i flyttningsregistret till varje logisk adress som produceras av applikationsprogram innan de skickas till minnet. Det finns också några andra komplexa metoder för att generera kartläggningen. Adressbindning (dvs allokering av instruktioner och data till minnesadresser) kan hända vid tre olika tillfällen.

Figur 01: Logisk och fysisk adress

För det första kan det hända i kompileringstid om de faktiska minnesplatserna är kända i förväg, och detta skulle generera den absoluta koden i kompileringstid. Det kan också hända vid laddningstid om minnesplatserna inte är kända i förväg. För detta måste omplacerbar kod genereras vid sammanställningstiden. Vidare kan adressbindning ske vid körningstid. Detta kräver hårdvaruunderstöd för adresskartläggning. I kompileringstid och belastningstidspunkt bindande är logiska och fysiska adresser desamma. Men denna procedur är annorlunda när adressbindning händer vid körningstid.

Vad är fysisk adress?

Minnesenheten observerar den fysiska adressen eller den riktiga adressen. Det låter databussen komma åt en viss minnescell i huvudminnet. MMU kartlägger den logiska adressen till den fysiska adressen. Till exempel, genom att använda det enklaste kartläggningssystemet, som lägger till flyttningsregistret (antar att värdet i registret är y) värde till den logiska adressen, kommer en logisk adress från 0 till x att kartlägga till ett fysiskt adressintervall y till x + y.

Dessutom kallas detta också det fysiska adressutrymmet för det programmet. Alla logiska adresser måste kartläggas i fysiska adresser innan de kan användas.

Vad är skillnaden mellan logisk adress och fysisk adress?

 Logisk adress vs fysisk adress

Logisk adress är adressen där ett föremål verkar ligga i perspektivet av ett exekveringsprogram. Fysisk adress är en minnesadress som representeras i form av ett binärt nummer på adressbusskretsen för att möjliggöra att databussen får åtkomst till en särskild lagringscell i huvudminnet eller ett register över minneskort i I / O-enheten.
Synlighet
Användaren kan se programmets logiska adress. Användaren kan inte visa den fysiska adressen till programmet.
Metod för generering
CPU genererar den logiska adressen. MMU beräknar den fysiska adressen.
Tillgänglighet
Användaren kan använda den logiska adressen för att komma åt den fysiska adressen. Användaren kan inte direkt få tillgång till den fysiska adressen.

Sammanfattning - Logisk adress vs fysisk adress

Skillnaden mellan logisk adress och fysisk adress är att CPU genererar logisk adress när programmet körs medan den fysiska adressen är en plats i minnesenheten. Alla logiska adresser måste kartläggas i fysiska adresser innan MMU kan använda dem. Fysiska och logiska adresser är samma när du använder kompileringstiden och laddningstidadressen bindande, men de skiljer sig när du använder bindningstid för exekveringstid.

Referens:

1. "Logisk adress." Wikipedia, Wikimedia Foundation, 30 april 2018. Tillgänglig här 
2. "Fysisk adress". Wikipedia, Wikimedia Foundation, 30 april 2018. Tillgänglig här 

Image Courtesy:

1.MMU-principen "Med Andre Schieleit - Egent arbete, (Public Domain) via Commons Wikimedia