Jednotka správy paměti

Jednotka správy paměti pro mikroprocesor Motorola 68010 v podobě samostatného obvodu Motorola 68451

Memory management unit (MMU) je v informatice součást mikroprocesoru umožňující přístup do virtuální paměti (dříve samostatná hardwarová součást mimo procesor). Zajišťuje překlad virtuální adresy na fyzickou adresu, ochranu paměti, kontrolu koherence cache, arbitraci paměťové sběrnice a v závislosti na architektuře také přepínání mezi paměťovými bankami.

Funkce

Možné začlenění jednotky správy paměti do počítačového systému[1]

MMU jednotky rozdělují virtuální adresní prostor na stránky. Velikost každé stránky se rovná mocnině čísla 2, obvykle několika KiB, nicméně může být i mnohem větší. Dolních n bitů z adresy (ofset bez čísla stránky) zůstává beze změny. Horní bity z adresy označují číslo virtuální stránky. MMU překládá číslo virtuální stránky na fyzickou stránku nejprve pomocí asociativní cache paměti, nazývané TLB (Translation Lookaside Buffer). Pokud se požadovaná stránka v TLB nevyskytuje, je spuštěn pomalejší mechanismus, vyhledávání v tabulce stránek (EAT). Fyzické číslo stránky je zkombinováno s číslem rámce stránky (hodnota v tabulce stránek), což vytvoří kompletní fyzickou adresu. Položka v tabulce stránek, nebo TLB může také obsahovat informaci, zdali je na vybrané stránce zapsána nějaká informace, doba posledního použití, či přístupová oprávnění (uživatelský, nebo privilegovaný mód). Tyto informace mohou být využity mechanismem pro plánování procesů.

Občas položka TLB nebo tabulka stránek neumožní přístup na virtuální stránku. To může být způsobeno tím, že na zvolené virtuální stránce není adresována žádná fyzická paměť (což bývá často důsledek softwarové chyby), anebo proto, že je požadovaná stránka odsunuta na disk. V tom případě vyšle MMU řadiči zprávu o výpadku stránky. Operační systém poté vykoná patřičnou obsluhu přerušení. Pokud ještě je v operační paměti volné místo, provede se přemapování a použité virtuální číslo stránky je nastaveno na novou fyzickou adresu. Pokud již volné místo v operační pamětí není, je pro účel přemapování zvolena „nahrazovacím“ algoritmem existující stránka s tím, že původní data jsou uložena na pevný disk.

Výhodná vlastnost MMU je také eliminace problému s fragmentovanou pamětí. Souvislý blok virtuálních adres může totiž být namapován na více bloků fyzické paměti, které nemusí být uloženy vcelku. Kromě toho může být každému procesu přidělen virtuální adresní prostor, do kterého nemají přístup ostatní procesy.

Přínos

V některých případech může být chyba stránky využita pro detekci chyby v programu. Klíčovým přínosem MMU je ochrana paměti: jádro operačního systému může použít MMU k ochraně proti chybám v programech, když detekuje (či znemožní) přístup do paměti, která danému procesu nepatří. Znamená to, že OS přiděluje každému programu svůj vlastní adresový prostor. MMU také zmírňuje problém fragmentace paměti. Potom, co byly přiděleny bloky paměti a následně uvolněny, volná paměť může začít s fragmentací (přerušovanou) tak, že největší souvislý blok volné paměti může být mnohem menší než celková velikost uvolněné paměti. Souvislý rozsah adres virtuální paměti, může být mapován na několik nesousedících bloků fyzické paměti. U prvních návrhů mikroprocesorů se správa paměti prováděla v samostatném integrovaném obvodu, jako je VLSI VI475 (1986), Motorola 68851 (1984). Později mikroprocesory (Motorola 68030 a Zilog Z280) umístily MMU spolu s CPU na stejný integrovaný obvod, stejně jako Intel 80286 a později x86 mikroprocesory.

Příklady

Většina moderních systémů rozdělí paměť na stránky, které jsou 4–64 KiB velké, často s možností využití velké stránky od 2 MiB do 512 MiB. Stránka překladů je uložena v tzv. Translation Lookaside Buffer (TLB). Některé systémy, zejména starší RISC, byly v pasti, když nemohly najít stránku s překladem v TLB. Většina systémů povoluje vypnutí MMU.

VAX

