Téma 1: Úvod, Technické vybavení

Slides:



Advertisements
Podobné prezentace
2.1 Pevný disk Fyzická struktura  plotny  záznamový materiál  č/z hlavičky  prachotěsný obal  motorky otáčení ploten  plotny na jedné hřídely.
Advertisements

Strategické řízení školy s využitím sebehodnocení školy dle modelu CAF RNDr. Hana Žufanová.
Uvedení autoři, není-li uvedeno jinak, jsou autory tohoto výukového materiálu a všech jeho částí. Tento projekt je spolufinancován ESF a státním rozpočtem.
Petr Krčmář Virtualizace (především linuxová) InstallFest 2011.
ELEKTRONICKÉ ZABEZPEČOVACÍ SYSTÉMY. Název projektu: Nové ICT rozvíjí matematické a odborné kompetence Číslo projektu: CZ.1.07/1.5.00/ Název školy:
Warez scéna, crack. Warez, co to je? Warez je termín počítačového slangu označující autorská díla, se kterými je nakládáno nelegálně, zejména v rozporu.
BEZPEČNOSTNÍ TECHNOLOGIE I Operační program Vzdělávání pro konkurenceschopnost Projekt: Vzdělávání pro bezpečnostní systém státu (reg. č.: CZ.1.01/2.2.00/ )
Počítačové sítě 8. Využití sítí © Milan Keršlágerhttp:// Obsah: ● sdílení v sítích.
Číslo projektu: CZ.1.07/1.4.00/ Název DUM: Prostředí internetu Číslo DUM: III/2/VT/2/2/27 Vzdělávací předmět: Výpočetní technika Tematická oblast:
MATURITNÍ OTÁZKA Č.6 ORIENTACE V PRINCIPECH, MOŽNOSTECH A PRAKTICKÉM VYUŽITÍ POČÍTAČOVÝCH SÍTÍ.
Maticové počítače. Při operacích s maticí se větší počet prvků matice zpracovává současně a to při stejné operaci. Proto se pro tyto operace hodí nejlépe.
POS 40 – 83. Základy datové komunikace - MULTIPLEX Kmitočtovým dělením (FDMA) – Přidělení kmitočtu jednotlivým uživatelům = šířka pásma se rozdělí na.
Název školyZákladní škola praktická Rožnov pod Radhoštěm Číslo projektuCZ / / Číslo materiáluVY_32_INOVACE_225 AutorMgr. Romana Rybiařová.
Technologie počítačů 4. Sběrnice © Milan Keršlágerhttp:// Obsah: ● ISA, EISA, VL-BUS,
Plánovací část projektu Cíl projektu - vychází z řešení z prognostické části, - odpovídá na otázku, čeho má být dosaženo? - představuje slovní popis účelu.
Základní škola a mateřská škola Lázně Kynžvart Autor: Mgr. Petra Šandová Název: VY_32_INOVACE_5B_INF3_16_ Téma: pro 4.,5.ročník ZŠ, vytvořeno:
Principy Základních registrů Ing. Ondřej Felix, CSc.
Síťové operační systémy OB21-OP-EL-KON-DOL-M Orbis pictus 21. století.
Počitačová bezpečnost - je obor informatiky, který se zabývá zabezpečením informací v počítačích (odhalení a zmenšení rizik spojených s používáním počítače).
Vyhláška č. 326/2006 Sb., o atestačním řízení pro elektronické nástroje Mgr. Martin Plíšek.
1. WORKSHOP.
Software =je v informatice sada všech počítačových programů používaných v počítači, které provádějí nějakou činnost. - Software je protiklad k hardwaru,
Architektura operačních systémů
Rozhraní a porty Jsou to prvky, které vytvářejí rozhraní mezi počítačem a periférním zařízením.
Základy automatického řízení 1
Základní škola a mateřská škola Lázně Kynžvart Autor: Mgr
Výukový materiál zpracován v rámci projektu
Technické vybavení počítače - Počítač PC
Internet.
Proudové chrániče.
Operační systémy Hardwarové prostředky využívané počítačem
Batové dávky Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Vojtěch Mrózek. Dostupné z Metodického portálu ISSN: ,
OPERAČNÍ SYSTÉMY Část 1 – úloha OS Zpracovala: Mgr. Marcela Cvrkalová
Správa paměti - úvod Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
INTERNET Číslo projektu CZ.1.07/1.5.00/ Název školy
Hardware číslicové techniky
Prvky v síti Střední škola hotelová a služeb Kroměříž Název školy
Programování v jazyce C++
Přístupový systém aneb kontrola vstupů
Inf Ovládání operačního systému
Mikroprocesor.
Financováno z ESF a státního rozpočtu ČR.
Oblast: Dobré životní podmínky zvířat
Souběh Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
1. ročník oboru Mechanik opravář motorových vozidel
Plánování procesů Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
Technické prostředky v požární ochraně
BIBS Informatika pro ekonomy přednáška 2
Informatika pro ekonomy přednáška 8
Přídavná zařízení.
Uživatelská příručka DuoTrainin
Pravidla a doporučené postupy pro vytváření studijních programů
Technické vybavení počítačů v kostce
Instalace OS Linux Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
Informatika Počítačové sítě.
Programovatelné automaty (Programmable logic controllers – PLC)
Opakování učiva pro 9. ročník
Materiál byl vytvořen v rámci projektu
Remote login.
Jiří Vyskočil, Marko Genyg-Berezovskyj 2010
Název školy: Autor: Název: Číslo projektu: Název projektu:
Číslo projektu Číslo materiálu název školy Autor Tematický celek
Přednášky z Distribuovaných systémů
Základní škola a mateřská škola Lázně Kynžvart Autor: Mgr
Informatika pro ekonomy přednáška 8
Počítačové sítě Úvodní přednáška
Informační systém základních registrů
Digitální učební materiál
Informatika Počítačové viry.
Opakování učiva pro 9. ročník
Transkript prezentace:

Téma 1: Úvod, Technické vybavení Jiří Lažanský, K13133 lazan@labe.felk.cvut.cz Obsah Obsah a organizace předmětu Co to je Operační systém Multiprogramování, sdílení času Rozmanitost operačních systémů, historie Základní struktura technického vybavení Procesor a jeho registry Instrukce a jejich vykonávání Vstup a výstup Režimy práce procesoru Výjimečné situace, přerušení Paměti a jejich hierarchie Ochranné mechanismy Úvod, Technické vybavení

Cíle předmětu O čem tento předmět NENÍ O konkrétních implementacích konkrétních operačních systémů (OS) na konkrétních hardwarových platformách Konkrétní příklady pouze jako ilustrace principů O tvorbě operačních systémů jako celků Jaký JE účel tohoto předmětu Poznat principy práce OS Naučit se OS využívat efektivně a bezpečně Vhodným programováním na uživatelské úrovni lze mnohdy výrazně zefektivnit běh úloh Uvidíme proč a jak Při tvorbě složitějších systémů lze narazit na zřídka se vyskytující, o to však nebezpečnější situace Úvod, Technické vybavení

Studijní podklady Souhrnná literatura v češtině není Tyto prezentace (stránka předmětu): http://labe.felk.cvut.cz/vyuka/A4B33OSS/ Cvičení částečně seminární a samostatná práce Odkaz na cvičení z uvedené stránky Vedoucí cvičení: RNDr. Petr Štěpán, PhD. Zkouška: Výsledky cvičení (až 10 b.) Test u zkoušky (až 5 b.) Zadaný příklad/úloha (až 15 b.) Hodnocení: ≥ 27 & Minimálně 9 bodů ze cvičení → A (výborně) 24 – 26 & Minimálně 8 bodů ze cvičení → B (velmi dobře) 21 – 23 & Minimálně 7 bodů ze cvičení → C (dobře) 18 – 20 → D (uspokojivě) 15 – 17 → E (dostatečně) Úvod, Technické vybavení

Literatura Silberschatz A., Galvin P. B., Gagne G.: Operating System Concepts http://codex.cs.yale.edu/avi/os-book/OS7/os7c/index.html Tanenbaum A. S.: Modern Operating Systems http://www.cs.vu.nl/~ast/books/mos2/ Comer D. E.: Internetworking With TCP/IP Volume 1: Principles Protocols, and Architecture, http://www.cs.purdue.edu/homes/dec/vol1/vol1_presentation.pdf Úvod, Technické vybavení

A. S. Tanenbaum: Modern Operating Systems Úvod, Technické vybavení

Plán přednáškových témat Č. Datum Téma 01 20.09.2011 Úvod. Přehled počítačového hardware, hypotetický počítač 02 27.09.2011 Pojem operační systém (OS), jeho typy a architektury, služby OS a jejich volání, API standardy. 03 04.10.2011 Výpočetní procesy a jejich životní cyklus. Plánování procesů. Vlákna a jejich implementace, vztah k procesům. Problém souběhu. 04 11.10.2011 Plánování práce procesorů, plánovací algoritmy. Systémy reálného času a plánování v nich. 05 18.10.2011 Meziprocesní komunikace, synchronizace procesů a vláken. Problém uváznutí, možnosti řešení. 06 25.10.2011 Správa paměti: techniky a problémy, segmentace, stránkování. Virtualizace, problém "výprasku", pracovní množina. 07 01.11.2011 Souborové systémy, organizace dat na vnějších pamětích, alokace diskového prostoru, principy, řešení, ochrany. 08 08.11.2011 Tvorba spustitelného programu aneb "Od zdrojového programu k procesu". 09 15.11.2011 Úvod do počítačových sítí, ISO-OSI referenční model a "TCP/IP" model. Základní technologie LAN a adresování v nich. Propojování LAN. 10 22.11.2011 Datagramy, adresování, směrování datagramů. Základní protokoly Internetu (ICMP, UDP, TCP). Klient – server. Privátní sítě, NAT. Filtrování IP (firewally) 11 29.11.2011 Protokol TCP/IP, vlastnosti, virtuální spoj. Tunelování, virtuální privátní sítě. Podpora sítí v OS, sokety a jejich programování – pohled ze strany OS. 12 06.12.2011 Systém doménových jmen (DNS), hierarchie globálního DNS, jmenné servery. Struktura systému elektronické pošty, souvislost s DNS. 13 13.12.2011 Vybrané aplikační IP protokoly: SMTP a POP3 (pošta), HTTP (web), Telnet, SSH (vzdálený přístup) 14 20.12.2010 Shrnutí, rezerva Úvod, Technické vybavení

Proč studovat OS? Pravděpodobně nikdo z nás nebude psát celý nový OS Proč tedy OS studovat? Jde o nejrozsáhlejší a nejsložitější IT systémy Uplatňují se v nich mnohé různorodé oblasti softwarové inženýrství, netradiční struktury dat, sítě, algoritmy, … Čas od času je potřeba OS upravit pak je potřeba operačním systémům rozumět psaní ovladačů, … Techniky užívané v OS lze uplatnit i v jiných oblastech neobvyklé struktury dat, krizové rozhodování, problémy souběžnosti, správa zdrojů, ... mnohdy aplikace technik z jiných disciplin (např. operační výzkum) naopak techniky vyvinuté pro OS se uplatňují v jiných oblastech (např. při plánování aktivit v průmyslu) Úvod, Technické vybavení

Co to je Operační systém? (1) Neexistuje žádná obecně platná definice OS je programový subsystém fungující jako mezičlánek, který spojuje uživatele a hardware počítače Úkoly OS: dohlížet na provádění výpočtů řízených uživatelskými programy usnadňovat řešení uživatelských problémů umožnit efektivní využití hardware počítače učinit počítač snáze použitelný OS je správce prostředků – spravuje a přiděluje zdroje systému řídicí program – řídí provádění ostatních programů Jádro operačního systému – trvale ‘aktivní program’ ostatní (tzv. systémové) programy lze chápat jako nadstavbu jádra aplikační programy jsou vlastně jádrem spouštěné „rutiny“ Úvod, Technické vybavení

Co to je Operační systém? (2) Několik koncepcí pojmu OS systémové (jen jádro a s ním související nadstavby) „obchodní“ (to, co si koupíme pod označením OS) organizační (včetně pravidel pro hladký chod systému) OS jako rozšíření počítače Zakrývá komplikované detaily hardware Poskytuje uživateli „virtuální stroj“, který má se snáze ovládá a programuje OS jako správce systémových prostředků Každý program dostává prostředky v čase Každý program dostává potřebný prostor na potřebných prostředcích Úvod, Technické vybavení

Skladba počítačového systému Hardware základní výpočetní zdroje (CPU/procesor, paměť, I/O zařízení) Operační systém řídí a koordinuje používání hardware různými aplikačními programy různých uživatelů Aplikační programy definují způsoby, jak se zdroje výpočetního systému používají pro řešení uživatelských výpočetních problémů (kompilátory, databázové systémy, video hry, programy účetní správy, rezervace místenek, programovatelný logický automat, ...) Uživatelé lidé, stroje (řízení klimatizace budovy), jiné počítače (sítě, distribuované systémy) Úvod, Technické vybavení

Model počítačového systému Systémové a aplikační programy Operační systém (jádro) Hardware počítače Uživatel 1 Uživatel 2 Uživatel 3 Uživatel n ... Překladač Textový editor Počítačová hra Databáze Úvod, Technické vybavení

Různorodost operačních systémů OS „střediskových“ (mainframe) počítačů OS datových a síťových serverů OS multiprocesorových počítačů OS osobních počítačů a pracovních stanic OS reálného času (Real-time OS) Vestavěné OS (tiskárna, pračka, telefon, ...) OS čipových karet (smart card OS) ... a mnoho dalších specializovaných systémů Úvod, Technické vybavení

Klasické „střediskové“ počítače (1) Střediskový počítač – dnes již historický pojem V současnosti vystupují v jejich rolích podnikové servery nebo tzv. clustery Hlavní rysy „střediskových“ počítačů Historicky zpravidla děrnoštítkové systémy Redukce režijního času pro přípravu výpočtů se dosahovalo řazením podobných prací/zakázek (jobs) do dávek – batch Batch processing, automatizace řazení dávek včetně automaticky předávaného řízení mezi definovanými zakázkami (jobs) Rezidentní řídicí program – monitor – předává řízení mezi zakázkami; když zakázka končí – řízení se vrací monitoru Multiprogramní režim činnosti – na primitivní úrovni (aspoň z dnešního pohledu) Úvod, Technické vybavení

Klasické „střediskové“ počítače (2) Historický systém dávkového zpracování Operátor přinesl děrné štítky k IBM 1401 Zde vznikla tzv. „dávka“ (in-spooling) Na IBM 7094 proběhlo vlastní zpracování Výstupní IBM 1401 poslal výsledky na tiskárnu (out-spooling) Spooling se samozřejmě používá i v nejmodernějších systémech Úvod, Technické vybavení

OS implementující multiprogramování (1) Funkcionalita pro ovládání I/O Řízení operací provádí výhradně operační systém Dva režimy práce CPU (jádro vs. uživatel)  privilegované instrukce Funkcionalita pro správu paměti Systém musí být schopný přidělovat paměť různým zakázkám a ze zakázek odvozeným procesům dynamicky přidělovat paměť Dvojí pohled na paměť z hlediska její fyzické konstrukce a šířky fyzických adresovacích sběrnic – fyzický adresní prostor, FAP z hlediska konstrukce adresy ve strojovém jazyku – logický adresní prostor, LAP Ochrana oblastí paměti před neautorizovaným přístupem Úvod, Technické vybavení

OS implementující multiprogramování (2) Mechanismus přerušení předávání řízení mezi aplikačním programem a „monitorem“ → implementace reakcí na asynchronní události OS je systém řízený přerušeními Plánování práce CPU reaguje se na generátor časových značek (timer) – po uplynutí daného intervalu generuje přerušení ochrana proti trvalému obsazení CPU uživatelským procesem (záměrně, chybou, ...) OS musí být schopen volit mezi různými výpočetními procesy připravenými k činnosti Funkcionalita pro přidělování zařízení (systémových zdrojů) dynamické přidělování přidělování exklusivní či sdílené Úvod, Technické vybavení

Systémy s přidělováním časových kvant Tzv. Time-Sharing Systems (TSS) Multiprogramování vzniklo jako nástroj pro efektivní řešení dávkového zpracování TSS rozšiřují plánovací pravidla o rychlé (spravedlivé, cyklické ) přepínání mezi procesy řešícími zakázky interaktivních uživatelů Podpora on-line komunikace mezi uživatelem a OS původně v konfiguraci počítač – terminál v současnosti v síťovém prostředí Systém je uživatelům dostupný on-line jak pro zpřístupňování dat tak i programů Úvod, Technické vybavení

Osobní (personální) počítače – PC Typicky orientované na jednoho uživatele v současné době ale vesměs s multiprogramováním (multitaskingem) Typizované I/O vybavení klávesnice, myš, obrazovka, malá tiskárna, komunikační rozhraní Upřednostňovaným cílem je uživatelovo pohodlí minimum ochran – hlavní roli hraje odpovědnost uživatele často se nevyužívají ochranné vlastnosti CPU OS PC často adoptují technologie vyvinuté pro OS větších počítačů Mnohdy lze provozovat různé typy operačních systémů M$ Windows , UNIXy , Linux ... Úvod, Technické vybavení

Paralelní a distribuované systémy Paralelní systémy více procesorů (tzv. multiprocesory) sdílí společný FAP všechny procesory mohou „současně” vidět stav paralelně řešené úlohy udržovaný ve sdíleném FAP paralelní systémy jsou řízeny paralelními algoritmy někdy též „těsně vázané“ systémy (tightly-coupled systems) Distribuované systémy více počítačů (ne nutně shodných) každý má samostatný FAP komunikují periferními operacemi (komunikační spoje, síť) stav distribuovaně řešené úlohy si musí každý zúčastněný počítač postupně získávat výměnou zpráv řízenou distribuovanými algoritmy někdy též „volně vázané“ systémy (loosely-coupled systems) Úvod, Technické vybavení

Paralelní systémy Zvyšují propustnost a spolehlivost při rozumných nákladech na výpočetní systém Multiprocesorové systémy systémy s více procesory vzájemně komunikujícími vnitřními prostředky jednoho výpočetního systému (např. společnou sběrnicí) Nesymetrický multiprocesing každý procesor má přidělený specifický úkol hlavní (master) procesor plánuje a přiděluje práci podřízeným (slave) procesorům Symetrický multiprocesing (SMP) podporován většinou soudobých OS současně může běžet více procesů na různých CPU kterýkoliv proces (i jádro OS) může běžet na kterémkoliv procesoru Úvod, Technické vybavení

Distribuované systémy Rozdělení výpočtů mezi více počítačů propojených sítí lze sdílet zátěž (load-sharing), výpočty se tím zrychlují i za cenu vyšší režie spojené s komunikací zvyšuje se spolehlivost a komunikační schopnosti každý samostatný procesor má svoji vlastní lokální paměť vzájemně se komunikuje pomocí přenosových spojů (sítě) mechanismem výměny zpráv Vynucují si použití vhodné síťové infrastruktury LAN, Local Area Networks WAN, Wide Area Networks Klasifikace asymetrické distribuované systémy – klient-server symetrické distribuované systémy – peer-to-peer OS: Distribuovaný OS vs. síťový OS Úvod, Technické vybavení

Paralelní a distribuované systémy Těsně vázaný multiprocesorový systém CPU ... Paměť Sběrnice Klient ... Server Síťová infrastruktura Distribuovaný systém typu klient-server Úvod, Technické vybavení

Real-Time systémy (RT systémy) Nejčastěji řídicí zařízení v dedikovaných (vestavěných) aplikacích: vědecký přístroj, diagnostický zobrazovací systém, systém řízení průmyslového procesu, monitorovací systémy Obvykle dobře definované pevné časové limity Někdy také subsystém univerzálního OS Klasifikace: striktní RT systémy – Hard real-time systems omezená nebo žádná vnější paměť, data se pamatují krátkodobě v RAM paměti protipól TSS, univerzální OS nepodporují striktní RT systémy plánování musí respektovat požadavek ukončení kritického úkolu v rámci požadovaného časového intervalu tolerantní RT systémy – Soft real-time systems použití např. v průmyslovém řízení, v robotice použitelné v aplikacích požadujících dostupnost některých vlastností obecných OS (multimedia, virtual reality, video-on-demand) kritické úkoly mají přednost „před méně šťastnými” Úvod, Technické vybavení

Kapesní systémy Handheld Systems, Personal Digital Assistants (PDA) Charakteristiky: Požadavek energetické úspornosti => Pomalé procesory Relativně omezená kapacita paměti Zpravidla malý display Potřeba multiprogramování, avšak obvykle bez sdílení času Mobilní telefony Navíc podpora síťových komunikačních protokolů Softwarové modemy pro datové přenosy Úvod, Technické vybavení

Základní komponenty osobního počítače Úvod, Technické vybavení

Komponenty univerzálního počítače Tiskárny CPU Řadič disků Řadič tiskáren Řadič měniče DVD Jednotka správy paměti (MMU) Hlavní paměť Systémová sběrnice Disky Měnič DVD-RW disků Úvod, Technické vybavení

Souvislost operací I/O a CPU I/O = to co se děje mezi lokální vyrovnávací pamětí řadiče a vlastní fyzickou periferií I/O zařízení (periferie) a CPU by měly pracovat souběžně řádově odlišné rychlosti každý řadič zařízení má lokální vyrovnávací paměť, buffer Každý řadič zařízení je odpovědný za činnost zařízení jistého typu periferie jsou velmi rozmanité Přesun dat mezi operační pamětí a lokální vyrovnávací pamětí periférie zajišťuje CPU programovými prostředky (tzv. programový kanál) specializovaný hardware (tzv. DMA kanál) Řadič zařízení informuje CPU o ukončení své činnosti přerušením Úvod, Technické vybavení

Sběrnicový pohled na počítač Úvod, Technické vybavení

Centrální jednotka počítače (CPU) Základní pohled na nejdůležitější komponenty centrální jednotky počítače PC = Program Counter Čítač instrukcí IR Instruction Register Registr instrukcí MAR Memory Address Register Adresní registr paměti MBR Memory Buffer Register Datový vyrovnávací registr paměti I/O AR I/O Address Register Adresní registr I/O I/O BR I/O Buffer Register Datový vyrovnávací registr I/O DBR Data Buffer Register Datový vyrovnávací registr řadiče CSR Control & Status Register Řídicí a stavový registr na řadiči Úvod, Technické vybavení

Registry procesoru Uživatelské registry Řídicí a stavové registry Uživatelsky viditelné (programově dostupné) registry Umožňují vlastní programování a zpracování dat Obsahují data, adresy a podmínkové kódy Řídicí a stavové registry Obecně nedostupné uživatelským procesům Procesor modifikuje svoji činnost jejich obsahem (řídicí) a vykazuje v nich svůj stav (stavové) Některé z nich používá CPU pro řízení práce programů Program Counter (PC) – adresa získávané instrukce (někdy též Instruction Pointer = IP) Instruction Register (IR) – kód instrukce přečtené z paměti Program Status Word (PSW) – obsahuje: Bity podmínkových kódu a stavu (např. vlastnosti výsledku předchozí operace) Interrupt enable/disable bit System (kernel, supervisor)/User mode bit  Úvod, Technické vybavení

Uživatelské registry Uživatelské registry Typy uživatelských registrů Dostupné běžnými strojovými instrukcemi Používány všemi programy (tj. aplikačními i systémovými) Typy uživatelských registrů Datové – většinou univerzální použití Adresní Obecné adresní Bázové registry Segmentační registry Indexní registry – obsahují relativní adresy Ukazatel zásobníku (Stack pointer) Příklady instrukcí: move.l D0,(A4)+ (MC 680*0) add.b (A1,D3),D0 Úvod, Technické vybavení

Základní instrukční cyklus CPU START Nahrát instrukci Vykonat instrukci STOP Přípravný cyklus Výkonný cyklus Instrukce stop Animace Přípravná fáze (fetch cycle) nahrává do procesoru instrukci podle PC a umístí její kód do IR na jejím konci se (zpravidla) inkrementuje PC Výkonná fáze (execute cycle) vlastní provedení instrukce může se dále obracet (i několikrát) k paměti loop: FETCH; /* ((PC)) → IR */ Increment(PC); EXECUTE; /* proveď operaci dle (IR) */ end loop Úvod, Technické vybavení

Přerušení Přerušení normální posloupnosti provádění instrukcí cílem je zlepšení účinnosti práce systému je potřeba provést jinou posloupnost příkazů jako reakci na nějakou „neobvyklou” událost přerušující událost způsobí, že se pozastaví běh procesu v CPU takovým způsobem, aby ho bylo možné později znovu obnovit, aniž by to přerušený proces „poznal“ Souběh I/O operace Přerušení umožní, aby CPU prováděla jiné akce než instrukce programu čekajícího na konec I/O operace Činnost CPU se později přeruší iniciativou „I/O modulu” CPU předá řízení na obslužnou rutinu přerušení (Interrupt Service Routine) – standardní součást OS CPU testuje nutnost věnovat se obsluze přerušení alespoň po dokončení každé instrukci existují výjimky (např. „blokové instrukce“ Intel) Úvod, Technické vybavení

Cyklus CPU s přerušovacím systémem Je nevyřízená žádost o přerušení, a přerušení je povoleno spustí se obslužný podprogram přerušení, jehož adresa se získá z vektoru přerušení START Nahrát instrukci Vykonat instrukci STOP Přípravný cyklus Výkonný cyklus Přerušeni zakázána Přerušeni povolena Existuje žádost o přerušení? Ne Ano Přerušovací cyklus Vektor přerušení Adresy obslužných podprogramů. Vektor indexován zdrojem přerušení INTF: Boolean:=False; /* Při žádostí o přerušení → True */ loop: FETCH; Increment(PC); EXECUTE; if INTF then Ulož PSW do PSWbf; Do PSW vygeneruj slovo s indikací System mode a Interrupt disabled; Ulož PSWbf na vrchol zásobníku; Ulož PC na vrchol zásobníku; Do PC zaveď obsah příslušné položky vektoru přerušení end loop Aktivity při zpracování přerušení Úvod, Technické vybavení

Výjimky a jejich třídy Přerušení je speciálním případem výjimečné situace Synchronní (s během programu) Programové (naprogramované) speciální instrukce (INT, TRAP) Generované kontrolními obvody počítače: aritmetické přetečení, dělení nulou pokus o vykonání nelegální či neznámé instrukce neoprávněný pokus o přístup k paměťové lokaci (narušení ochrany paměti, virtuální paměť ) Asynchronní (přicházející zvenčí – klasické přerušení) I/O, časovač, hardwarové problémy (např. výpadek napájení ...) Kdy se na výjimečné situace reaguje? Standardní přerušení: Po dokončení instrukce během níž vznikl požadavek Výjimka vysoké úrovně: Během provádění instrukce (po dokončení některé fáze provádění instrukce) – instrukci nelze dokončit Kritická výjimka: Nelze dokončit ani cyklus přenosu dat a je nutno reagovat okamžitě Úvod, Technické vybavení

Organizace I/O – 2 způsoby obsluhy I/O operace: Zpravidla přenos sekvence údajů Přenos dat z I/O zařízení do OP – vstup Přenos dat z OP do I/O – výstup Dva způsoby obsluhy S aktivním čekáním (busy waiting) v systémech bez řízení IO pomocí OS žádné souběžné zpracovávání I/O, nedořešený zůstává nejvýše jeden I/O požadavek program testuje konec IO operace opakovanými dotazy na příslušný stavový registr IO zařízení S přerušením a OS řízeným souběžným prováděním v systémech s řízením IO pomocí OS souběžné zpracovává ní I/O s během programu(ů) I/O operaci zahajuje OS na žádost z uživatelské ho procesu uživatelský proces čeká na dokončení I/O operace – synchronní řešení I/O uživatelský proces nečeká na dokončení I/O operace – asynchronní řešení I/O, může běžet souběžně s I/O operací Úvod, Technické vybavení

Synchronní a asynchronní I/O operace Ovladač periferie Hardware Datový přenos Proces požadující I/O Obslužná rutina přerušení čeká Událost ukončující čekáni Synchronní operace Uživat. Systém. Proces požadující I/O Oznámení o ukončení I/O operace pracuje Ovladač periferie Obslužná rutina přerušení Hardware Datový přenos Čas Asynchronní operace Jedná se o chování z hlediska aplikačního programu Synchronní operace Obvyklé řešení Asynchronní operace Obtížnější programování Výstup – relativně schůdné Vstup: Více vyrovnávacích pamětí („houpačka“) Úvod, Technické vybavení

I/O s aktivním čekáním CPU zahajuje elementární přenos údajů a v „dotazovací smyčce“ čeká na připravenost dat Programově velmi jednoduché Velmi neefektivní až na zcela výjimečné případy Použitelné jen v primitivních systémech bez multiprogramování Úvod, Technické vybavení

Programový I/O s přerušením CPU inicializuje elementární přenos a věnuje se jiné činnosti Když je údaj připraven, adapter ZVV vyvolá přerušení Obslužná rutina přenese data mezi DBR a pamětí Pružné – data lze při přenosu upravovat Relativně pomalé, účast CPU, řízeno programem Jen pro ZVV schopná práce v režimu start-stop Zařízení schopná ze své fyzikální podstaty pozastavit přenos dat kdykoliv a na libovolně dlouhou dobu beze ztrát Úvod, Technické vybavení

Přímý přístup do paměti - DMA Určeno pro blokové přenosy dat vysokou rychlostí I/O přenosy se uskutečňují bez přímé účasti procesoru mezi periferním zařízením a pamětí Procesor dovolí I/O modulu přímo číst z nebo zapisovat do operační paměti – kradení cyklů (cycle stealing) Procesor zadá jen velikost a umístění bloku v paměti a směr přenosu Přerušení se generuje až po dokončení přenosu bloku dat CPU Paměť Řadič disků Úvod, Technické vybavení

I/O operace s přímým přístupem do paměti CPU zadá parametry přenosu DMA jednotce Přenos probíhá autonomně bez účasti CPU DMA vyvolá přerušení po ukončení přenosu bloku (nebo při chybě) Obslužná rutina pouze testuje úspěšnost přenosu a informuje OS, že přenos skončil Úvod, Technické vybavení

Režimy práce procesoru Dva režimy práce procesoru Základ hardwarových ochran Systémový = privilegovaný režim procesor může vše, čeho je schopen Uživatelský = aplikační (ochranný) režim privilegované operace jsou zakázány Privilegované operace ovlivnění stavu celého systému (halt, reset, Interrupt Enable/Disable, modifikace PSW, modifikace registrů MMU ) instrukce pro vstup/výstup (in, out) Okamžitě platný režim je zachycen v PSW (S-bit) Přechody mezi režimy Po zapnutí stroje systémový režim S U Speciální instrukce  Jakékoliv přerušení vč. synchronního Úvod, Technické vybavení

Vícenásobná přerušení Sekvenční zpracování během obsluhy jednoho přerušení se další požadavky nepřijímají (pozdržují se) jednoduché, ale nevhodné pro časově kritické akce Vnořené zpracování prioritní mechanismus přijímají se přerušení s prioritou striktně vyšší, než je priorita obsluhovaného přerušení Úvod, Technické vybavení

Postup přijímání přerušení (1) Žádost se vyhodnotí na přípustnost (priority přerušení) Procesor přejde do zvláštního cyklu Uschová se obsah stavového slova procesoru (PSW). Do PSW se vygeneruje "syntetické" stavové slovo s nastaveným S-bitem. Nyní je CPU v privilegovaném režimu Uschované původní PSW uloží na zásobník. Na zásobník se uloží i čítač instrukcí PC (tzv. rámec přerušení). PC se nahradí hodnotou z vektoru přerušení, indexovaného zdrojem přerušení. Úvod, Technické vybavení

