Skillnad mellan logisk adress och fysisk adress

Anonim

Logisk adress vs fysisk adress

I enklaste termer är en adress genererad av CPU känd som en logisk adress. Logiska adresser kallas också virtuella adresser. Ur ett program som körs verkar ett föremål vara beläget i adressen från den logiska adressen. Fysisk adress (även kallad de riktiga adresserna) är adressen som ses av minnesenheten och det tillåter åtkomst till en viss minnescell i huvudminnet av databussen.

Vad är en logisk adress?

Logisk adress är adressen som genereras av CPU: n. Ur ett program som körs verkar ett föremål vara beläget i 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 den uppsättning logiska adresser som genereras av ett program. Logiska adresser måste kartläggas till fysiska adresser innan de används och den här kartläggningen hanteras med hjälp av en maskinvaruanordning som heter Memory Management Unit (MMU). Det finns flera kartläggningssystem som används av MMU. 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 som används för att generera kartläggningen. Adressbindning (dvs. e. Allokeringsinstruktioner och data i minnesadresser) kan hända i tre olika tider. Adressbindning kan hända vid kompileringstid om de faktiska minnesplatserna är kända i förväg och detta skulle generera den absoluta koden i kompileringstiden. Adressbindning 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 i utförandetidadressen bindande är de olika.

Vad är en fysisk adress?

Fysisk adress eller den riktiga adressen är adressen som ses av minnesenheten och det gör att databussen kan komma åt en viss minnescell i huvudminnet. Logiska adresser som genereras av CPU när man kör ett program mappas till fysisk adress med hjälp av MMU. Till exempel, genom att använda det enklaste kartläggningsschemat, som lägger till flyttningsregistret (antar att värdet i registret är y) värde till den logiska adressen, skulle ett logiskt adressintervall från 0 till x kartlägga till ett fysiskt adressintervall y till x + y. detta kallas också det fysiska adressutrymmet för det programmet.Alla logiska adresser måste kartläggas till fysiska adresser innan de kan användas.

Vad är skillnaden mellan en logisk adress och en fysisk adress?

Logisk adress är den adress som genereras av CPU (ur ett program som körs) medan fysisk adress (eller den riktiga adressen) är adressen som ses av minnesenheten och det gör det möjligt för databussen att komma åt en viss minnescell i huvudminnet. Alla logiska adresser måste kartläggas till fysiska adresser innan de kan användas av MMU. Fysiska och logiska adresser är samma när du använder kompileringstid och laddningstidadress bindande men de skiljer sig när du använder bindningstid för exekveringstid.