Operační systémy. Přednášky pro výuku předmětu. I ng. Antonín Vaněk, CSc. DFJP, Univerzita Pardubice září 2003



Podobné dokumenty
OS MP, RT a vestavěné systémy

OPS Paralelní systémy, seznam pojmů, klasifikace

ÚVOD DO OPERAČNÍCH SYSTÉMŮ

Architektura a koncepce OS OS a HW (archos_hw) Architektura a koncepce OS Jádro OS (archos_kernel) Architektura a koncepce OS Typy OS (archos_typy)

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Procesy a vlákna (Processes and Threads)

Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací.

Systémy pro sběr a přenos dat

Řízení IO přenosů DMA řadičem

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Přidělování CPU Mgr. Josef Horálek

Programování systémů reálného času A3M35PSR, A4B35PSR

PB002 Základy informačních technologií

Pokročilé architektury počítačů

PROGRAMOVÁNÍ ŘÍDÍCÍCH SYSTÉMŮ

Přednáška 1. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Disková pole (RAID) 1

3. Počítačové systémy

Vrstvy programového vybavení Klasifikace Systémové prostředky, ostatní SW Pořizování Využití

AKTIVNÍ RFID SYSTÉMY. Ing. Václav Kolčava vedoucí vývoje HW COMINFO a.s.

Operační systémy pro systémy sběru dat (=DAQ systems). Vývoj aplikačních programů. Operační systémy pro DAQ RTOS VxWorks Windows CE RTX LabVIEW RT

Disková pole (RAID) 1

Počítač jako prostředek řízení. Struktura a organizace počítače

Real Time programování v LabView. Ing. Martin Bušek, Ph.D.

Architektura rodiny operačních systémů Windows NT Mgr. Josef Horálek

Principy operačních systémů. Lekce 5: Multiprogramming a multitasking, vlákna

VÝUKOVÝ MATERIÁL. 3. ročník učebního oboru Elektrikář Přílohy. bez příloh. Identifikační údaje školy

Paralelní programování

Windows a real-time. Windows Embedded

Topologická struktura měřicích systémů

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

Služba ve Windows. Služba (service) je program

Základy informatiky. 2. Přednáška HW. Lenka Carr Motyčková. February 22, 2011 Základy informatiky 2

OS Plánování procesů

Operační systémy. Přednáška 1: Úvod

Management procesu I Mgr. Josef Horálek

Systém adresace paměti

PRINCIPY OPERAČNÍCH SYSTÉMŮ

Přerušovací systém s prioritním řetězem

Architektura počítače

Počítač jako elektronické, Číslicové zařízení

Principy operačních systémů. Lekce 1: Úvod

NSWI /2011 ZS. Principy cpypočítačůčů aoperačních systémů ARCHITEKTURA

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 TECHNICKÉ VYBAVENÍ POČÍTAČŮ

Server je v informatice obecné označení pro počítač, který poskytuje nějaké služby nebo počítačový program, který tyto služby realizuje.

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Datasheet SanDisk Řada PCIe-SSD Fusion iomemory PX600 Server

VYSOKÁ ŠKOLA BÁŇSKÁ TECHNICKÁ UNIVERZITA OSTRAVA FAKULTA STROJNÍ DATABÁZOVÉ SYSTÉMY ARCHITEKTURA DATABÁZOVÝCH SYSTÉMŮ. Ing. Lukáš OTTE, Ph.D.

Profilová část maturitní zkoušky 2014/2015

Operační systémy. Jednoduché stránkování. Virtuální paměť. Příklad: jednoduché stránkování. Virtuální paměť se stránkování. Memory Management Unit

Von Neumannovo schéma

MS WINDOWS II. Jádro. Správa objektů. Správa procesů. Zabezpečení. Správa paměti

PB153 Operační systémy a jejich rozhraní

Principy operačních systémů. Lekce 4: Správa procesů

Disková pole (RAID) 1

09. Memory management. ZOS 2006, L.Pešička

Základy logického řízení

Management sítí OSI management framework SNMP Komerční diagnostické nástroje Opensource diagnostické nástroje

Paralelní systémy. SIMD jeden tok instrukcí + více toků dat jedním programem je zpracováváno více různých souborů dat

ŘPS Průmyslový Ethernet

Systém řízení sběrnice

Paměťový podsystém počítače

Principy operačních systémů. Lekce 8: Ovladače periferií

INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE

Přednášky o výpočetní technice. Hardware teoreticky. Adam Dominec 2010

SMART GRID SYSTEM TECHNOLOGIE PRO ANALYTIKU A SPRÁVU ENERGETICKÝCH SÍTÍ. Představení společnosti Analyzátor sítě

Hardware - komponenty počítačů Von Neumannova koncepce počítače. Von Neumannova koncepce počítače

Úloha OS, prostředky počítače, představa virtuálního počítače

Přenos signálů, výstupy snímačů

Přidělování paměti II Mgr. Josef Horálek

Automatická regulace spojité řízení (P, PI, PD, PID), nespojité řízení, fuzzy řízení,

Přehled paralelních architektur. Dělení paralelních architektur Flynnova taxonomie Komunikační modely paralelních architektur

Integrovaná střední škola, Sokolnice 496

PB153 Operační systémy a jejich rozhraní

Koncepce DMA POT POT. Při vstupu nebo výstupu dat se opakují jednoduché činnosti. Jednotlivé kroky lze realizovat pomocí speciálního HW.

Procesy a vlákna - synchronizace

Přednáška. Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Paralelní architektury se sdílenou pamětí typu NUMA. NUMA architektury

Ústav automatizace a měřicí techniky.

Optimalizaci aplikací. Ing. Martin Pavlica

Výpočetní technika. PRACOVNÍ LIST č. 7. Ing. Luděk Richter

Metody připojování periferií

Pohled do nitra mikroprocesoru Josef Horálek

1 Osobní počítač Obecně o počítačích Technické a programové vybavení... 4

Zpracování obrazu v FPGA. Leoš Maršálek ATEsystem s.r.o.

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Architektura Intel Atom

Princip funkce počítače

Témata profilové maturitní zkoušky

Roman Výtisk, VYT027

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

4. Úvod do paralelismu, metody paralelizace

Přednáška. Správa paměti II. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Distribuovaný systém je takový systém propojení množiny nezávislých počítačů, který poskytuje uživateli dojem jednotného systému.

2.9 Vnitřní paměti. Střední průmyslová škola strojnická Vsetín. Ing. Martin Baričák. Název šablony Název DUMu. Předmět Druh učebního materiálu

DOPRAVA V POHYBU PRODUKT KERBERUS

Operační systémy. Přednáška 3: Plánování procesů a vláken

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Základní principy konstrukce systémové sběrnice - shrnutí. Shrnout základní principy konstrukce a fungování systémových sběrnic.

Transkript:

Operační systémy Přednášky pro výuku předmětu Operační systémy I ng. Antonín Vaněk, CSc. DFJP, Univerzita Pardubice září 2003

Kapitola 11 OS pro MP, RT a vestavěné systémy

Multiprocesorové systémy

Kategorie počítačových systémů SI SD Single I nstruction Single Data jeden procesor zpracovává jednu množinu dat jedním proudem instrukcí SI MD Single I nstruction Multiple Data jedním proudem instrukcí se ve více procesorech zpracovává více různých množin dat každá instrukce programu se provede současně v n procesorech, přičemž v každém procesoru se zpracovává jiná množina dat

Kategorie počítačových systémů MI SD Multiple I nstruction Single Data jedna množina dat je předána více procesorům, z nichž každý provádí jinou posloupnost instrukcí nebylo nikdy realizováno MI MD Multiple I nstruction Multiple Data kombinace procesorů, které souběžně zpracovávají odlišnými posloupnostmi instrukcí odlišné množiny dat

Klasifikace MP systémů podle stupně vazby MP systém s volnou vazbou (Loosely coupled) každý procesor má vlastní operační pamět' a I / O subsystém různé typy vazby Common Bus (společná sběrnice, např. VME) Common Disk (společné disky) Common Nothing (vazba LAN) MP systém s těsnou vazbou (Tightly coupled) procesory sdílejí operační pamět' řízen jedním operačním systémem

Klasifikace MP systémů podle symetrie symetrický MP systém (SMP) procesory jsou shodné jádro OS může provádět kterýkoliv procesor spustitelné procesy či vlákna lze provádět v kterémkoliv volném procesoru asymetrický MP systém procesory jsou funkčně specializované např. I/O procesory systém je řízen centrálním procesorem

Příklad SMP systému procesor procesor procesor procesor cache cache cache cache operační paměť I/O subsystém

Granularita úlohy každou úlohu můžeme rozčlenit na úseky, které lze provést samostatně takové úseky lze v MP systému provádět paralelně na různých procesorech pokud jeden úsek potřebuje pro svoji činnost výsledky jiného, musí na tyto výsledky čekat je nutná komunikace a synchronizace různé typy úloh se liší velikostí a počtem takových úseků

Granularita a stupeň vazby čím jemněji granulovaná úloha, tím jsou úseky kratší a požadavky na komunikaci a synchronizaci častější hrubě granulovanou úlohu lze naprogramovat jako kooperující procesy pro jemně granulovanou úlohu jsou vhodnější vlákna čím je vazba MP systému volnější, tím větší časové ztráty přináší komunikace a synchronizace pro hrubě granulované úlohy postačí MP systém s volnou vazbou, který je obvykle levnější pro jemně granulované úlohy je nutné použít MP systém s těsnou vazbou, jinak by paralelní řešení bylo neefektivní

Nezávislý paralelismus v jednotlivých procesorech běží nezávislé procesy nevyžaduje synchronizaci zkrácení střední doby odezvy pro uživatele

Velmi hrubý paralelismus distribuované zpracování rozptýlené do více uzlů sítě, představujících jedno výpočetní prostředí počítačové shluky ( clusters) vhodný, když interakce mezi procesy nejsou příliš časté přenos zpráv sítí zpomalí komunikaci

Hrubý paralelismus jako provádění více procesů na jednom procesoru ( multiprocesing), ale rozložené na víc procesorů

Střední paralelismus paralelní zpracování nebo multitasking v rámci jedné aplikace jedna aplikace je tvořena více vlákny interakce mezi vlákny jsou obvykle časté

Plánování procesů pro všechny procesy jedna (globální) fronta nebo pro každou prioritu samostatná fronta všechny fronty plní společnou zásobárnu ( pool) procesorů procesu se přiřadí první volný procesor Složitější plánovací algoritmy se při použití více procesorů obvykle nepoužívají

Vlákna provádějí se samostatně od zbytku procesu aplikace může být vytvořena jako skupina spolupracujících vláken, běžících konkurenčně v jednom adresním prostoru vlákna běžící na oddělených procesorech přinášejí výrazné zvýšení výkonnosti

Plánování vláken v MP Sdílení zátěže (Load Sharing) žádný proces není přiřazen k určitému procesoru Skupinové plánování (Gang scheduling) související vlákna jsou plánována tak, aby běžela na různých procesorech současně Pevné přiřazení procesoru ( Dedicated processor assignment) vlákna jsou přiřazena specifickému procesoru Dynamické plánování (Dynamic scheduling) počet vláken se může během provádění měnit

Sdílení zátěže zátěž se rozděluje mezi procesory náhodně zajišt'uje, aby žádný procesor nezůstal nevyužitý není potřebný centralizovaný plánovač používá globální fronty