Postup přijímání přerušení (2) Procesor přechází do normálního režimu práce a zpracovává obslužnou rutinu přerušení Obslužná rutina musí být transparentní Programově se musí uložit všechny registry CPU, které obslužná rutina použije, a před návratem z přerušení se opět vše musí obnovit tak, aby přerušená posloupnost instrukcí nepoznala, že byla přerušena. Obslužnou rutinu končí instrukce „návrat z přerušení“ (IRET, RTE) mající opačný efekt: z vrcholu zásobníku vezme položky, které umístí zpět do PC a PSW Při vhodném naformulování položek na vrcholu systémového zásobníku se instrukce návratu z přerušení používá pro přechod ze systémového do uživatelského režimu Úvod, Technické vybavení

Hierarchie pamětí (1) Hierarchie pamětí z pohledu rychlosti a kapacity Typická přístupová doba Typická kapacita 1 ns < 1 KB 3 < 16 MB 50 32 MB – 8 GB 10 ms 5 400 GB 100 s Registry Cache Hlavní paměť Pevný magnetický disk Magnetická páska 20 1000 GB Energeticky závislé (volatile) Energeticky nezávislé (persistent) Hierarchie pamětí z pohledu rychlosti a kapacity uvedená čísla představují pouze hrubá přiblížení směrem dolů klesá rychlost i „cena za 1 bit“ Typy prvků používaných v hlavní paměti RAM, ROM, EEPROM, CMOS-RAM Úvod, Technické vybavení

na DVD, magnetické pásce, apod. Hierarchie pamětí (2) Typické údaje Úroveň 1 2 3 4 Označení registry CPU cache hlavní paměť disk Typická velikost ≤ 1 KB ≤ 16 MB ≤ 8 GB > 100 GB Technologie Uvnitř CPU (CMOS) CMOS SRAM CMOS DRAM magnetický disk Přístupová doba ~ 0,5 ns 1 – 25 ns 80 – 500 ns ~ 5 ms o 4 řády pomalejší Spravováno „překladačem“ hardwarem operačním systémem Obsah zálohován v cache v hlavní paměti na disku na DVD, magnetické pásce, apod. Úvod, Technické vybavení

Caching, cache paměti (1) Caching je princip používaný v OS velmi často části obsahu pomalejší paměti s vyšší kapacitou jsou podle potřeby dočasně kopírovány do paměti rychlejší Mezipaměť ležící mezi CPU a hlavní pamětí Transparentní pro operační systém i pro programátora Je rychlejší než operační (hlavní) paměť Mikroprogramem řízené kopírování informací z hlavní paměti do cache paměti po blocích Princip časové a prostorové lokality běžných programů Problém udržení konzistence více kopií těchže dat v multiprocesorových systémech Hlavní paměť CPU Cache Jednoslovní přenosy Blokové přenosy Úvod, Technické vybavení

Caching, cache paměti (2) Velikost cache čím větší, tím častěji se najdou požadovaná data v cache, ale také roste cena Velikost přenosového bloku – kompromis: velké bloky = dlouhé přenosy malé bloky = časté přenosy Mapovací funkce kam přijde blok do cache Nahrazovací algoritmus: určuje, který blok v cache bude nahrazen Least-Recently-Used (LRU) algoritmus Analogie hardwarově realizované principy původně vyvinuté pro virtuální paměť Úvod, Technické vybavení

Struktura diskové jednotky Třírozměrná adresa bloku: cylindr, povrch, sektor Moderní LBA (lineární adresování bloků) Úvod, Technické vybavení

Bezpečnostní mechanismy v hardware Základní opatření Dva režimy práce procesoru(ů)  Vstup a výstup: Povinné a uživatelským režimem vynucené volání služeb OS I/O instrukce jsou privilegované Uživatelský program nikdy nesmí získat možnost práce v privilegovaném režimu Např. nesmí mít možnost zapsat do PSW a změnit tak režim práce CPU (S-bit v PSW) nebo modifikovat vektor přerušení Ochrana paměti Musí zabezpečit izolaci jádra OS i aplikačních programů navzájem Souvisí s metodami správy paměti a zobrazováním LAP do FAP  Ochrana dostupnosti CPU Prevence před převzetím vlády jednoho aplikačního programu nad CPU Řešení: časovač (timer) V pravidelných (privilegovaně programovatelných) intervalech vyvolává přerušení, a tak je aktivováno jádro OS Mnohdy realizován jako „periferní zařízení“ O přerušení od časovače se opírají mechanismy plánování procesoru(ů) Úvod, Technické vybavení

Struktura standardního PC Úvod, Technické vybavení

? Dotazy Úvod, Technické vybavení