Ugrás a tartalomhoz

Operációs rendszerek

Dr. Fazekas Gábor (2011)

Kempelen Farkas Hallgatói Információs Központ

7. fejezet - Memóriagazdálkodás

7. fejezet - Memóriagazdálkodás

Memóriakezelés

  • A számítógép kapacitásának jobb kihasználása megköveteli, hogy egyszerre több processzus osztozzon a memórián (shared memory)

  • Egy programot általában bináris formában tárolunk a háttértáron, végrehajtásához be kell tölteni a memóriába, ennek megszervezése a memóriamenedzsment feladata

  • Bemeneti sor (Input queue): a végrehajtásra kijelölt programok együttese

A memóriakezelésnek öt követelményt kell teljesítenie:

  • Relokáció (relocation)

    • – a programozó nem tudja, hogy egy program végrehajtásakor a program a memórián belül hova kerül

    • – a végrehajtás alatt álló programot többször át lehet/kell mozgatni a háttértárba (swap) és vissza, de a kódnak a memóriába való visszamozgatása általában eltérő helyre történik (relocation)

    • – a memóriahivatkozásokat a kódba kell illeszteni az aktuális fizikai memóriacímeknek megfelelően

  • Védelem (protection)

    • – a processzusok engedély nélkül nem használhatnak más processzusokhoz tartozó címtartományokat

    • – az abszolút memóriacímeket lehetetlen ellenőrizni a fordítás során, hiszen a program relokációt szenvedhet, így ezt a végrehajtás alatt kell ellenőrizni

  • Megosztás (sharing)

    • – több processzus számára engedélyezett ugyanazon memóriaszegmens elérése

    • – jobb lehet, ha minden processzus (személy) egy program ugyanazon másolatát használja, mintha mindenkinek saját másolata lenne

  • Logikai szervezés (Logical Organization)

    • – a programokat modulokba érdemes szervezni

    • – a modulok egymástól függetlenül írhatók és fordíthatók

    • – különböző mértékű a modulok védelme (read-only, execute-only)

    • – megosztott modulok

  • Fizikai szervezés (Physical Organization)

    • – a program és a hozzá kapcsolódó adatok számára az elérhető memóra kevés lehet

      • ovarlaying: a teljes programnak csak az a része legyen bent az operatív tárban, amelyre ténylegesen szükség van, ezáltal lehetővé válik, hogy különböző modulok a memória azonos régióihoz legyenek rendelve