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 je možné vypočítať fyzickú adresu z danej logickej adresy?

Výpočet fyzickej adresy z logickej adresy vyžaduje jednotku správy pamäť (MMU) a znalosť tabuľky stránok. Proces zahŕňa niekoľko krokov:

1. Segmentácia (ak je to použiteľné):

* Niektoré systémy používajú segmentáciu spolu s stránkovaním. Ak sa použije segmentácia, logická adresa sa najskôr rozdelí na číslo segmentu a posun v tomto segmente. Číslo segmentu sa potom používa na lokalizáciu zodpovedajúceho deskriptora segmentu v tabuľke segmentu. Deskriptor segmentu obsahuje informácie, ako je základná adresa segmentu vo fyzickej pamäti a jeho limit (veľkosť).

* Ak je číslo segmentu neplatné alebo je posun mimo limitu segmentu, nastane porucha segmentácie.

2. Paging:

* Či sa používa segmentácia alebo sa používa, stránkovanie je takmer vždy zapojené do moderných systémov. Logická adresa (alebo posun od predchádzajúceho kroku segmentácie) je rozdelená na číslo strany a posun stránky.

* Číslo stránky sa používa ako index do tabuľky strán . Táto tabuľka mapuje čísla virtuálnych strán na čísla fyzických rámcov. Každá položka v tabuľke stránky obsahuje číslo fyzického rámca (alebo ukazovateľ na tabuľku stránok nižšej úrovne v viacúrovňovom stránkovaní), kde zodpovedajúca stránka sa nachádza vo fyzickej pamäti.

* viacúrovňové strángie: Na efektívne spravovanie veľmi veľkých adresárskych priestorov systémy často používajú viacúrovňové tabuľky strán (napr. Dvojúrovňové, trojúrovňové atď.). Toto sa vyhýba jednej gigantickej tabuľke stránok. V takom prípade je číslo strany ďalej rozložené, aby sa indexovali postupne nižšie úrovne tabuliek strán, kým sa nenájde konečné číslo fyzického rámca. Každá položka v tabuľke vyššej úrovne ukazuje na ďalšiu úroveň.

* Ak položka tabuľky stránky nie je prítomná (porucha stránky), operačný systém musí načítať požadovanú stránku zo sekundárneho úložiska (napr. Pevný disk) do hlavnej pamäte. Zahŕňa to pozastavenie aktuálneho procesu.

3. Výpočet fyzickej adresy:

* Akonáhle je číslo fyzikálneho rámca získané z tabuľky stránok, fyzická adresa je vypočítaný zreťazením čísla fyzického rámca a Stránka offset . Počas procesu prekladu zostáva nezmenený.

vzorec (zjednodušený pre jednoúrovňové strángie):

`Fyzická adresa =(číslo strany * veľkosť stránky) + Offsetge of the Stránka`

Kde:

* číslo strany: Získané z logickej adresy.

* Veľkosť stránky: Systémová konštanta definovaná (napr. 4 kB).

* Offsetge: Získané z logickej adresy.

v súhrne: MMU používa logickú adresu a tabuľky stránok na vykonanie prekladu adries. Proces zahŕňa vyhľadávanie položiek v tabuľkách stránok, aby ste našli číslo fyzického rámca zodpovedajúceho číslu logickej strany, a potom ich kombinuje s posunom stránky, aby ste získali konečnú fyzickú adresu. Zložitosť sa zvyšuje s použitím segmentácie a viacúrovňového stránkovania. Operačný systém zohráva rozhodujúcu úlohu pri správe tabuliek stránok a porúch strany manipulácie.

Najnovšie články

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