Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako sa generuje fyzická adresa?

Generovanie fyzickej adresy do značnej miery závisí od systému správy pamäte operačného systému a počítačovej architektúry. Neexistuje jediný univerzálny algoritmus. Všeobecný proces však zahŕňa mapovanie logickej (virtuálnej) adresy na fyzickú adresu. Toto mapovanie je rozhodujúce, pretože:

* Ochrana: Viaceré procesy prevádzkujú súčasne a každý potrebuje svoj vlastný izolovaný pamäťový priestor. Priame používanie fyzických adries by viedlo k chaosu a bezpečnostným zraniteľnostiam.

* Účinnosť: Procesy nemusia potrebovať všetku ich pridelenú pamäť naraz. Mapovanie umožňuje efektívne používanie fyzického pamäte RAM.

* Zdieľanie pamäte: Procesy môžu potrebovať zdieľanie určitých pamäťových oblastí. Mapovanie pomáha bezpečne spravovať toto zdieľanie.

Tu je rozdelenie procesu so zameraním na najbežnejší prístup pomocou stránkovania:

1. Generovanie logickej adresy: Program generuje logickú adresu (tiež nazývanú virtuálna adresa). Toto je adresa, ktorú program používa, nezávisle od rozloženia fyzickej pamäte. Zvyčajne sa skladá z dvoch častí:

* číslo strany: Identifikuje, ktorá stránka má program prístup.

* Offset: Identifikuje konkrétne umiestnenie na tejto stránke.

2. Vyhľadávanie tabuľky strán: Operačný systém používa dátovú štruktúru s názvom A * Stránková tabuľka * na preklad logických adries do fyzických adries. Táto tabuľka je zvyčajne viacúrovňová pre účinnosť pri manipulácii s veľkými adresami. Každá položka v tabuľke stránky zodpovedá stránke virtuálnej pamäte procesu. Záznam obsahuje:

* súčasný bit: Označuje, či je stránka momentálne načítaná vo fyzickej pamäti. Ak nie, dochádza k chybe * stránky *, ktorá spustí OS, aby sa stránka načítala zo sekundárneho úložiska (ako pevný disk).

* Číslo rámu: Číslo rámca fyzickej pamäte (susediaci blok fyzickej pamäte), kde sa stránka nachádza.

* Ochranné bity: Zadajte prístupové práva (prečítajte, napíšte, vykonajte).

3. Výpočet fyzickej adresy: Zadanie tabuľky stránky pre dané číslo strany sa nachádza. Ak je súčasný bit nastavený, fyzická adresa sa vypočítava zreťazením:

* Číslo rámu (z tabuľky stránky): To označuje počiatočnú adresu stránky vo fyzickej pamäti.

* ofset (z logickej adresy): Toto je rovnaký posun na stránke.

4. Fyzická adresa: Výsledná zreťazenie je fyzická adresa použitá na prístup k umiestneniu pamäte.

Príklad (zjednodušený):

Povedzme:

* Logická adresa:číslo strany =2, offset =100

* Zadanie tabuľky stránky pre stránku Číslo 2:Číslo rámu =5, súčasný bit =1

* Veľkosť rámu =1024 bajtov

Fyzická adresa by bola:(Číslo rámu * Veľkosť rámu) + offset =(5 * 1024) + 100 =5224

Variácie a komplikácie:

* Segmentácia: Ďalšia schéma správy pamäte namiesto stránok používa segmenty. Segmentácia poskytuje iný spôsob organizácie pamäte, často používaného v spojení s stránkovaním.

* prekladací roztok (TLB): Na urýchlenie prekladu adresy sa vyrovnávacia pamäť nazýva TLB Stores, ktoré nedávno použili položky tabuľky stránok.

* Tabuľky na viacúrovňové stránky: V prípade veľmi veľkých adries priestorov sú tabuľky stránok často hierarchické (napr. Tabuľka stránky smerujúca na ďalšie tabuľky stránok).

* MAMPAPMAPIDA I/O: Niektoré zariadenia sú prístupné pomocou pamäťových adries. S týmito mapovaniami sa spracúva operačným systémom a hardvérom.

* Randomizácia rozloženia adresy (ASLR): Bezpečnostná funkcia, ktorá náhodne náhodne umiestnenie kľúčových pamäťových oblastí, aby sťažilo využívanie.

Stručne povedané, vytvorenie fyzickej adresy je zložitý proces zahŕňajúci viaceré kroky a dátové štruktúry spravované operačným systémom. Podrobnosti sa líšia v závislosti od konkrétnej architektúry a OS, ale základný princíp zostáva rovnaký:mapovanie logických adries k fyzickým adresám na ochranu, efektívnosť a správu pamäte.

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené