5. přednáška 14. března 2016 Operační systémy 2015/2016.

Slides:



Advertisements
Podobné prezentace
Operační systémy LS 2014/ přednáška 16. března 2015.
Advertisements

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.
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.
Střednědobé plány krajů, sítě sociálních služeb a přechod financování sociálních služeb na kraje Konference Financování sociálních služeb pro města a obce.
Výukový materiál zpracovaný v rámci projektu EU peníze školám Registrační číslo projektu:CZ.1.07/1.4.00/ Šablona:III/2 Inovace a zkvalitnění výuky.
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.
Využití informačních technologií při řízení obchodního řetězce Interspar © Ing. Jan Weiser.
Elektronické učební materiály - II. stupeň Digitální technologie 9 Autor: Bc. Pavel Šiktanc Movie Maker uložení a sdílení filmů Co se všechno naučíme???
OPERAČNÍ SYSTÉMY Část 3 – správa procesů Zpracovala: Mgr. Marcela Cvrkalová Střední škola informačních technologií a sociální péče, Brno, Purkyňova 97.
Publicita v projektech financovaných z ESF v rámci Operačního programu Lidské zdroje a zaměstnanost Seminář pro žadatele.
Spolupráce mezi výkresy bloky (s atributy) Design center externí reference.
Operační program Vzdělávání pro konkurenceschopnost Název projektu: Inovace magisterského studijního programu Fakulty ekonomiky a managementu Registrační.
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.
Systém správy dokumentace akreditované zkušební laboratoře Bc. Jan Randl, 4912.
Programování v jazyce C++ Dědičnost a polymorfismus.
Název školyZákladní škola praktická Rožnov pod Radhoštěm Číslo projektuCZ / / Číslo materiáluVY_32_INOVACE_225 AutorMgr. Romana Rybiařová.
Podnik ro Název projektu: Nové ICT rozvíjí matematické a odborné kompetence Číslo projektu: CZ.1.07/1.5.00/ Název školy: Střední odborná.
Síťové operační systémy OB21-OP-EL-KON-DOL-M Orbis pictus 21. století.
Projekt: Škola pro život Registrační číslo: CZ.1.07/1.4.00/ Číslo DUM: VY_32_INOVACE_02-informatika 8. třída_021 Základní škola: Základní škola.
OPERAČNÍ SYSTÉMY Část 5 – souborové systémy
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,
Dopravní modely v SUMP Jitka Ondráčková
Architektura operačních systémů
Věcné autority v roce 2016
Základy automatického řízení 1
Výukový materiál zpracován v rámci projektu
Systémové databáze v SQL Serveru
Organizace výroby Organizace a řízení výroby
Operační systémy 9. Spolupráce mezi procesy
Software počítače – opakování
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: 
1. Tlačítko START 2. Podrobnější hledání 3. Zařízení a tiskárny 4
Hardware číslicové techniky
Financováno z ESF a státního rozpočtu ČR.
Programování a simulace CNC strojů I.
Programování v jazyce C++
Aktuální informace k hodnocení strategií MAS
Databáze MS ACCESS 2010.
Řadič Orbis pictus 21. století
Mikroprocesor.
Financováno z ESF a státního rozpočtu ČR.
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: 
Vzdělávání pro konkurenceschopnost
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: 
Regulátory spojité VY_32_INOVACE_37_755
NEJČASTĚJŠÍ NEDOSTATKY V ŽÁDOSTECH O GP
Výukový materiál zpracován v rámci projektu
BIBS Informatika pro ekonomy přednáška 2
Informatika pro ekonomy přednáška 8
© 2012 STÁTNÍ ÚSTAV PRO KONTROLU LÉČIV
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: 
Programovatelné automaty (Programmable logic controllers – PLC)
Centralizované rozvojové projekty 2017
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:
Tereza Bížová Představení se.
Přednášky z Distribuovaných systémů
7. přednáška 4. dubna 2016 Operační systémy 2015/2016.
3. přednáška 29. února 2016.
Informační systém základních registrů
Hromadné dokumenty opakující se pro kolekci osob
Digitální učební materiál
Transkript prezentace:

5. přednáška 14. března 2016 Operační systémy 2015/2016

Operating system Design Hierarchy L Name Objects Example Operations 13 Shell User programming environment Statements in shell language 12 User processes Quit, kill, suspend, resume 11 Directories Create, destroy, attach, detach, search list 10 Devices External devices, such as printers, displays and keyboards Open, close, read, write 9 File system Files Create, destroy, open, close, read, write 8 Comunications Pipes 7 Virtual memory Segments, pages Read, write, fetch 6 Load secondary store Blocks of data, device channels Read, write, allocate, free 5 Primitive processes Primitive processes, semaphores, ready list Suspend, resume, wait, signal 4 Interrupts Interrupt-handling programs Invoke, mask, unmask, retry 3 Procedures Procedures, call stack, display Mark stack, call, return 2 Instruction set Evaluation stack, microprogram interpreter, scalar and array data Load, store, add, subtract, branch 1 Electronic circuits Registers, gates, buses, etc. Clear, transfer, activate, complement

Operating system Design Hierarchy Level 1: obsahuje elektronické obvody, které představují registry, paměťové buňky a logická hradla, operace na těchto objektech jsou např. mazání registrů, čtení z paměti, atd. Level 2: představuje instrukční soubor procesoru se strojovými instrukcemi (sčítání, odčítání, přesun, ...) Level 3: volání procedur a funkcí (podprogramů), call and return Level 4: představuje přerušení, při kterém se ukládá starý kontext a aktivuje se přerušovací rutina První 4 úrovně nejsou součástí operačního systému, ale zahrnují HW. Přesto některé části operačního systému těchto úrovní využívají (přerušení). Operační systémy 2015/2016

Operating system Design Hierarchy Level 5: v této úrovni běží procesy, jsou přepínány, je zajištěna synchronizace Level 6: zabývá se sekundární pamětí počítače (pevný disk), jsou zde implementovány funkce polohování čtecích hlav, přesun bloků dat, využívá sousedních vrstev pro plánování a adresování přesunů bloků dat Level 7: vytváří logický adresní prostor pro procesy, tato vrstva zajišťuje přesun dat mezi operační pamětí a diskem, běžná jsou 3 schémata: pevná délka stránky, proměnná délka stránky a obojí, pokud není požadovaný blok dat v paměti, zapojí se vrstva 6 Do úrovně Level 7 se operační systém zabývá pouze procesory, od úrovně Level 8 jsou zapojeny periferie a počítačová síť, objekty jsou sdíleny na jednom nebo více počítačích. Operační systémy 2015/2016

Operating system Design Hierarchy Level 8: zabývá se komunikací mezi procesy, pipes (roury) slouží k předávání informací mezi procesy, synchronizace, zprávy Level 9: long-term storage pojmenovaných souborů, čtení dat do proměnných, stopy, sektory, konstantní velikost bloku (Level 6) Level 10: poskytuje přístup k externím zařízením pomocí standardních interfaces Level 11: zodpovídá za asociace mezi externími a interními identifikátory zdrojů a objektů, externí jsou textové položky pro uživatele, interní jsou indikátory pro OS, přístupová práva Level 12: poskytuje podporu procesům na vyšší úrovni, než Level 5 (virtuální adresování, seznamy procesů k přepínání, atd.) Level 13: poskytuje intarface OS s uživatelem, shell, transformuje vlastnosti OS do služeb Operační systémy 2015/2016

Proces zdroje, HW, SW (OS, aplikace) prováděný program instance běžícího programu na počítači entita, která může být přiřazena a provedena procesorem aktivní jednotka charakterizovaná a prováděná sekvenčně prováděnými instrukcemi (vláknem), se svým stavem a sdružená se systémovými zdroji skládá se z několika částí, z nich základní jsou kód programu a množina zpracovávaných dat všechny informace jsou uloženy ve struktuře – PCB (vytváří se současně se vznikem procesu) Operační systémy 2015/2016

I/O status information Accounting information Zjednodušený Process Control Block PCB (execution context) - datová struktura vytvářená a řízená prostřednictvím OS, jedná se o klíčový moment v otázce podpory běhu více procesů Identifikátor – jedinečné označení procesu, odlišné od všech jiných Stav – označuje stav procesu z množiny stavového diagramu Priorita – je zde poznamenána úroveň priority procesu Čítač instrukcí – ukazuje na další instrukci při provádění procesu Paměťové ukazatele – obsahují údaje o umístění kódu procesu, datech a sdílených oblastech s jinými procesy Související data – obsah registrů během provádění procesu Stav V/V – obsahuje nevyřízené V/V požadavky procesu, sdružená zařízení s procesem, seznam souborů souvisejících s procesem, ... Účtovací informace – mohou obsahovat údaje o spotřebovaném procesorovém čase, časové limity, ... Identifier State Priority Program counter Memory pointers Context data I/O status information Accounting information . . . Operační systémy 2015/2016

Typické komponenty PCB Process Identification – obsahuje identifikátory (procesu, rodiče, uživatele) Process State Information – registry viditelné uživatelem (pouze některé), řídící a stavové registry (program counter, condition codes (výsledky logických a aritmetických operací)), ukazatele zásobníků Process Control Information – plánovací informace (stav, priorita, ...), ukazatele na spolupracující datové struktury, meziprocesová komunikace (příznaky, signály, zprávy, ...), informace o MMU, informace o vlastnění zdrojů, informace o využití procesoru Operační systémy 2015/2016

Vytváření procesu přiřazení jedinečného identifikátoru alokování paměti pro zásobník, image procesu, program a data, hodnoty mohou být implicitní nebo explicitní inicializace PCB nastavení příslušných vazeb (různé fronty dle plánování, ...) vytváření všech potřebných datových struktur existence PCB je klíčovým nástrojem k podpoře multiprocesingu při přerušení procesu (v preemptivním prostředí kdykoliv) dochází k uložení všech údajů spojených s procesem (datový kontext, běhový kontext), je provedena změna ve stavu procesu a může být prováděn další proces s fronty připravených procesů důvody pro vytvoření procesu: spuštění nového programu (příkaz, dávka, ...), přihlášení uživatele, operační systém potřebuje provést nějakou službu ve prospěch uživatele nebo jiného procesu, při běhu programu se objeví potřeba paralelismu nebo modularity (spawn) Operační systémy 2015/2016

Trasování procesů Dispatcher Process A Process B Process C Main memory 100 Dispatcher Program counter 5000 Process A 8000 8000 Process B 5000 5001 5002 5003 5004 5005 5006 5007 5008 5009 5010 5011 8000 8001 8002 8003 12000 12001 12002 12003 12004 12005 12006 12007 12008 12009 12010 12011 Trace of Process A Trace of Process B Trace of Process C 12000 Process C 5000 – Starting address of program of Process A 8000 – Starting address of program of Process B 12000 – Starting address of program of Process C Operační systémy 2015/2016

Dvoustavový diagram procesů 5000 5001 5002 5003 5004 5005 100 101 102 103 104 105 8000 8001 8002 8003 12000 12001 12002 12003 12004 12005 100 101 102 103 104 105 5006 5007 5008 5009 5010 5011 12006 12007 12008 12009 12010 12011 Timeout Dispatch Timeout Enter Not running Running Exit Pause Timeout I/O request Enter Queue Exit Dispatch Processor Pause Timeout Operační systémy 2015/2016

Stavy procesů při trasování Process A Process B Process C Dispatcher 10 5 15 20 25 30 35 40 45 50 Running Ready Blocked Operační systémy 2015/2016

Vytvoření, přerušení a přeplánování procesu život procesu je ohraničen jeho vytvořením a přerušením (ukončením) v dávkovém prostředí – proces je vytvořen na požadavek jobu v interaktivním prostředí – reakce na přihlášení nového uživatele, v obou případech je vytvořen nový proces proces může být vytvořen i prostřednictvím běžící aplikace (požadavek na tisk, …) na přání procesu – process spawning parents process, child process komunikace a spolupráce spawn procesů při přerušení procesu je aktuální obsah programového čítače a registrů procesoru (datový kontext) přenesen do příslušné datové oblasti korespondující s PCB a stav procesu je označen jinou hodnotou, přepnutí kontextu Operační systémy 2015/2016

Důvody pro vytvoření procesu Způsob přerušení - ukončení Popis Normální Vše je hotovo Překročení časového limitu Proces trvá déle, než je pro něj určeno Nedostupná paměť Proces požaduje více paměti než má OS Porušení hranic Proces požaduje přístup do zakázané oblasti paměti Chyba ochrany Proces chce použít prostředek, který není k tomu určený (soubor, …) Chyba aritmetiky Došlo k aritmetické chybě (dělení nulou, snaha o uložení většího čísla, …) Překročení času čekání Proces čeká na událost déle, než je určeno Chyba I/O Chyba při komunikaci s periferií Špatná instrukce Pokus o provedení neexistující instrukce (skok do datové oblasti, …) Privilegovaná instrukce Proces zkouší instrukci určenou pro privilegovaný režim Intervence operátora nebo OS Ukončení procesu ze strany OS nebo operátora Požadavek od rodiče Požadavek může ukončit všechny vlastní potomky Operační systémy 2015/2016

Typical Process Implementation Main memory Processor registers i Process index Process list i j PC Base b Limit h Context Process A Data . Program Other registers b Process B Context h Data Program Operační systémy 2015/2016

process switching functions process switching functions Vztah mezi operačním systémem a procesy P1 P2 P3 Pn . . . - tradiční přístup, běžný pro starší OS, kernel běží vně všech procesů, procesy jsou přerušovány pomocí supervissor call, kontext procesu je uložen, kernel má vlastní paměť a zásobník, po provedení požadované funkce se provede návrat k procesu kernel P1 P2 P3 Pn funkce OS . . . - způsob běžný pro PC a workstations, funkce OS se provádí v kontextu procesů, OS je kolekcí rutin prováděných v rámci uživatelských procesů, každý image procesu obsahuje i program, data a zásobník kernelu OS1 OS2 OS3 OSn process switching functions P1 P2 P3 Pn . . . - OS je implementován jako kolekce systémových procesů, většina kernelových funkcí je organizována v samostatných procesech process switching functions Operační systémy 2015/2016

OS je prováděn během procesu Process identification PCB Process state information Process control information běžné pro OS na PC a workstations, SW OS probíhá v kontextu uživatelského procesu každý image procesu obsahuje i program, data a zásobník kernelu User stack Private user address space (program, data) Kernel stack sdílení všemi procesy Shared address space Operační systémy 2015/2016

Uživatelské procesy v paměti Process identification Process identification Process identification Process state information Process state information Process state information Process control information Process control information Process control information process image User stack User stack . . . User stack Private user address space (programs, data) Private user address space (programs, data) Private user address space (programs, data) Shared address space Shared address space Shared address space Process 1 Process 2 Process n Operační systémy 2015/2016

Struktura seznamů procesů Running PCB Ready Blocked PCB PCB PCB PCB PCB PCB PCB PCB Operační systémy 2015/2016

I/O operace je dokončena Stavy procesu - probíhající: je přidělen procesor - čekající: čekání na určitou událost - připraven: čeká na přidělení procesoru - předán: očekává se reakce OS na předání úlohy připraven probíhající čekající předán přijat dokončen Procesu je přiřazen procesor Čekání na dokončení I/O operace I/O operace je dokončena - přijat: úloha převedena do vnitřního tvaru, procesům nejsou přiděleny žádné prostředky - dokončen: prostředky jsou volné Operační systémy 2015/2016

Pětistavový model procesu New Ready Running Blocked Exit Dispatch Timeout Přijmout Očekávaná událost Událost nastala Uvolnit předpokládejme přítomnost jednoho procesoru New – vytvořený proces, který ještě nebyl přijat operačním systémem, už má vytvořený PCB Ready – čeká na svoji příležitost (modifikováno politikou přidělování) Running – právě zpracovávaný proces, může být pouze jeden Exit – proces uvolnil veškeré přidělené prostředky, ukončen, zrušen Blocked – odložený proces z důvodu očekávání události (prostředek, zpráva, ...) Operační systémy 2015/2016

Jeden stav suspend Dispatch New Admit Ready Running Release Exit Timeout Activate Event occurs Event wait Ready – proces je v paměti a je připraven k provedení Blocked – proces je v paměti a očekává nějakou událost Suspend – proces je na disku a čeká na uvolnění místa v paměti Suspend Blocked Suspend Operační systémy 2015/2016

Dva stavy suspend Ready / Suspend Dispatch Release Timeout Activate Event occurs Event wait Ready Running Exit Blocked / Blocked New Admit Operační systémy 2015/2016

Přechody mezi stavy procesu Blocked -> Blocked/Suspend: málo místa v paměti, možnost vzniku nových procesů Blocked/Suspend -> Ready/Suspend: pokud nastala událost, na kterou proces musel čekat Ready/Suspend -> Ready: pokud není v paměti žádný proces schopný svého provedení, záleží na prioritě procesů Ready -> Ready/Suspend: používá se v případě potřeby získat hodně místa v paměti, někdy si pro suspendování může OS vybrat ready proces s nízkou prioritou místo blokovaného procesu s prioritou vysokou - nově vzniklý proces někdy nemusí mít vytvořeny všechny podmínky pro svůj běh Operační systémy 2015/2016