Adresace paměti. 11.přednáška



Podobné dokumenty
Systém adresace paměti

NÁVOD K OBSLUZE MODULU VIDEO 64 ===============================

Operační systém z hlediska procesu Mgr. Josef Horálek

PROCESORY. Typy procesorů

Mikroprocesor Intel 8051

-1- N á v r h ČÁST PRVNÍ OBECNÁ USTANOVENÍ. 1 Předmět úpravy

Úvod do programování a práce s počítačem

Algoritmizace a programování

Karel Johanovský Michal Bílek. Operační paměť

účetních informací státu při přenosu účetního záznamu,

371/2002 Sb. VYHLÁŠKA

VNITŘNÍ ŘÁD ŠKOLNÍ DRUŽINY

Podrobný postup pro vygenerování a zaslání Žádosti o podporu a příloh OPR přes Portál farmáře

Tekla Structures Multi-user Mode

Vyhlášení grantového řízení

19 Jednočipové mikropočítače

Přidělování zdrojů (prostředků)

Soubory a databáze. Soubor označuje množinu dat, která jsou kompletní k určitému zpracování a popisují vybrané vlastnosti reálných objektů

řadič počítače část(jednotka) počítače/procesoru,

Městská část Praha - Ďáblice Dne Úřad městské části Praha - Ďáblice Květnová 553/ , Praha 8 č.j.: 0078/2016-MCPD/TAJ

Návrh vyhlášky o odborné způsobilosti v elektrotechnice VYHLÁŠKA

Spisový, archivační a skartační řád MAS Moravský kras o. s.

Paměti a jejich organizace

c sin Příklad 2 : v trojúhelníku ABC platí : a = 11,6 dm, c = 9 dm, α = Vypočtěte stranu b a zbývající úhly.

MOBILNÍ KOMUNIKACE STRUKTURA GSM SÍTĚ

KRAJSKÝ ÚŘAD JIHOMORAVSKÉHO KRAJE Odbor dopravy Žerotínovo náměstí 3/5, Brno

Platné znění části zákona s vyznačením navrhovaných změn a doplnění. Zákon č. 239/2013 Sb. ČÁST PRVNÍ

29 Evidence smluv. Popis modulu. Záložka Evidence smluv

Programový komplet pro evidence provozu jídelny v modul Sklad Sviták Bechyně Ladislav Sviták hotline: 608/

ČÁST PÁTÁ POZEMKY V KATASTRU NEMOVITOSTÍ

Baby centrum M O T Ý L E K, s.r.o.

Jedna z nejdůležitějších součástek počítače = mozek počítače, bez něhož není počítač schopen vykonávat žádné operace.

Základnímí částmi počítače jsou procesor, operační paměť, vstupní a výstupní zařízení.

Napájení požárně bezpečnostních zařízení a vypínání elektrické energie při požárech a mimořádných událostech. Ing. Karel Zajíček

Přijímací řízení ve školním roce 2012/ Informace pro vycházející žáky a zákonné zástupce

ORGANIZAČNÍ ŘÁD ŠKOLY

Pokyny k instalaci FRIATRACE Verze 5.3

1. Orgány ZO jsou voleny z členů ZO. 2. Do orgánů ZO mohou být voleni jen členové ZO starší 18 let.

Zadávací dokumentace dle ustanovení 44 zákona č. 137/2006 Sb., o veřejných zakázkách (dále jen zákon )

S t r á n k a 1 I N V E S T I C E D O R O Z V O J E V Z D Ě L Á V Á N Í

Programování - úvod. Programování. Proces programování. Vlastnosti dobrého programu: Kapitola seznamuje se základními pojmy programování.

Oblastní stavební bytové družstvo, Jeronýmova 425/15, Děčín IV

Městský úřad Mimoň. Mírová 120, Mimoň, tel , Směrnice Rady města Mimoň č. 1/2012

PŘÍLOHA 7. Obsah postupů posuzování shody

Zkouška z předmětu Počítačové systémy

Stavební úpravy bytového domu Sokolovská 2372 v Táboře

Projekt: Inovace oboru Mechatronik pro Zlínský kraj Registrační číslo: CZ.1.07/1.1.08/

Exekutorský úřad Mělník se sídlem Havlíčkova 329, Mělník Soudní exekutor JUDr. Roman Chaloupka U S N E S E N Í

Uživatelská dokumentace

LPS2. Sada pro synchronní komunikaci na 1000m s galvanickým oddělením. 15. října 2010 w w w. p a p o u c h. c o m

Pravidla pro poskytování informací podle zákona č. 106/1999 Sb., v platném znění

PŘIJÍMACÍ ŘÍZENÍ. Strana

Kvalifikační dokumentace k veřejné zakázce dle zákona č. 137/2006 Sb., o veřejných zakázkách, ve znění pozdějších předpisů (dále jen zákon )

SRF08 ultrazvukový dálkoměr

Město Janovice nad Úhlavou

Server. Software serveru. Služby serveru

Česká zemědělská univerzita v Praze Fakulta provozně ekonomická. Obor veřejná správa a regionální rozvoj. Diplomová práce

Čl. I Úvodní ustanovení Z důvodů stárnutí bytového fondu narůstá potřeba jeho častější údržby a modernizace.

Výzva k podání nabídek (zadávací dokumentace)

2. VŠEOBECNÉ PODMÍNKY ÚČASTI PRO OBCHODNÍKY PLATNÉ PRO ROK 2015

Algoritmus (nebo dřívějším pravopisem algorithmus)

STŘEDNÍ PRŮMYSLOVÁ ŠKOLA STROJÍRENSKÁ a Jazyková škola s právem státní jazykové zkoušky, Kolín IV, Heverova 191. Obor M/01 STROJÍRENSTVÍ

Návrh. VYHLÁŠKA ze dne o zdravotnické dokumentaci. Rozsah údajů zaznamenávaných do zdravotnické dokumentace

Databázovéa informačnísystémy NÁVRH IMPLEMENTACE 2 KONZISTENCE DATABÁZE

Zadávací dokumentace

Generátor sítového provozu

Software IS Řízení stavebních zakázek

Obecně závazná vyhláška města Žlutice č. 2/2011 Požární řád obce

Pravidla pro nakládání s nemovitým majetkem ve vlastnictví Obce Ostružná

ZADÁVACÍ DOKUMENTACE. Pořízení a provoz konsolidované IT infrastruktury

Metodika testování navazujících evidencí

P R A V I D L A RADY MĚSTA LOUN P13/2014. pro financování mimoškolských příspěvkových organizací

uzavírají podle ustanovení 1746 odst. 2 zákona č. 89/2012 Sb., občanský zákoník (dále jen občanský zákoník ), tuto

32001R1788 Úřední věstník L 243, 13/09/2001, strany

Nabídka seminářů Finanční gramotnost

DPC-D218ID. Dveřní stanice pro 2D systém videovrátných. Uživatelský manuál

Kopírovací stroj D 2350

MINISTERSTVO FINANCÍ. Odbor 45 Realizace ekologických závazků vzniklých při privatizaci Ing. Radmila Musilová vedoucí oddělení 4501

Český úřad zeměměřický a katastrální vydává podle 3 písm. d) zákona č. 359/1992 Sb., o zeměměřických a katastrálních orgánech, tyto pokyny:

Odpájecí stanice pro SMD. Kontrola teploty, digitální displej, antistatické provedení SP-HA800D

OBEC PETKOVY, okres Mladá Boleslav. Obecně závazná vyhláška obce Petkovy č. 1/2013

Systém MCS II. Systém MCS II < 29 >

KVALIFIKA NÍ DOKUMENTACE

Vyhlášení opakované veřejné soutěže 1/6

Operační systémy. Přednáška 8: Správa paměti II

Město Mariánské Lázně

ORGANIZAČNÍ ŘÁD ŠKOLY POPLATKY VE ŠKOLNÍ DRUŽINĚ

Směrnice rektora č. 7/2014

POŘÍZENÍ NÍZKOEMISNÍHO ZDROJE A ZATEPLENÍ KULTURNĚ SPOLEČENSKÉ BUDOVY DŘEŠÍNEK

OBEC HORNÍ MĚSTO Spisový řád

Metodika pro nákup kancelářské výpočetní techniky

2. Vymezení předmětu veřejné zakázky

Příloha č. 54. Specifikace hromadné aktualizace SMS-KLAS

Soubor testových otázek, vydaných SH ČMS ÚORP. pro rok 2013

ORGANIZAČNÍ ŘÁD ŠKOLY

Označování chemických látek a směsí. RNDr. Milada Vomastková, CSc. Praha

VÝZVA K PODÁNÍ NABÍDKY

Nejlepší zhodnocení veřejných prostředků

Informační a komunikační technologie. 1.4 Data, informace, komprimace

METODICKÝ POKYN VZOR SMLOUVY O POSKYTNUTÍ DOTACE Z ROZPOČTU REGIONÁLNÍ RADY

Transkript:

Adresace paměti 11.přednáška

Adresace paměti základní pojmy Adresa fyzická - adresa, která je přenesena na adresní sběrnici a fyzicky adresuje hlavní paměť logická - adresa, kterou má k dispozici proces k adresaci přiděleného adresového prostoru efektivní - adresa, která vzniká modifikací operandu segmentovými registry Obvyklý postup překladu adres: operand efektivní logická fyzická vnitřní sběrnice procesoru adresní sys. sběrnice Buchtela@pef.czu.cz 2

Adresový prostor Lineární adresový prostor Tvoří jej souvislá (lineární) posloupnost efektivních adres Segmentový adresový prostor Tvoří jej posloupnost segmentů efektivních adres Každý segment tvoří lineární adresový prostor Segmenty jsou definovány zapsáním bázové (základní) adresy segmentu do segmentového registru Segmenty mohou mýt různou velikost a vzájemně se překrývat Buchtela@pef.czu.cz 3

Procesory bez dynamického překladu adres Efektivní adresa se ukládá přímo do adresového bufferu, odkud je pak přenesena na adresní sběrnici s dynamickým překladem adres Mezi vnitřní sběrnici procesoru a adresní sběrnici je vložena jednotka DAT (Dynamic Adress Translation), která překládá efektivní (logickou) adresu na fyzickou. Buchtela@pef.czu.cz 4

Adresace bez jednotky DAT Adresní registry (IND) Segmentové registry OZ operand + + efektivní adresa Adresový buffer fyzická adresa Přičtení obsahu adresních registrů k adrese v poli operandu modifikace operandu Přičtení obsahu segmentového registru k modifikované adrese operandu efektivní adresa Nemá-li procesor segmentové registry, uloží se modifikovaný operand přímo do adres. bufferu. Efektivní adresa se uloží do adresního bufferu fyzická adresa Buchtela@pef.czu.cz 5

Adresace s jednotkou DAT Na vstup jednotky DAT je přiváděna efektivní adresa Výstupem jednotky DAT je efektivní adresa přeložená na adresu fyzickou vnitřní sběrnice efektivní adresa Logický adresový prostor lineární segmentovaný DAT logický adresový prostor systémová (adresní) sběrnice fyzická adresa Buchtela@pef.czu.cz 6

Adresace s jednotkou DAT lineárn rní adresový prostor Logické adresy se každému procesu přidělují od pevně zvolené adresy p Všechny procesy mají stejný logický adresový prostor, jehož velikost je dána šířkou vnitřní sběrnice n Logické adresy procesů jsou z intervalu <p, p + 2 n > Obvykle u procesorů RISC Buchtela@pef.czu.cz 7

Adresace s jednotkou DAT lineárn rní adresový prostor OZ Operand Adresní registry + efektivní adresa = logická adresa DAT Pevná adresa + Převedení logické adresy na fyzickou adresu Adresový buffer fyzická adresa Buchtela@pef.czu.cz 8

Adresace s jednotkou DAT segmentový adresový prostor Adresový prostor je složený ze segmentů různé velikosti, které se mohou překrývat Segmenty jsou chráněny regulace přístupu procesů k segmentům Některé segmenty mohou procesy mezi sebou sdílet např. jádro operačního systému Jednotka DAT obsahuje tabulku deskriptorů segmentů V deskriptoru je zaznamenáno: velikost segmentu adresa jeho báze způsob ochrany Buchtela@pef.czu.cz 9

Adresace s jednotkou DAT segmentový adresový prostor tabulka deskriptorů INTEL 80386 Buchtela@pef.czu.cz 10

Strategie přidp idělování paměti Pokud je multitaskingový operační systém v činnosti, je rezidentní část jádra operačního systému umístěna obvykle na začátku hlavní paměti. Zbývající část hlavní paměti operační systém přiděluje zpracovávaným procesům. Jsou možné tyto způsoby jejího přidělování: přidělování statických souvislých úseků přidělování dynamických souvislých úseků přidělování virtuálního adresového prostoru Buchtela@pef.czu.cz 11

Přidělování statických souvislých úseků 0 128 kb 192 kb 256 kb 384 kb 512 kb Operač ní systém úsek 1 (64kB) úsek 2 (64 kb) úsek 3 (128kB) úsek 4 (128 kb) úsek 5 (256 kb) Paměť je po celou dobu běhu operačního systému rozdělena na souvislé úseky, jejichž umístění se nemění Proces se uloží do nejmenšího volného úseku, do kterého ho lze uložit 768 kb úsek 6 (256kB) Buchtela@pef.czu.cz 12