Stránky VAX jsou velké 512 B, jsou tedy velmi malé. OS tak může zacházet s více stránkami jako s jednou velkou. Například Linux má VAX skupiny po osmi stránkách. To znamená, že systém pracuje se 4 KiB stránkou. Virtuální adresní prostor procesu je v operačním systému VMS rozdělen na čtyři pevně určené oblasti, každá o velikosti 1 GiB. Jsou to:[2][3]

  • P0 prostor (Process program region): obsahuje kód programu a data procesu
  • P1 prostor (Process control region): obsahuje řídicí data procesu a zásobník procesu
  • S0 prostor (Common system region): zpřístupňuje kód a data operačního systému
  • S1 prostor: rezervovaný prostor.

Tabulky stránek jsou velká lineární pole. Pokud by se používaly adresy z obou konců adresního prostoru, bylo by to velmi nehospodárné, ale tabulka stránek pro aplikace je sama uložena ve stránkované paměti jádra OS. Díky použití dvouúrovňového stromu mohou mít aplikace rozsáhlé oblasti nepoužité paměti bez toho, že by nevyužité položky stránkovací tabulky zabíraly nějaký prostor. Nevýhodou VAX MMU je, že postrádá bit indikující přístup ke stránce. Aby operační systém, který implementuje stránkování, fungoval efektivně, musí přístupový bit nějakým způsobem emulovat (napodobit jeho funkci). Obvykle OS pravidelně odmapovává stránky, takže výpadky stránek mohou operačnímu systému posloužit k nastavování přístupového bitu.

MIPS

MIPS architektura podporuje až 64 záznamů v TLB. Počet záznamů je konfigurovatelný v konfiguraci CPU před syntézou. TLB záznamy jsou dvojí. Každá položka TLB mapuje číslo virtuální stránky (VPN2) do jednoho ze dvou rámců (PFN0 nebo PFN1), v závislosti na nejmenším významovém bitu virtuální adresy. Tento bit a bitová maska stránky nejsou uloženy v VPN2. Každá položka má vlastní velikost stránky, která může být libovolně velká od 1 KiB do 256 MiB v násobcích po 4. Každý PFN v TLB záznamu má atribut cache a status bit. VPN2 má globální status bit a OS přiřazené ID, které je součástí záznamu do TLB v případě že je tento bit v nule.

X86-64

Architektura x86-64 je 64bitové rozšíření x86, které téměř úplně odstranilo segmentaci. Je to použito téměř ve všech operačních systémech pro procesory 386 nebo novější. V dlouhodobém režimu jsou všechny segmentové posuny ignorovány s výjimkou částí FS a GS. Při použití 4 KiB stránek má tabulkový strom čtyři úrovně místo tří. Virtuální adresy jsou rozděleny takto: 16 bitů nepoužité, 9 bitů pro každou ze čtyř úrovní stromu (celkem 36) a 12 nejnižších bitů se přímo zkopíruje do výsledků. Při použití 2 MiB stránek má tabulkový strom pouze tři úrovně pro celkově 27 bitů. Některé novější CPU podporují 1 GB stránky s dvěma úrovněmi pro 30 bitů.

Odkazy

Reference

V tomto článku byl použit překlad textu z článku Memory management unit na anglické Wikipedii.

  1. Tannenbaum 2009, s. 186.
  2. OpenVMS Programming Concepts Manual [online]. Hewlett-Packard, 2002 [cit. 2022-11-13]. Kapitola Virtual Address Space. Dostupné online. (anglicky) 
  3. GOATLEY, Hunter; HEINRICH, Edward A. Writing VMS Privileged Code [online]. Dostupné online. (anglicky) 

Literatura

  • TANENBAUM, Andrew S., 2009. Modern operating systems. Upper Saddle River (New Jersey): Prentice-Hall. ISBN 978-0-13-600663-3. (anglicky) 

Související články

Externí odkazy

Read other articles:

31 MinutosPembuatÁlvaro Díaz GonzálezPedro PeiranoNegara asalChiliBahasa asliSpanyolJmlh. musim4Jmlh. episode70ProduksiDurasi11 menitRilis asliJaringanTelevisión Nacional de ChileRilis15 Maret 2003 31 Minutos adalah serial televisi dan band musik anak-anak Chili yang dibuat oleh perusahaan produksi Aplaplac (dimiliki oleh lvaro Díaz, Pedro Peirano dan Juan Manuel Egaña) yang mulai disiarkan pada 15 Maret 2003 oleh TVN. Program ini adalah parodi 60 Minutos, program berita kontroversial ...

 

يفتقر محتوى هذه المقالة إلى الاستشهاد بمصادر. فضلاً، ساهم في تطوير هذه المقالة من خلال إضافة مصادر موثوق بها. أي معلومات غير موثقة يمكن التشكيك بها وإزالتها. (مارس 2016) يحتضن قصر النجمة الزهراء مركز الموسيقى العربية والمتوسطية مركز الموسيقى العربية والمتوسطية هو مجمّع ثقاف�...

 