Nevýhody sdílení zátěže globální fronta vyžaduje výlučný přístup představuje úzký profil, jestliže o přidělení práce žádá více procesorů najednou je nepravděpodobné, že přerušené vlákno bude znovu spuštěno ve stejném procesoru snižuje se efektivita použití cache jestliže v globální frontě čekají všechna vlákna, nebudou všem vláknům jednoho procesu přiděleny procesory ve stejnou dobu

Skupinové plánování všem vláknům tvořícím jeden proces (Thread Gang) se přidělují procesory současně užitečné pro aplikace, jejichž výkonnost by výrazně poklesla, kdyby některá část aplikace neběžela vlákna obvykle vyžadují vzájemnou synchronizaci

Pevné přiřazení procesoru když se plánuje spuštění aplikace, jsou všem jejím vláknům napevno přiřazeny procesory některé procesory mohou zůstat nevyužity brání přepínání procesů

Dynamické plánování počet vláken v procesu se v aplikaci může dynamicky měnit operační systém upravuje zátěž s cílem zlepšit využití systému obsazuje volné procesory nově příchozím může být přiřazen procesor obsazený úlohou, která právě používá více než jeden procesor požadavek trvá, dokud není k dispozici volný procesor nově příchozí dostanou procesor ještě před existujícími běžícími aplikacemi

Systémy pracující v reálném čase

Reálný čas a počítač úlohy a procesy v počítači mohou být reakcí na události v okolí systému nebo mají takové události vyvolat události v okolí systému probíhají v reálném čase počítač nemá na tok času vliv... a procesy s nimi musí držet krok musí např. dokázat řídit chemickou reakci tak, aby nedošlo k jejímu nechtěnému zastavení nebo naopak k explozi

Reálný čas a počítač Správná funkce systému nezávisí pouze na formální správnosti výpočtů, ale také na tom, kdy jsou výsledky k dispozici! opožděně získané výsledky pro nás ztrácejí význam... výsledky výpočtů ztrácejí aktuálnost...... opoždění výsledku nás může i ohrozit!

Systémy pracující v reálném čase RT ( Real-Time) Systems pojem obvykle používáme pro oblast technických kybernetických systémů výstupy mohou být závislé na aktuálních hodnotách vstupů ( kombinační automat) aktuálních hodnotách a historii vstupů ( sekvenční automat, systém s pamětí) oba typy lze realizovat bez počítače, ale druhý typ se dnes obvykle realizuje pomocí počítače systémy s pamětí mohou být samoučící mohou měnit pravidla chování na základě získaných zkušeností

Systémy pracující v reálném čase příklady: řízení výrobních procesů řízení letového provozu telekomunikační systémy robotika řízení laboratorních experimentů...

Specifické požadavky zpracování dat ve stanoveném časovém limitu systém pracuje v reálném čase zpoždění přenosu může způsobit nestabilitu nebo nefunkčnost systému minimalizace rizika selhání systému v oblastech, kde selhání ohrožuje lidské životy, musí systém vyhovovat zvláštním předpisům ( homologace, dependabilita) konstrukční a signálová unifikace umožňuje v systému kombinovat produkty různých firem snižuje vývojové, výrobní i provozní náklady

Minimalizace rizika selhání systému vysoce spolehlivý a odolný hardware redundance prvků a subsystémů (HW i SW) redundantní subsystémy redundantní komunikační cesty záložní řídící prvky nebo distribuované řízení týká se OS! řízená výkonová degradace systému v případě poruchy při snížení výkonnosti v důsledku poruchy plní systém pouze úlohy kritické pro misi ( mission- critical)

RTOS Real Time Operating System operační systém pro počítače pracující v reálném čase RTOS je charakterizován deterministickým chováním krátkou dobou odezvy vysokou spolehlivostí

Charakteristiky RTOS Deterministické chování operace se provádějí v pevných, předem určených časech nebo v předem určených časových intervalech u každé operace je předem známo, kdy nejpozději skončí