Přidělování dynamických souvislých úseků Operační systém vybere nejmenší souvislou volnou část paměti tak, aby do ní mohl umístit celý proces Proces 1 Proces 1 Proces 1 Proces 5 Proces 5 Proces 2 Proces 4 Proces 4 Proces 4 Proces 3 Proces 3 Proces 3 Proces 3 Proces 3 Proces 2 ukončen Proces 4 spuštěn Proces 1 ukončen a místo něj zaveden do paměti proces 5 Realokace Buchtela@pef.czu.cz 13

Přidělování souvislých úseků - výhoda Překlad mezi logickou a fyzickou je možné provést jednoduchou jednotkou DAT (i bez jednotky DAT) Překlad spočívá v přičtení počáteční adresy (báze) k logické adrese Hodnota báze je zapsána do bázového registru operačním systémem při spuštění procesu Buchtela@pef.czu.cz 14

Přidělování souvislých úseků - nevýhody Paměť obsahuje řadu malých, procesy neobsazených částí fragmentace paměti U přidělování dynamických úseků lze odstranit realokací obsazených úseků paměti spotřebovává procesorový čas Proces není chráněn před ostatními procesy Proces může přepsat oblast paměti vyhrazenou jinému procesu Ochrana procesu pomocí techniky klíč-zámek Buchtela@pef.czu.cz 15

Virtuáln lní paměť Je-li proces větší než fyzická paměť počítače, nelze jej přímo uložit a spustit Proces je nutno rozdělit na menší části (tzv. overlays) a postupně nahrávat do paměti a zpracovávat Je-li postupné umísťování do paměti prováděno automaticky, mapuje jednotka DAT logický adresový prostor procesu na fyzický tak, jak stanovuje operační systém Procesor může pracovat v celém svém logickém prostoru, jakoby se fyzická paměť rozšířila na velikost logické paměti virtuální paměť Buchtela@pef.czu.cz 16

Virtuáln lní paměť lineárn rní adresový prostor Stránkování paměti virtuální adresový prostor rozdělen na stránky (1-8kB) fyzický adresový prostor rozdělen na stejně velké úseky rámy nebo rámce (frames) Logická (virtuální) adresa rozdělena na číslo stránky posuv (offset) vyjadřuje umístění (lokální adresu) v rámci stránky Buchtela@pef.czu.cz 17

Virtuáln lní paměť lineárn rní adresový prostor Každý proces má svoji tabulku stránek Každý řádek tabulky stránek odpovídá jedné stránce, v řádce je uvedeno: číslo rámu, které OS stránce přidělil bit platnosti stránky P kód autorizace R (povolení číst) bit změny obsahu stránky Z W (povolení zapisovat) X (použít stránku pro řízení procesu) číslo bloku, ze kterého lze stránku získat (systém souborů, swappovací oblast) Buchtela@pef.czu.cz 18

Virtuáln lní paměť lineárn rní adresový prostor logická adresa číslo stránky posuv Registr tabulky stránek Tabulka stránek P RWX Z blok číslo rámu rám posuv fyzická adresa Buchtela@pef.czu.cz 19

Virtuáln lní paměť lineárn rní adresový prostor Operační systém procesu namapuje jen určitý počet stránek použije-li proces virtuální adresu mimo namapovaný prostor, dojde k výpadku stránky je generováno přerušení OS požadovanou stránku namapuje Operační systém často mapuje procesu stránky až, když dojde k výpadku stránky stránkování na žádost Nastane-li situace, kdy nejsou žádné volné rámy, OS musí některé stránky odmapovat různé strategie výběru stránek Buchtela@pef.czu.cz 20

Virtuáln lní paměť příklad Procesor pracuje s velikostí stránky 4kB (4096 B). Proces A má obsazenu tabulku stránek takto: stránka bit platnosti číslo rámu 0 1 2 1 2 0 40 1 3 Hlavní paměť 0 rám 0 4096 rám 1 8192 rám 2 12288 rám 3 Program, který řídí proces A má startovací adresu 100. Kde ve fyzické paměti je obsah této adresy umístěn? logická adresa: stránka (0. 4096) + posuv (100) fyzická adresa: rám (2) + posuv (100) 8192 + 100 = 8292 Buchtela@pef.czu.cz 21

Virtuáln lní paměť příklad Procesor pracuje s velikostí stránky 4kB (4096 B). Proces A má obsazenu tabulku stránek takto: stránka bit platnosti číslo rámu 0 1 2 1 2 0 40 1 3 Hlavní paměť 0 rám 0 4096 rám 1 8192 rám 2 12288 rám 3 Proces provede instrukci LDX R, 9000. Kterou adresu fyzické paměti procesor do registru načte? logická adresa: stránka (2. 4096) + posuv (808) fyzická adresa: rám (3) + posuv (808) 12288 + 808 = 13096 Buchtela@pef.czu.cz 22

