Vyhledávání

Citáty

" "

Operační paměť

Autor Michal Tenkrát

Operační paměť je volatilní vnitřní elektronická paměť počítače typu RWM-RAM, určená pro dočasné uložení dat a spouštěného programového kódu. Tato paměť má obvykle rychlejší přístup než vnější paměť (pevný disk). Tuto paměť může procesor adresovat přímo, pomocí podpory ve své instrukční síti. Strojové instrukce jsou adresovány pomocí instrukčního ukazatele a k datům se obvykle přistupuje pomocí adresace prvku paměti hodnotou uloženou v registru procesoru nebo je adresa dat součástí strojové instrukce.

Operační paměť je spojena s procesorem pomocí sběrnice, obvykle se mezi procesor a operační paměť vkládá rychlá vyrovnávací paměť typu cache, neboli paměť, která je přímo přístupná procesoru. Operační paměť je určená pro uchovávání kódu programů respektive procesů spolu s mezivýsledky a výsledky jejich činnosti.

Je-li operační paměť reprezentována pamětí s přímým přístupem, označujeme adresový prostor jako fyzický adresový prostor (FAP). Velikost tohoto prostoru je omezena buď fyzickou velikostí paměťových modulů, nebo velikostí adresy.

Úkoly správy FAP

  • přidělování a uvolňování paměťových regionů na požádání procesů
  • udržování informací o obsazení adresového prostoru
  • zabezpečení ochrany paměti - zabránění přístupu procesu k paměti mimo jeho přidělený region
  • u více úlohových systémů musí podporovat střídavý běh více procesů či v minimálním případě mu nesmí bránit

Metody správy FAP

Monolitická paměť - nejjednodušší správu operační paměti. FAP je zde rozdělen na dva bloky, na dvě souvislé části, jež jsou určeny počáteční adresou. První blok je přidělen rutinám jádra operačního systému a jeho datovým strukturám. Druhý je pak přidělován na požádání ostatním procesům. Paměť jádra sdílí všechny procesy, protože rutiny jádra včetně jeho datových struktur jsou využívány veškerými procesy při vykonávání služeb operačního systému. Paměť procesů je soukromého charakteru, tedy přístup k ní má pouze vlastník. Regulace je prováděna velice triviálně. Je li paměť volná je přidělena procesu celá bez ohledu na požadovanou velikost, přičemž nesmí přesáhnout velikost bloku. V případě obsazené paměti jiným procesem je požadavek na přidělení odmítnut. Toto zamítnutí může mít fatální důsledky pro proces žádající o paměť. K přidělení paměti vlastně dochází jen při spuštění procesu a proces ji využívá po celou dobu svého životního cyklu. K uvolnění dojde po ukončení života procesu.

Statické bloky - Jedná se o jedno z možných řešení nedostatečného využít aplikační paměti. Aplikační paměť je rozdělena na několik samostatných bloků, které lze alokovat samostatně. Tedy nepočítáme-li procesy odložené do sekundární paměti, maximální počet procesů je omezen počtem bloků. Jeden proces může zabírat i více nesouvislých bloků. Jedná se o bloky pevné velikosti, jejichž velikost bývá vzájemně rozdílná a počet s velikostí se stanovují při překladu operačního systému. Velikost s počtem bloků vycházejí z druhu aplikací, které mají být na daném operačním systému provozovány. Strategie přidělování bloků je založena na stejném principu u čistě monolitické paměti s rozdílem, že žádajícímu procesu o přidělení paměti je přidělen blok o nejmenší velikosti o dostatečné velikosti. Informace o obsazení bloků jsou udržovány poli o stanovené velikosti. Jelikož je aplikační paměť rozdělena na již zmíněné bloky, je nutné zajisti jejich ochranu. Na tuto ochranu se používá limitní registr procesoru. V limitním registru procesoru je uložena hodnota aktuálního paměťového regionu. Hodnota lokální adresy se porovnává s hodnotou limitního registru. Pokud je tato hodnota větší, následuje vyvolání výjimky - proces se pokouší zapsat mimo region.

Adresový prostor procesu se většinou skládá ze tří regionů: kódového, datového a zásobníkového. Kódový region většinou obsahuje kód programu. Datový region nese statické data programu. Vyžaduje jak zápis, tak čtení a v některých systémech může změnit svoji velikost. Zásobníkový region je charakteru LIFO a jsou zde obsaženy lokální datové proměnné a návratové adresy funkcí. S těmito strategiemi založenými na statických blocích se lze setkat na úrovni správy paměti jádra. Jelikož lze požadavky rutin jádra odhadnout včetně jejich posloupnosti.

4 května 2011

Napište nám



Užitečné odkazy

Stránky nejsou kompatibilní s Internet Explorer v 7 a nižší.

© copyright 2011 Kotomi a.s.
Design by: All     Valid CSS | XHTML