Charakteristiky RTOS Doba odezvy čas, ve kterém musí systém přiměřeně reagovat na událost časové měřítko je relativní... někdy může být sekunda příliš dlouhý čas, jindy na nějaké té sekundě nezáleží závisí na aplikační oblasti stovky mikrosekund např. řízení reaktoru... až desítky sekund např. systém pro rezervaci letenek

Charakteristiky RTOS Doba odezvy exaktně: za jak dlouho operační systém reaguje na požadavek přerušení tento čas nesmí překročit předem stanovenou hodnotu skládá se z doby latence (interrupt latence) doba mezi okamžikem příchodu požadavku na přerušení a okamžikem, kdy se začne provádět odpovídající obslužný program a doby obsluhy přerušení (interrupt processing) doba potřebná k vlastnímu zpracování přerušení

Charakteristiky RTOS Spolehlivost mission critical system systém, jehož porucha může mít katastrofální důsledky dependable system systém natolik spolehlivý a bezpečný, že na něm můžeme být zcela závislí FT (fault tolerant) system systém odolný proti poruchám porucha může snížit výkonnost systému, ale nesmí ho vyřadit z funkce přednost mají úlohy kritické pro funkci systému, úlohy s nižší prioritou se provádějí, jen když na ně zbývá čas

Typické vlastnosti RTOS rychlé přepínání kontextu např. pro každou přerušovací úroveň samostatná sada registrů aby se při přerušení nemusely ukládat registry preemptivní plánování založené na prioritách preempce umožňuje systému rychlou reakci na přerušení multitasking s komunikací procesů semafory, signály, mailboxy,...

Prioritní plánování s preempcí RQ0 plánování procesor ukončení zahájení RQ1 RQn priorita pokud je priorita požadavku vyšší než priorita právě prováděného procesu, je tento proces přerušen preempce blokované procesy událost nastala čekání na událost... a je zařazen zpět do fronty připravených procesů s odpovídající prioritou

Typické vlastnosti RTOS Specifické požadavky na procesy některé procesy musí být trvale v operační paměti jejich odložení na disk by způsobilo nepřípustné prodloužení doby odezvy práva a priority procesů závisí na úlohách, které plní procesy důležité pro správné chování a bezpečnost systému musí mít přednost minimalizace intervalů, ve kterých je zakázáno přerušení např. pro řešení kritických oblastí se nepoužívá zablokování přerušení

Typické vlastnosti RTOS rychlý souborový systém musí umožňovat rychlé čtení a ukládání dat rychlá komunikace procesů spolupracující procesy musí být schopny rychle komunikovat a vzájemně se synchronizovat speciální systémové služby alarmy, timeouty malé rozměry OS obsahuje jen nejnutnější prvky

Plánování v reálném čase statické (table-driven) tabulkami je přesně stanoveno, kdy která úloha má být spuštěna preemptivní se statickými prioritami klasický prioritně ovládaný plánovač dynamické (planning-based, best effort)

Termínové plánování (Deadline Scheduling) pro aplikace reálného času není důležitá rychlost, ale provedení úlohy ve stanoveném čase ke spuštění lze vybrat úlohu s nejbližším požadovaným časem zahájení ( deadline) minimalizuje se podíl úloh, které nejsou dokončeny v požadovaném termínu bere v úvahu nové úlohy a čas potřebný pro již rozpracované úlohy

Plánování RT úloh 0 10 20 30 40 50 60 70 80 90 100 110 120 Arrival times A B C D E Requirements Starting deadline B C E D A Arrival times A B C D E First-come first-served (FCFS) Service Starting deadline A C D B (missed) C E (missed) D A

Plánování RT úloh 0 10 20 30 40 50 60 70 80 90 100 110 120 Arrival times A B C D E Requirements Starting deadline B C E D A Arrival times A B C D E Earliest deadline Service A C E D Starting deadline B (missed) C E D A