Municipality in Batangas, Philippines For the other places named San Jose in the Philippines, see San Jose (disambiguation).This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: San Jose, Batangas – news · newspapers · books · scholar · JSTOR (November 2013) (Learn how and when to remove this template message) Mun...

Cet article donne la liste par ordre alphabétique des députés français de la VIe législature (1978-1981), proclamés élus les 12 et 19 mars 1978. Les modifications apportées en cours de législature sont indiquées en notes. Pour chaque député, la liste précise le département de leur circonscription d'élection ainsi que le groupe dont ils font partie (les députés seulement apparentés à un groupe politique sont indiqués par un « a. » précédant le groupe). Articl...

 

Region of Gangwon Province, North Korea This article relies largely or entirely on a single source. Relevant discussion may be found on the talk page. Please help improve this article by introducing citations to additional sources.Find sources: Yeongseo – news · newspapers · books · scholar · JSTOR (April 2018) YeongseoHangul영서Hanja嶺西Revised RomanizationYeongseoMcCune–ReischauerYŏngsŏNorth Korean nameHangul령서Hanja嶺西Revised Romanizat...

 

1963 novel by Philip K. Dick Dr. Bloodmoney, or How We Got Along After the Bomb Cover of first edition (paperback)AuthorPhilip K. DickCover artistJack GaughanCountryUnited StatesLanguageEnglishGenreScience fictionPublisherAce BooksPublication date1965Media typePrint (hardback & paperback)Pages222 Dr. Bloodmoney, or How We Got Along After the Bomb is a 1965 science fiction novel by American writer Philip K. Dick. It was nominated for the Nebula Award for Best Novel in 1965.[1...

Unforeseen event, often with a negative outcome For other uses, see Accident (disambiguation) and Accidental (disambiguation). A memorial to the 97 victims of the Hillsborough disaster. An accident is an unintended, normally unwanted event that was not directly caused by humans.[1] The term accident implies that nobody should be blamed, but the event may have been caused by unrecognized or unaddressed risks. Most researchers who study unintentional injury avoid using the term accident...

 

Neighborhood in Boston Neighborhood of Boston in Suffolk, Massachusetts, United StatesJamaica PlainNeighborhood of BostonSoldier's Monument and First Unitarian Universalist Church in Jamaica PlainNickname: JPLocation of Jamaica Plain in Boston, MassachusettsCountryUnited StatesStateMassachusettsCountySuffolkNeighborhood ofBostonAnnexed by Boston1874Population (2020)41,012Time zoneUTC−5 (Eastern)Area code617/857WebsiteOfficial website Jamaica Plain is a neighborhood of 4.4 square m...

 

Come leggere il tassoboxPandoravirus Classificazione scientifica Dominio Varidnaviria Regno Bamfordvirae Phylum Nucleocytoviricota Classe Megaviricetes Ordine Algavirales Famiglia Pandoraviridae/ Phycodnaviridae Genere Pandoravirus Specie[1] Pandoravirus dulcis Pandoravirus inopinatum Pandoravirus macleodensis Pandoravirus neocaledonia Pandoravirus quercus Pandoravirus salinus Pandoravirus è un genere di virus giganti del phylum Nucleocytoviricota scoperto nel 2013,[2] i cui...

Komando Resor Militer 084/Bhaskara JayaDibentuk2 Agustus 1966[1]Negara IndonesiaCabangTNI Angkatan DaratTipe unitKorem Tipe APeranSatuan TeritorialBagian dariKodam V/BrawijayaMakoremSurabaya, Jawa TimurJulukanKorem 084/BJPelindungTentara Nasional IndonesiaMotoBhaskara JayaBaret H I J A U Ulang tahun2 AgustusSitus webwww.korem084bj.mil.idTokohDanremBrigjen TNI Yusman Madayun, S.I.P.KasremKolonel Inf Erwin Komando Resor Militer 084/Bhaskara Jaya atau disingkat Korem 084/B...

 

2006 novel by Rachel Cohn and David Levithan Nick and Norah's Infinite Playlist First edition coverAuthorRachel Cohn and David LevithanCountryUnited StatesLanguageEnglishPublisherAlfred A. Knopf Books for Young ReadersPublication dateMay 23, 2006ISBN9780375835315 hardcover Nick and Norah's Infinite Playlist is the first collaboration novel written by Rachel Cohn and David Levithan. The novel was published in 2006 by Alfred F. Knopf Books for Young Readers. It was adapted into the 2008 feature...

 

Dennis Mojen (2015) Dennis Mojen (lahir pada 1993 di Hamburg) adalah seorang aktor asal Jerman.[1][2][3] Karier Dennis memiliki orang tua yang aktif dalam industri film. Pada 2010, Dennis lulus dari Acting Master Class di Los Angeles, Amerika Serikat.[4] Pada 2011, ia memerankan seorang pria bersenjata bernama Tom dalam film Der Ausflug.[5] Pada 2015, Dennis menerima penghargaan New Faces Award atas perannya sebagai Tommy dalam Tatort: Der Himmel ist ei...

City in Wisconsin, United StatesHillsboroCityDowntown HillsboroLocation of Hillsboro in Vernon County, Wisconsin.Coordinates: 43°39′10″N 90°20′29″W / 43.65278°N 90.34139°W / 43.65278; -90.34139Country United StatesState WisconsinCountyVernonArea[1] • Total1.44 sq mi (3.74 km2) • Land1.41 sq mi (3.64 km2) • Water0.04 sq mi (0.10 km2)Population (2020)[...

 

Vous lisez un « bon article » labellisé en 2014. Pour les articles homonymes, voir Jeux olympiques de 1992. Jeux olympiques d'hiver de 1992 Localisation Pays hôte France Ville hôte Albertville Coordonnées 45° 39′ 52″ N, 6° 22′ 21″ E Date Du 8 au 23 février 1992 Ouverture officielle par François MitterrandPrésident de la République française Participants Pays 64 Athlètes 1 800(1 312 masc. et 488 fém.) Compétition Nouvea...

 

Questa voce o sezione sull'argomento centri abitati della Lombardia non cita le fonti necessarie o quelle presenti sono insufficienti. Puoi migliorare questa voce aggiungendo citazioni da fonti attendibili secondo le linee guida sull'uso delle fonti. Segui i suggerimenti del progetto di riferimento. Sesto CalendecomuneCittà di Sesto Calende Sesto Calende – VedutaVeduta dal Ticino LocalizzazioneStato Italia Regione Lombardia Provincia Varese AmministrazioneSindacoBetta Gi...

الاتحاد الجمركي الأورواسي أعضاء الاتحاد الجمركي الأورواسي المقر الرئيسي موسكو تاريخ التأسيس يناير 2010 النوع اتحاد جمركي انحياز سياسي الاتحاد الاقتصادي الأوراسي العضوية  أرمينيا بيلاروس كازاخستان قيرغيزستان روسيا عدد الأعضاء 5 الموقع الرسمي الموقع الرسمي ت...

 

Epagneul and Épagneul redirect here. For breeds whose name contains épagneul, see pages such as Épagneul Français. Dog type For the Thoroughbred racehorse, see Spaniel (horse). For the American R&B doo-wop group from the 1950s, see The Spaniels. English Cocker Spaniels are small spaniels A Welsh Springer Spaniel on the beach A spaniel is a type of gun dog. Spaniels were especially bred to flush game out of denser brush. By the late 17th century, spaniels had been specialized into wate...

 

Highly-urbanized city and capital of Leyte, Philippines Highly urbanized city in Eastern Visayas, PhilippinesTaclobanHighly urbanized cityCity of TaclobanFrom top, left to right: Downtown Tacloban, Yolanda Shrine, Santo Niño Church, Justice Romualdez Street, Santo Niño Shrine and Heritage Museum FlagSealNicknames:  Gateway to Eastern Visayas[1] Home of the Happiest People in the World[2] Motto(s): City of Love, Beauty and ProgressesMap of Eastern Visayas with Taclo...

One of the Twelve Apostles of Jesus Christ SaintJames the LesserSt James the Minor by Peter Paul Rubens (1613)Apostle and MartyrBornc. 1st century ADGalilee, Judaea, Roman EmpireDiedc. 62 ADJerusalem, Judaea, Roman Empire or Aegyptus, Roman EmpireVenerated inAll Christian denominations that venerate saintsFeast1 May (Anglican Communion),May 3 (Roman Catholic Church), 9 October (Eastern Orthodox Church)AttributesCarpenter's saw; fuller's clubPatronageApothecaries; druggists; dying people;...

 

Railway station in Sydney, New South Wales, Australia LidcombeWestbound view from Platforms 2 and 3, June 2024General informationLocationRailway Parade, LidcombeCoordinates33°51′50″S 151°02′43″E / 33.863875°S 151.0451917°E / -33.863875; 151.0451917Elevation22 metres (72 ft)Owned byTransport Asset Holding EntityOperated bySydney TrainsLine(s)Main SuburbanMain SouthernOlympic ParkDistance16.61 kilometres from CentralPlatforms6 (2 dock, 1 island, 2 side)T...