Szegmentálás memória 1

Küldje el a jó munkát a tudásbázis könnyen. Használd az alábbi űrlapot

A diákok, egyetemi hallgatók, fiatal kutatók, a tudásbázis a tanulásban és a munka nagyon hálás lesz.







1. szegmentálása memóriát. Végrehajtása szegmentáció

virtuális memória rendszer két osztályba sorolhatók:

rendszerek egy rögzített méretű blokkok úgynevezett oldalakból, és rendszerek változó méretű blokkok, úgynevezett szegmensek.

Alapfogalmak szegmentáció.

A hátrányok ilyen rendszer:

Az egyik részt lehet tölteni teljesen, de továbbra is a szabad helyek. Akkor biztosan mozog szakaszok, de ez nagyon nehéz.

Tekintsük ugyanaz a példa a szegmensek:

Mindegyik szegmens növekszik vagy csökken függetlenül.

Szegmens - logikai egység.

o szegmens szám

o szegmensek nem zavarják egymást.

o Megkönnyíti a megosztását eljárások és adatok.

o Külön védelmet az egyes szegmensek (olvasás, írás).

Ha az oldalak egy fix méretű, a szegmensek nem.

A szegmensek, valamint az oldalak, ott van a probléma a töredezettség.

mert Memory gyakran nem elég ahhoz, hogy használni acél lapozható szegmens, amelyben csak egy része a szegmens lehet a memóriában.

2. szegmentáció segítségével oldalak: Multics

Az egyik első, ahol Paged szegmentálás volt Multics rendszert használunk.

Minden alkalmazás biztosít akár 2 ^ 18 szegmensek (több mint 250.000), amelyek mindegyike lehet 65.536 (36-bites) szóból.

Táblázat szegmensek - tárolja a leíró minden egyes szegmensben. Minden program saját asztalra.

mert Bejegyzés a tábla több mint 250 000 nő van osztva lapokra.

A táblázat maga egy külön szegmenst.

Szegmens leíró táblázat pontot oldalak minden szegmensben

Normál lapméret 1024 szó. Ha a szegmens kevesebb, mint 1024, akkor vagy nincs osztva lapokra, vagy lebontva 64 szavas oldalon.

Amikor a memória-hozzáférés, a következőket hajtja végre:

1. szegmens szám a szegmens leíró.

2. Ellenőrzi az oldal táblázat a memóriában. Ha a memória határozza meg a helyét. Ha nem, akkor a szegmens az úgynevezett megszakítást.

3. Ellenőrzi, hogy az oldalt a memóriában tartja. Ha a memória határozza meg a helyét a memóriában. Ha nincs memória, az úgynevezett oldal hibája.

5. Van egy vagy olvasással.

Szegmentálás módszerét oldalak: Intel Pentium

Minden program biztosítja, hogy a 16K szegmensek, amelyek mindegyike lehet akár 1 mldr 36-bites szó hosszúságú.

Basis Pentium rendszer virtuális memória két asztal:

o Helyi leíró táblázat LDT (Local Leírótábla) - van minden egyes program, és leírja a program szegmenseket.

o Global leírók táblázatban GDT (Global Leírótábla) - az egyik az összes program, és leírja a rendszer szegmensek (beleértve az operációs rendszer maga).

Minden választó (mutat leíró) egy 16 bites szám.

4. A kiválasztó rendszer Pentium

13 bit határozza meg a bejegyzések száma a leíró táblázat, és ezért ezek a táblázatok korlátozottak, egyenként 8K (2 ^ 13) a szegmens leíró.

1 bit jelzi az alkalmazott típus LDT leíró táblázat vagy GDT.

5. Privilege szintek az Pentium rendszer

hozzáférési szintek megtiltják a futtatható kódot kell alkalmazni az alsó szinten.

Leíró szoftver (nem adatok) szegmens Pentium rendszer (összesen 8 bájt (64 bit)).

Méret (Limit) - szegmens méret (20 bit), van elhelyezve két részből áll.

