Forskjell mellom logisk adresse og fysisk adresse

Anonim

Logisk adresse vs fysisk adresse

I enkleste termer er en adresse generert av CPU kjent som en logisk adresse. Logiske adresser kalles også virtuelle adresser. Fra et program som kjører, synes et element å være plassert i adressen til den logiske adressen. Fysisk adresse (også kalt de virkelige adressene) er adressen som ses av minnesenheten, og det tillater tilgang til en bestemt minnecelle i hovedminnet av databussen.

Hva er en logisk adresse?

Logisk adresse er adressen generert av CPU. Fra et program som kjører, synes et element å være plassert i adressen til den logiske adressen. Applikasjonsprogrammer som kjører på datamaskinen, ser ikke de fysiske adressene. De jobber alltid med de logiske adressene. Den logiske adresserommet er settet av logiske adresser generert av et program. Logiske adresser må kartlegges til fysiske adresser før de blir brukt, og denne kartleggingen håndteres ved hjelp av en maskinvareenhet kalt Memory Management Unit (MMU). Det er flere kartleggingsordninger som brukes av MMU. I den enkleste kartleggingsordningen legges verdien i flyttingsregisteret til hver logisk adresse produsert av applikasjonsprogrammer før de sendes til minnet. Det er også noen andre komplekse metoder som brukes til å generere kartleggingen. Adressebinding (f.eks. Allokering av instruksjoner og data i minnet adresser) kan skje i tre forskjellige tider. Adressebinding kan skje i kompileringstid hvis de faktiske minnesteder er kjent på forhånd, og dette ville generere den absolutte koden i kompileringstid. Adressebinding kan også skje ved belastningstid hvis minnesteder ikke er kjent på forhånd. For dette må re-lokaliserbar kode genereres på kompileringstidspunktet. Videre kan adressebinding skje på kjøretid. Dette krever maskinvarestøtte for adressekartlegging. I kompileringstid og belastningstidspunkt bindende er logiske og fysiske adresser de samme. Men i henrettelsestidspunktet bindende er de forskjellige.

Hva er en fysisk adresse?

Fysisk adresse eller den virkelige adressen er adressen som ses av minnerenheten, og det tillater datobussen å få tilgang til en bestemt minnekelle i hovedminnet. Logiske adresser generert av CPU når du utfører et program, er kartlagt til fysisk adresse ved hjelp av MMU. For eksempel, ved å bruke det enkleste kartleggingsskjemaet, som legger til flyttingsregisteret (antar at verdien i registret er y) verdi til den logiske adressen, vil et logisk adresseområde fra 0 til x kartlegge til et fysisk adresseområde y til x + y. dette kalles også den fysiske adressen til dette programmet.Alle de logiske adressene må kortlegges i fysiske adresser før de kan brukes.

Hva er forskjellen mellom en logisk adresse og en fysisk adresse?

Logisk adresse er adressen generert av CPU (fra et program som kjører). Mens fysisk adresse (eller den virkelige adressen) er adressen som ses av minnesenheten, og det tillater datobussen å få tilgang til en bestemt minnescelle i hovedminnet. Alle de logiske adressene må kartlegges i fysiske adresser før de kan brukes av MMU. Fysiske og logiske adresser er de samme når du bruker kompileringstid og belastningstidspunkt bindende, men de adskiller seg når du bruker bindingen for kjøringen.