Plánování RT úloh 0 10 20 30 40 50 60 70 80 90 100 110 120 Arrival times A B C D E Requirements Starting deadline B C E D A Earliest deadline with unforced idle times Arrival times Service Starting deadline A B B C D E B C E D A C E D A

Vestavěné systémy

Vestavěné systémy Embedded Systems počítačové systémy, které jsou součástí jiných ( obvykle technických) systémů obvykle představují jejich řídicí složku...... nebo tvoří jejich podsystémy schopnost práce v reálném čase OS transparentní pro uživatele jeho činnost se uživateli jeví jako funkce podsystému nebo aplikace nevyžaduje zvláštní údržbu nevyžaduje zvláštní znalosti

Vestavěné systémy

Podíl na trhu ročně se prodají asi 3 miliardy mikroprocesorů a mikropočítačů z toho jdou jen necelá 2 % do sektoru klasické výpočetní techniky osobní počítače, servery,... přes 98 % jde do sektoru vestavěných systémů

Nosné aplikační oblasti Specializované počítače funkce podobná jako běžné počítače, ale ve specifickém provedení video-hry, přenosné počítače,... Řídicí systémy zpětnovazební regulace v reálném čase dopravní prostředky, technologické procesy, jaderné reaktory,... Zpracování signálu zpracování souvislých proudů dat v reálném čase radar, sonar, video,... Telekomunikace a sítě přepínání a směrování přenosu dat pevné a mobilní telefonní sítě, I nternet,...

Podíl aplikací na trhu Comunications /Telecomunications /Networking 21 % Industrial Control 15 % Computers / PeripheralsOffice Automation 13 % Government / MilitaryElectronics 11 % Other 10 % Electronic Instruments /ATE / Design &Test Equipment 7 % Aerospace / SpaceElectronics 6 % Medical ElectronicEquipment 6 % Consumer Electronics /Entertiment / Multimedia 6 % Automotive / TransportationSystems & Equipment 5 %

Přínos pro uživatele obvykle modernizace mechanického nebo elektromechanického systému snížená cena zlepšená funkce zvýšený výkon zvýšená spolehlivost pokud je systém správně navržen a dobře otestován

Typické funkce Řídicí algoritmy PI D regulace, fuzzy logika, sekvenční logika automaty, přepínání režimů řízení,... Zpracování signálů komprese multimediálních dat, digitální filtrace,... aplikačně-specifická rozhraní tlačítka, akustická a světelná signalizace, rychlé vstupy a výstupy reakce na chyby detekce a rekonfigurace, diagnostika,...

Systém z hlediska návrháře vestavěného počítačového systému

Systém z hlediska návrháře celého sytému

Typické požadavky reaktivita výpočty probíhají jako odezva na externí události periodické rotační stroje, zpětnovazební řídicí smyčky,... aperiodické tlačítka,...

Typické požadavky funkce v reálném čase správnost je částečně funkcí času Hard real- time existují absolutní časové limity, při jejichž překročení je odezva zcela bezcenná Soft real- time časové limity jsou pouze přibližné, jejich překročení pouze sníží použitelnost odezvy obecně neplatí, že v reálném čase znamená velmi rychle

Typické požadavky malé rozměry a váha přenosná elektronika dopravní prostředky přebytek váhy znamená vyšší provozní náklady malá spotřeba bateriové napájení omezená možnost chlazení odolnost horko, mráz, vibrace, nárazy kolísání napájení, rušení, blesky vlhkost a zkrápění vodou, koroze nesprávné zacházení

Typické požadavky spolehlivost a bezpečnost musí fungovat správně...... ale hlavně nesmí fungovat nepřijatelně! správný, bezpečný nesprávný, bezpečný správný, nebezpečný nesprávný, nebezpečný extrémní cenová citlivost snížení ceny o 5 Kč může znamenat zvýšení prodeje o miliony kusů