Ha a szegmens mérete meghatározott oldalak, ez lehet akár 2 ^ 32 bájt (2 ^ 20 * 4Kbayt (2 ^ 12) (oldal mérete a Pentium)).

1. A választó betöltődik egy regiszter (parancsok szegmens CS, adatszegmens DS).

2. Határozza meg a globális vagy helyi szegmensben (LDT vagy a GDT).

3. A leíró kivont LDT vagy GDT, és tárolni egy mikroprogram regiszterek.

4. Ha a leíró memória és az eltolódás a szegmensen belül, a program továbbra is, ha nem, akkor egy megszakítás történik.

Éppen ezért, ha egy kétszintes kijelző (felállított asztal (katalógus oldal), amely egy listát az 1024 oldalas táblázatok), így a bejegyzések száma az oldalon táblázatban lehet csökkenteni 1024.







Ebben az esetben a 4 MB szegmens (1024 rekord 4 KB-os lapok) lesz az oldalon könyvtárban csak egy rekordot (és laptáblához 1024) helyett 1 millió asztal.

7. Az implementáció részletei UNIX

A Lunix rendszer 32 bites gép, minden folyamat kap 3 GB virtuális térben a saját és az 1 Gb oldal táblázatokat és egyéb adatok kernel.

A Pentium számítógépek, használja a kétszintű laptáblázat és az oldal mérete rögzített 4Kbayta

Az Alpha számítógépek, használt három szintű oldal asztal és az oldal mérete rögzített 8Kbayt

Minden egyes program van allokálva 3 szegmens:

1. A program kód (csak olvasható)

8. Megvalósítás szegmentáció

Szegmentálás lehet végrehajtani kétféleképpen: szivattyúzás szegmensben válaszfal memória oldalakon. Az első megközelítésben a memóriában egy szegmens készlet. Ha van a fellebbezés egy szegmenst, amely nincs a memóriában, a szegmens átkerül a memóriába. Ha nincs hely a memóriában egy vagy több szegmens az első lemezre írva (ha már van egy példánya őket a lemezen szegmenseket egyszerűen eltávolítják a memóriából). Bizonyos értelemben a szivattyúzás szegmens nagyon hasonlít a hívás oldalak igény: a szegmensek töltik, és eltávolítani, ha szükséges.

Azonban, a szegmentálás alapvetően eltér a számozása a következő: egy fix lapméret és a szegmensek mérete - nem. Ábra. 6,8, és egy példát mutat a fizikai memória, mely kezdetben 5 szegmenseket.

Lássuk, mi történik, ha a szegmens 1 eltávolítjuk, és a szegmens 7, amely kisebb méretű, kerül a helyére. Az eredmény az a konfiguráció ábrán látható. 6.8 b. Között szegmens 7 és 2. szegmens a fel nem használt ( „blank”) régióban.

Ezután szegmens 4 helyébe a szegmens 5 (ábra 6,8 in.), Míg szegmens 3-6 szegmens (lásd ábra 6,8 g.).

Egy idő után, a memória van osztva számos területen, amelyek közül néhány tartalmazza a szegmensek és a másik - a hézagokat. Ez az úgynevezett külső fragmentáció (például ítélik nem kihasználatlan teret szegmensek, valamint az üregek között, azaz a folyamat folyik szegmens).

Néha külső töredezettség úgynevezett teljes sejtes bontásban (checkerboarding).

Ábra. 6.8. Dynamics külső fragmentáció (a, b, c, d); töredezettségmentesítés által tömítések (d)

Lássuk, mi történik, ha a program vonzó lesz a szegmens 3, ha a memória töredezett (lásd. Ábra. 6,8 g). A teljes terület üregek 10 KB, és bár ez több, mint szükséges, hogy a szegmens 3, 3. szegmens ott nem illik, mert a tér van osztva kis fragmentumokat. Ehelyett először törölnie kell a többi szegmensben.

