Čo je to stránkovanie?
Paging je mechanizmus ukladania, ktorý umožňuje OS načítať procesy zo sekundárneho úložiska do hlavnej pamäte vo forme stránok. V metóde Paging je hlavná pamäť rozdelená na malé bloky fyzickej adresy s pevnou veľkosťou, ktoré sa nazývajú rámce.
Veľkosť rámu by sa mala zachovať rovnaká ako veľkosť stránky, aby sa maximálne využila hlavná pamäť a zabránilo sa externej fragmentácii. Paging sa používa na rýchlejší prístup k dátam a je to logický koncept.
V tomto návode sa naučíte
- Čo je to stránkovanie?
- Čo je segmentácia?
- Stránkovanie vs. segmentácia
- Výhody stránkovania
- Výhoda segmentácie
- Nevýhody stránkovania
- Nevýhody segmentácie
Čo je segmentácia?
Metóda segmentácie funguje takmer podobne ako stránkovanie, rozdiel medzi nimi je iba v tom, že segmenty majú premenlivú dĺžku, zatiaľ čo v metóde stránkovania majú stránky vždy pevnú veľkosť.
Segment programu obsahuje hlavnú funkciu programu, dátové štruktúry, pomocné funkcie atď. OS udržuje tabuľku máp segmentov pre všetky procesy. Zahŕňa tiež zoznam voľných pamäťových blokov spolu s ich veľkosťou, číslami segmentov a pamäťovými miestami v hlavnej alebo virtuálnej pamäti.
KĽÚČOVÉ ROZDIELY:
- Stránka má veľkosť pevného bloku, zatiaľ čo segment má premenlivú veľkosť.
- Pri stránkovaní hardvér rozhoduje o veľkosti stránky, zatiaľ čo veľkosť segmentu určuje užívateľ.
- Technika stránkovania je pre prístup do pamäte rýchlejšia, ale segmentácia je pomalšia ako metódy stránkovania.
- Pri stránkovaní používateľ zadá iba jedno celé číslo ako adresu, zatiaľ čo pri segmentácii je k dispozícii veľa nezávislých adresných priestorov.
- Tabuľka stránok ukladá údaje o stránke, zatiaľ čo tabuľka segmentácie ukladá údaje o segmentácii.
Rozdiel medzi stránkovaním a segmentáciou
Tu sú rozdiely medzi metódou stránkovania a segmentácie:
Stránkovanie | Segmentácia |
Stránka má veľkosť pevného bloku. | Segment má premenlivú veľkosť. |
Môže to viesť k vnútornej fragmentácii. | Môže to viesť k vonkajšej fragmentácii. |
V programe Paging rozhoduje hardvér o veľkosti stránky. | Veľkosť segmentu je určená používateľom. |
Adresný priestor procesu je rozdelený na bloky pevnej veľkosti, ktoré sa nazývajú stránky. | Adresný priestor procesu je rozbitý v blokoch rôznej veľkosti, ktoré sa nazývajú sekcie. |
Technika stránkovania je pre prístup do pamäte rýchlejšia. | Segmentácia je pomalšia ako pri stránkovaní. |
Tabuľka stránok ukladá údaje o stránke | Segmentačná tabuľka uchováva segmentačné údaje. |
Stránkovanie neuľahčuje žiadne zdieľanie postupov. | Segmentácia umožňuje zdieľanie postupov. |
Stránkovanie nedokáže rozlíšiť a zabezpečiť postupy a údaje osobitne. | Segmentácia dokáže oddeliť zabezpečené postupy a údaje. |
Stránkovací adresný priestor je jednorozmerný | V segmentácii existuje dostupnosť mnohých nezávislých adresných priestorov |
Pri stránkovaní používateľ iba zadá jedno celé číslo ako adresu, ktoré je hardvérom rozdelené na číslo stránky a offset. | Pri metóde segmentácie užívateľ zadá adresu v dvoch veličinách 1) číslo segmentu 2) offset. |
Výhody stránkovania
Tu sú výhody a výhody použitia metódy stránkovania
- Na úrovni programátora je stránkovanie transparentnou funkciou a nevyžaduje zásah.
- Rámy nemusia byť súvislé.
- Ľahko použiteľný algoritmus správy pamäte
- Výmena medzi stránkami rovnakej veľkosti a rámčekmi stránok je jednoduchá.
Výhoda segmentácie
Tu sú výhody a výhody segmentácie:
- Jednoduché premiestnenie segmentov ako celého adresného priestoru.
- Je potrebné dokázať, že neexistuje vnútorná fragmentácia ako vonkajšia fragmentácia.
- Tabuľka segmentov má menšiu veľkosť v porovnaní s tabuľkou stránok na stránke.
- Priemerná veľkosť segmentu je väčšia ako skutočná veľkosť stránky
- Ponúknite ochranu v rámci segmentu
- Neponúka vnútornú fragmentáciu
- Tabuľky segmentov využívajú menšiu pamäť ako stránkovanie
- Pretože ponúka tabuľku malých segmentov, odkaz na pamäť je jednoduchý, čo umožňuje zdieľanie údajov medzi procesmi.
Nevýhody stránkovania
Tu sú nevýhody / nevýhody stránkovania:
- Stránkovanie spôsobuje vnútornú fragmentáciu v starších systémoch.
- Dlhšie časy vyhľadania pamäte v porovnaní so segmentáciou
- Môže to spôsobiť vnútornú fragmentáciu
- Komplexný algoritmus správy pamäte
- Tabuľky stránok spotrebúvajú dodatočnú pamäť.
- Viacúrovňové stránkovanie môže viesť k zníženiu referenčných hodnôt pamäte.
Nevýhody segmentácie
Tu sú nevýhody / nevýhody segmentácie:
- Nerovnaká veľkosť segmentov nie je v prípade výmeny dobrá.
- Portovanie Linuxu na rôzne architektúry je ťažké spracovať, pretože ponúka veľmi obmedzenú podporu segmentácie.
- Vyžaduje zásah programátora.
- Je ťažké alokovať nákazlivú pamäť do oblasti, pretože má premenlivú veľkosť.
- Toto je nákladný algoritmus správy pamäte.