Virtuáln lní paměť příklad Procesor pracuje s velikostí stránky 4kB (4096 B). Proces A má obsazenu tabulku stránek takto: stránka bit platnosti číslo rámu 0 1 2 1 2 0 40 1 3 Hlavní paměť 0 rám 0 4096 rám 1 8192 rám 2 12288 rám 3 Následně procesor začne provádět instrukci ADX R, 4098. Popište činnost procesoru a operačního systému při zpracování této instrukce. logická adresa: stránka (1. 4096) + posuv (2) fyzická adresa: bit platnosti = 0 výpadek stránky Buchtela@pef.czu.cz 23

Víceúrovňové stránkov nkování Předpokládejme, že logická adresa má 32 bitů a velikost stránky je 4kB (12 bitů). Tabulka stránek musí potom mít 1M (20 bitů) řádků. Každý řádek má několik bytů tabulka stránek by v paměti zabírala příliš místa Operační systém tabulku stránek také stránkuje udržuje její kopii na disku a do paměti uloží jen část Adresa stránky se rozdělí na adresu adresáře stránek vlastní adresu stránky Buchtela@pef.czu.cz 24

Víceúrovňové stránkov nkování Pokud rozdělíme 20 bitů adresy stránek z příkladu na adresu adresáře s 10 bity a adresu stránky také s 10 bity, potom obě tabulky budou mít jen 1024 řádků. Buchtela@pef.czu.cz 25

Invertovaná tabulka stránek Jiným řešením příliš velké tabulky stránek je použití tzv. invertované tabulky stránek Tabulka s přiřazením stránky a rámu je organizována podle čísel rámů (rámů je podstatně méně než stránek) OS hledá k číslu stránky číslo rámu a musí mít přímý přístup do tabulky podle čísla stránky realizováno pomocí hash tabulky Hash funkce je dána vztahem číslo stránky mod velikost základní části hash tabulky Více stránek může být mapováno do stejného místa hash tabulky rehashing Buchtela@pef.czu.cz 26

Invertovaná tabulka stránek logická adresa stránka posuv Hash tabulka Invertovaná tabulka stránek Rám 0 Rám 1 P RWX Z blok rám posuv Buchtela@pef.czu.cz 27

Virtuáln lní paměť segmentovaný adresový prostor Segmentovaný adresový prostor umožňuje: strukturovat program a data do oddělených segmentů s různými způsoby ochrany sdílení dat mezi procesy realizovat podprogramy uložením do segmentu, který je přístupný všem procesům nezávislý překlad (kompilaci) částí programu Buchtela@pef.czu.cz 28

Segmentovaný adresový prostor v UNIXu Některé implementace operačního systému UNIX (SYSTEM V) ukládají do různých segmentů program (text), data a zásobník (stack) Hlavní paměť Proces A Proces B STACK STACK DATA TEXT DATA TEXT Buchtela@pef.czu.cz 29

TLB cache Pro uchovávání právě načtené řádky tabulky stránek jsou procesory vybaveny rychlou vyrovnávací pamětí TLB cache (Translation Look aside Buffer) obvykle plně asociativní obsahuje řádově desítky řádků Příklad: Procesor má TLB cache s 32 řádky. Velikost stránky je 4kB. V jak velikém rozsahu adres může pracovat program, aniž by procesor musel při překladu adresy číst z hlavní paměti? (Samozřejmě s výjimkou počátečního naplnění TLB cache) TLB cache může obsahovat 32 stránek, každá o velikosti 4 kb rozsah adres = 32. 4 = 128 kb Buchtela@pef.czu.cz 30

Proces čtení z paměti / zápisu z do paměti Čtení z paměti / zápis do paměti probíhá následovně: Adresová jednotka nejdříve hledá zobrazení adresy stránky na adresu rámu v TLB cache Nenajde-li v TLB, hledá v tabulce stránek (možný výpadek stránky) Je-li známa fyzická adresa, hledá její obsah v cache paměti (mezi procesorem a hlavní pamětí) Není-li obsah paměti v cache, obrátí se na hlavní paměť Buchtela@pef.czu.cz 31

Proces čtení z paměti / zápisu z do paměti logická adresa TLB řádek tabulky stránek není v TLB Cache stránka posuv řádek tabulky stránek je v TLB TAG + TAG Tabulka stránek nesouhlasí tag + Hlavní paměť Souhlasí tag, obsah adresy je v cache Buchtela@pef.czu.cz 32

Děkuji za pozornost! Příští přednáška: Přerušovací systémy, sběrnice a komunikace po sběrnici