Verschil tussen logisch adres en fysiek adres

De belangrijkste verschile tussen logisch adres en fysiek adres is dat CPU genereert een logisch adres tijdens de uitvoering van het programma terwijl het fysieke adres een locatie in de geheugeneenheid is.

In eenvoudige bewoordingen genereert CPU het logische adres of virtuele adres. Vanuit het perspectief van een programma dat wordt uitgevoerd, lijkt een item zich te bevinden op het adres dat wordt opgegeven door het logische adres. Geheugeneenheid neemt het fysieke adres waar. Bovendien maakt het toegang tot een bepaalde geheugencel in het hoofdgeheugen door de databus mogelijk.

INHOUD

1. Overzicht en belangrijkste verschil
2. Wat is logisch adres
3. Wat is fysiek adres
4. Vergelijking zij aan zij - logisch adres versus fysiek adres in tabelvorm
5. Samenvatting

Wat is logisch adres?

CPU genereert logisch adres. Vanuit het perspectief van een programma dat wordt uitgevoerd, lijkt een item zich te bevinden op het adres dat wordt opgegeven door het logische adres. Toepassingsprogramma's die op de computer worden uitgevoerd, zien de fysieke adressen niet. Ze werken altijd met behulp van de logische adressen. De logische adresruimte is de verzameling logische adressen, een programma genereert. Het is noodzakelijk om de logische adressen aan fysieke adressen toe te wijzen voordat ze worden gebruikt. De hardware-eenheid Memory Management Unit (MMU) behandelt dit toewijzingsproces.

MMU-kaartschema's

MMU volgt verschillende kaartschema's. In het eenvoudigste toewijzingsschema wordt de waarde in het relocatieregister toegevoegd aan elk logisch adres dat door toepassingsprogramma's wordt geproduceerd voordat ze naar het geheugen worden verzonden. Er zijn ook enkele andere complexe methoden om de toewijzing te genereren. Adresbinding (dat wil zeggen het toewijzen van instructies en gegevens aan geheugenadressen) kan op drie verschillende tijdstippen plaatsvinden.

Figuur 01: Logisch en fysiek adres

Ten eerste kan het in de compileertijd gebeuren als de werkelijke geheugenlocaties van tevoren bekend zijn, en dit zou de absolute code genereren tijdens het compileren. Het kan ook tijdens het laden gebeuren als de geheugenlocaties niet van tevoren bekend zijn. Hiervoor moet een herlokaliseerbare code worden gegenereerd tijdens het compileren. Bovendien kan binden van adressen tijdens de uitvoering plaatsvinden. Dit vereist hardware-ondersteuning voor het in kaart brengen van adressen. Tijdens het compileren en het laden van de laadtijd zijn logische en fysieke adressen hetzelfde. Maar deze procedure is anders wanneer adresbinding in de uitvoeringstijd optreedt.

Wat is fysiek adres?

Geheugeneenheid observeert het fysieke adres of het echte adres. Hiermee kan de databus toegang krijgen tot een bepaalde geheugencel in het hoofdgeheugen. MMU wijst het logische adres toe aan het fysieke adres. Als u bijvoorbeeld het eenvoudigste toewijzingsschema gebruikt, waarbij het relocatieregister wordt toegevoegd (neem aan dat de waarde in het register een y) waarde is voor het logische adres, zou een logisch adresbereik van 0 tot x worden toegewezen aan een fysiek adresbereik y tot x + Y.

Bovendien wordt dit ook de fysieke adresruimte van dat programma genoemd. Alle logische adressen moeten worden toegewezen aan fysieke adressen voordat ze kunnen worden gebruikt.

Wat is het verschil tussen logisch adres en fysiek adres?

 Logisch adres versus fysiek adres

Logisch adres is het adres waarop een item lijkt te liggen vanuit het perspectief van een uitvoeringsprogramma. Fysiek adres is een geheugenadres dat wordt weergegeven in de vorm van een binair nummer op het adresbuscircuit om de databus toegang te geven tot een bijzonder opslagcel van het hoofdgeheugen of een register van geheugen toegewezen I / O-apparaat.
Zichtbaarheid
De gebruiker kan het logische adres van een programma bekijken. De gebruiker kan het fysieke adres van het programma niet bekijken.
Methode van generatie
CPU genereert het logische adres. MMU berekent het fysieke adres.
Toegankelijkheid
De gebruiker kan het logische adres gebruiken om toegang te krijgen tot het fysieke adres. De gebruiker heeft geen rechtstreeks toegang tot het fysieke adres.

Samenvatting - Logisch adres versus fysiek adres

Het verschil tussen logisch adres en fysiek adres is dat de CPU een logisch adres genereert wanneer het programma wordt uitgevoerd terwijl het fysieke adres een locatie in de geheugeneenheid is. Alle logische adressen moeten worden toegewezen aan fysieke adressen voordat de MMU deze kan gebruiken. Fysieke en logische adressen zijn hetzelfde bij gebruik van compileertijd- en laadtijdadrestrictie, maar deze verschillen bij gebruik van binding aan het uitvoeringstijdadres.

Referentie:

1. "Logisch adres." Wikipedia, Wikimedia Foundation, 30 april 2018. Beschikbaar Hier 
2. "Fysiek adres." Wikipedia, Wikimedia Foundation, 30 april 2018. Beschikbaar Hier 

Afbeelding met dank aan:

1.'MMU principe'door Andre Schieleit - Eigen werk, (Public Domain) via Commons Wikimedia