Egy másik népszerű algoritmus üregek lista csak nézett körbe, és a kiválasztott első szabad fragment megfelelő méretű ebben a szegmensben. Meglepő módon az utolsó algoritmus szempontjából teljes teljesítménye sokkal jobb, mint a legjobb illesztési algoritmus, mivel az utóbbi ad okot, hogy a sok kis üregek [114].

Mindkét algoritmus csökkenti az átlagos mérete a szabad töredék. Amikor egy szegmens kerül a szabad fragmens, meghaladó méretű ebben a szegmensben, ami majdnem mindig (a pontos találatot meglehetősen ritka), szabad fragmenst két részre oszlik. Szegmens foglal egy rész és a második rész átalakul egy új, ingyenes fragmenst, amelyek a meghatározás szerint kisebb, mint az előbbi. Anélkül sikkaszt (az átalakítás minden kis üregek egy nagy), mindkét algoritmus végül a kitöltő üregek memória, túl kicsi még a legkisebb szegmens.

Most leírjuk egy ilyen folyamat. Amikor egy szegmens eltávolítjuk a memóriából, és az egyik vagy mindkét szomszédos területeken a szegmens - nincs szegmensek és üregek a szomszédos üregek is kombinálható. Ha látható. 6,8 g törölni 5. szegmenst, a két szomszédos üregek, egyesül egy fragmens mérete 4 Kbyte, ami tartott távoli szegmens eredményez szabad fragmens van 11 Kbyte.

9. szegmens és szegmens lapozható memória

Azokban a rendszerekben, ahol a szegmensek által támogatott hardver, ezek a paraméterek általában tárolja a szegmensben leíró táblázatot, aprogramma foglalkozik ezekkel a leírók szám kiválasztó. Az összefüggésben minden egyes folyamat magában foglalja egy sor szegmens regiszterek tartalmazó szelektorok jelenlegi kódot szegmens, egy köteg, adatok, és így tovább. D. majd meghatározzuk mely szegmensek fogják használni különböző típusú memória hozzáférések. Ez lehetővé teszi, hogy a processzor már a hardver szinten határozzák elfogadhatóságát memória-hozzáférések, végrehajtásának egyszerűsítéséről információk védelme a károsodás ellen, és az illetéktelen hozzáféréstől.

Hardver támogatást kiterjesztették kis szegmensek (főleg Intel processzor). A legtöbb operációs rendszer segmentatsiyarealizuetsya szinten független a hardvertől.

Szegmens lapozható és lapozható memória szervezése megkönnyíti szervezni megosztását ugyanazokat az adatokat és a kódot a különböző feladatokat. Erre a célra különböző folyamatok különböző logikai memória blokkok vannak leképezve ugyanarra a fizikai memória egység, amely otthont ad a közös kódrészletet vagy adat.

Helyezni Allbest.ru

Hasonló dokumentumok

A koncepció a virtuális memóriát, annak végrehajtását. Jellemzők lapozási igény. Feldolgozási lépések, ahol nincsenek oldalak a memóriában. Stratégiák (algoritmusok) oldal csere. Jellemzők Egyes operációs rendszerek: Windows NT és Solaris.

Fejlesztése Linux meghajtó, amely nyomon követi az elosztási és felszabadítása virtuális memória folyamatok és elosztása fizikai oldalak page-hibákat. Összeállítása a vezető és a munka vele. Kísérleti igazolása vezető teljesítményét.

Számítógép architektúra és a memória kezelési képességeit az operációs rendszer. A lényege az a virtuális memória. Készülék független és eszköz-függő virtuális memória eszközök. Szegmens lapozható virtuális memóriát.

Szoftveralkalmazások fejlesztése C #, elismerve betűk és számok a rendszám fotókat. Az algoritmus működik a kép: a fényerő korrekció, ártalmatlanítása kamera zaj Edge élesítés, binarizáióegységből, szegmentálás és elismerést.

Térfogata kétportos memória található on-chip tárolására programok és adatfeldolgozók ADSP-2106x. Módszer kettős hozzáférésű memória. Cache parancsok és konfliktusok elérésekor az adatokat a memória busz. Tér memória többprocesszoros rendszer.




Kapcsolódó cikkek