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

Slides:



Advertisements
Podobné prezentace
™. ™ Zprovoznění zařízení a zahájení jejich řízení během několika minut.
Advertisements

D03 - ORiNOCO RG-based Wireless LANs - Technology
Operační systémy. OPERAČNÍ SYSTÉMY pomoc operátorovi, podpora vlastností reálného času, víceuživatelských a více úlohových systémů.
Operační systém Adam Greguš, 4.A.
Přínosy a druhy počítačových sítí. Jednou z nejvýznamnějších technologií používaných v oblasti výpočetních systémů jsou již řadu let počítačové sítě.
Kontakty Webpage přednášky: – Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické.
State. State – kontext a problém Kontext  chování objektu má záviset na jeho stavu, který se typicky mění za běhu Neflexibilní řešení  metody obsahují.
13AMP 6. přednáška Ing. Martin Molhanec, CSc.. Co jsme se naučili naposled Synchronizace procesů Synchronizace procesů Producent-Konzument Producent-Konzument.
Maturitní okruh č. 7. Odstínit aplikace od specifik HWSpráva procesůSpráva pamětiSpráva souborůSpráva vstupů a výstupůSpráva sítěSystém ochrany a bezpečnostiSystém.
Štěpán Lískovec, 4.A.  =základní programové vybavení počítače (tj.software)  hlavní úkol:  A, zajistit uživateli možnost ovládat PC  B, vytvořit pro.
Operační systémy Přednášky pro výuku předmětu Operační systémy Ing. Antonín Vaněk, CSc. DFJP, Univerzita Pardubice září 2003.
Operační systémy.
Operační systémy.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Migrace kódu a procesů Přednášky z distribuovaných systémů Ing. Jiří Ledvina, CSc.
Operační systém (OS) ICT Informační a komunikační technologie.
13AMP 2. přednáška Ing. Martin Molhanec, CSc.. Stav procesu (kontext) Stav procesu je úplná informace, kterou je nutné uschovat při přerušení procesu,
Správa procesů.
Gymnázium, SOŠ a VOŠ Ledeč nad Sázavou I NFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE Ing. Jan Roubíček.
13AMP 3. přednáška Ing. Martin Molhanec, CSc.. Co jsme se naučili naposled I. Co je to kontext úlohy Co je to kontext úlohy Task switching (přepnutí úlohy)
Operační systémy Přednášky pro výuku předmětu Operační systémy Ing. Antonín Vaněk, CSc. DFJP, Univerzita Pardubice září 2003.
Stránkový editor vi Makra Pro často používané sekvence příkazů lze použít makra. :map makro sekvence_prikazu :unmap makro Zkratky :ab zkratka plny_tvar.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Operační systémy Mgr. Ludmila Faltýnková EU OPVK ICT2-4/Inf12 Základní škola Olomouc, Heyrovského 33 Určeno pouze pro výuku Žádná část ani celek nesmí.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Správa procesů.
3. konzultace (5 hodin) Studijní materiály najdete na adrese:
Vnitřní (operační paměť)
Operační systémy Název a adresa školy
Co je to OS Správce prostředků –spravuje a přiděluje systémové zdroje systému úlohám, stará se o jejich efektivní sdílení procesoru (ů) operační paměti.
Výrok „Vypadá to, že jsme narazili na hranici toho, čeho je možné dosáhnout s počítačovými technologiemi. Člověk by si ale měl dávat pozor na takováto.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
1/28 PB153 OPERAČNÍ SYSTÉMY A JEJICH ROZHRANÍ Vlákna 06.
OPERAČNÍ SYSTÉMY.
Úvod do UNIXu (5th round)
Mikroprocesor.
PB153 OPERAČNÍ SYSTÉMY A JEJICH ROZHRANÍ
Operační systémy. Výpočetní systém Stroj na zpracování dat vykonávající samočinně předem zadané operace.
Základy operačních systémů
Operační systémy LS 2014/ přednáška 16. března 2015.
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.
ÚVOD DO PŘEDMĚTU INFORMAČNÍ TECHNOLOGIE. OPERAČNÍ SYSTÉM Je v informatice základní programové vybavení počítače (tj. software), které je zavedeno do paměti.
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.
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.
VIRTUÁLNÍ PAMĚŤ EP1. Kryštof Supek. Umožňuje předložit běžícímu procesu adresní prostor paměti, který je větší, než je fyzicky připojená paměť RAM Procesor.
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.
Operační systém (OS) Základní funkce operačního systému: – Zajištění komunikace s okolím. – Řízení a zpracování programů. – Údržba informací na externích.
Operační systémy 2015/ přednáška 21. března 2016.
Stránkování MATĚJ JURIČIČ 2015/2016 EP1 SPŠ A VOŠ JANA PALACHA KLADNO.
Vypracoval / Roman Málek
Služby Windows 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: 
Operační Systém Operační systém je v informatice základní programové vybavení počítače (tj. software), které je zavedeno do paměti počítače při jeho.
Vlastnosti souborů Jaroslava Černá.
Operační systémy - úvod
Distribuovaný operační systém pro mikroprocesory
Soubor Soubor v informatice označuje pojmenovanou sadu dat uloženou na nějakém datovém médiu, se kterou lze pracovat nástroji operačního systému jako.
Operační systémy 9. Spolupráce mezi procesy
Úvod do UNIXu (5th round)
Správa paměti.
1. ročník oboru Mechanik opravář motorových vozidel
PB 169 Počítačové sítě a operační systémy
Segmentace 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: 
přerušení (instrukční cyklus, obsluha) vztahy mezi tématy
Práce s procesy Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí Autor:
TELNET, FTP.
Operační systémy.
Přepíná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: 
Paměť.
Správa procesů.
Přednášky z Distribuovaných systémů
Transkript prezentace:

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

Kapitola 4 a) Provádění OS b) Mikrojádro

Provádění OS

OS jako program  až dosud jsme mlčky předpokládali, že procesy jsou uživatelské  jestliže je OS program,  můžeme také běžící OS považovat za process?  pokud ano, jak je tento proces řízen?  odpověď závisí na koncepci OS

Provádění OS (1)  bezprocesové (monolitické) jádro  software OS má podobu jednolitého programu  kód OS se provádí jako samostatná entita v privilegovaném modu procesoru  procesově orientované jádro  software OS má formu procesů  když proces provádí kód OS, běží procesor v privilegovaném modu

Provádění OS (2)  mikrojádro  většina funkcí jádra je realizována jako samostatné procesy  činnost těchto procesů aktivuje a koordinuje mikrojádro, které obsahuje pouze několik základních funkcí

 zastaralá koncepce  koncept procesů se vztahuje pouze na programy uživatele  kód OS se provádí jako samostatná entita v privilegovaném modu procesoru  kód OS se nikdy neprovádí v procesu Bezprocesové jádro

OS prováděný v procesech (1)  téměř veškerý kód OS se provádí jako uživatelské procesy  při přerušení a systémovém volání procesor přejde do privilegovaného modu a provede OS proceduru v kontextu procesu uživatele (tzv. mode switch)  na funkce přepínání procesů (mimo procesy) řízení přechází pouze pokud to je nezbytné

 kód a data OS jsou ve sdíleném paměťovém prostoru a jsou sdíleny všemi uživatelskými procesy  pro volání procedur v režimu jádra a návraty z nich se používá samostatný zásobník  v rámci uživatelského procesu se provádějí jak programy uživatele, tak programy OS OS prováděný v procesech (2) Shared Address Space Kernel Stack

Procesově orientovaný OS  OS je tvořen množinou systémových procesů  hlavní funkce jádra jsou samostatnými procesy  malé množství kódu OS (funkce přepínání procesů) (se provádí mimo procesy  velmi vhodné řešení pro multiprocesorové systémy

Stavy procesu v UNIXu SVR4  podobné dříve popsanému 7-stavovému modelu  2 stavy běhu: User a Kernel  přechody do ostatních stavů (blocked, ready) zajišťuje vždy jádro  stavy Sleeping (v paměti a odložený) odpovídají stavům BLOKOVANÝ u 7-stavového modelu  stav Preempted se liší od stavu Ready, ale oba používají jednu společnou frontu  k přechodu do stavu Preempted může dojít pouze když proces má přejít z modu jádra do uživatelského modu

Stavový diagram procesů OS UNIX return to user return preempt reschedule process sleep exit interrupt, interrupt return system call, interrupt wakeup swap out wakeup swap in swap out enough memory not enough memory (swapping system only) fork Zombie Kernel Running User Running Preempted Asleep in Memory Ready to Run in Memory Created Sleep, Swapped Ready to Run Swapped

Vytváření procesu v UNIXu  každý proces (kromě procesu 0) se vytváří systémovou funkcí fork()  fork() vytvoří položku v tabulce procesů a novému procesu-potomkovi přidělí unikátní identifikační číslo PID (Process IDentification)  potomek obdrží kopii obrazu (image) rodičovského procesu  fork() vrátí PID potomka rodičovskému procesu a nulu potomkovi po provedení funkce fork() dokonce provádějí oba procesy (rodič i potomek) tentýž kód!

Systémové procesy UNIXu  proces 0 vznikne nestandardně při spouštění systému (boot)  po vytvoření procesu 1 (proces INIT) převezme proces 0 funkci odkládání (swapper)  proces 1 provede inicializaci dle /etc/inittab a provede rc-skripty (konfigurace služeb)  Když se u terminálu přihlásí uživatel, proces 1 pro něj vytvoří nový proces (obvykle login shell), který pak je rodičem všech procesů tohoto uživatele

Obraz procesu v UNIXu (1)  User-level context  Process Text (tj. kód)  tuto oblast lze pouze číst (read-only)  Process Data  User Stack  zásobník pro volání a návraty v uživatelském modu  Shared memory  pro komunikaci procesů (IPC)  existuje pouze jedna fyzická kopie, ale díky možnostem virtuální paměti má každý proces tuto kopii dostupnou ve svém adresním prostoru  Register context

 System-level context  Process table entry  aktuální položka týkající se tohoto procesu v systémem udržované tabulce procesů  stav procesu, UID, PID, PPID, priorita, očekávané události, signály, ukazatele do paměti na kód (text), data...  U area (uživatelská oblast)  další informace o procesu potřebné pro jádro když provádí kontext tohoto procesu  efektivní UID, časovače, meze, používané soubory...  Kernel stack  zásobník pro volání a návraty v modu jádra  Per Process Region Table  tabulka pro řízení paměti (Memory Manager) Obraz procesu v UNIXu (2)

Mikrojádro

Typické funkce jádra OS (1)  správa procesů (Process Management)  vytváření a ukončování procesů  plánování a spouštění procesů  přepínání procesů  synchronizace procesů  podpora komunikace procesů  udržování řídících bloků procesů

Typické funkce jádra OS (2)  správa paměti (Memory Management)  přidělování adresového prostoru procesům  odkládání procesů na disk (Swapping)  správa paměťových stránek a segmentů  správa I/O (I/O Management)  ovládání vyrovnávacích paměti (Buffer Management)  přidělování I/O kanálů a zařízení procesům

 podpůrné funkce  obsluha přerušení  monitorování, dohled, účtování....  ostatní funkce OS je vhodnější zajistit samostatnými programy, spolupracujícími s jádrem Typické funkce jádra OS (3)

Mikrojádro  malé jádro OS, obsahující pouze základní funkce OS  které nelze přesunout mezi uživatelské procesy  u kterých by takový přesun výrazně zhoršil vlastnosti OS  ostatní funkce OS jsou řešeny jako externí subsystémy  ovladače zařízení (device drivers)  souborové systémy (file systems)  správa virtuální paměti (virtual memory manager)  bezpečnostní služby (security services)  další služby...

Výhody použití mikrojádra  jednotné rozhraní pro předávání požadavků procesem  všechny služby jsou poskytovány formou přenosu zpráv (message passing)  rozšiřitelnost  lze snadno přidávat nové služby  pružnost  lze snadno měnit stávající vlastnosti  přenositelnost  změny potřebné k přenesení systému na jinou platformu je nutné provést pouze v mikrojádře a ovladačích, zbytek OS je na platformě nezávislý

Výhody použití mikrojádra  spolehlivost  modulární stavba systému usnadňuje vývoj a testování  mikrojádro je menší a jednodušší než monolitický OS, takže ho lze mnohem snadněji otestovat  stavebnicovost  uživatel může zakoupit a použít pouze subsystémy, které potřebuje  výhodné zejména u vestavěných systémů  snadná realizace distribuovaných systémů  zprávy mezi procesy lze předávat nejen lokálně, ale také po síti  vhodná koncepce pro objektově orientovaný OS  komponenty systému jsou objekty s jasně definovaným rozhraním

Funkce mikrojádra  ovládání I/O a přerušení  časovač, ovladače, přepínání kontextu...  primitivní správa paměti  mapování stránek virtuální paměti na stránky fyzické paměti  komunikace procesů  IPC (Inter-process Communication)

Příklad: systém QNX  mikrojádro  message passing  first-level interrupt handling  process scheduling  low-level network communication  systémové procesy  Process Manager  Filesystem Manager  Device Manager  Network Manager Process Manager Device Manager Filesystem Manager Network Manager MK

IPC systému QNX  primitivní funkce IPC, poskytované mikrojádrem  Send (pid, smsg, rmsg, smsg_len, rmsg_len)  pid = ID procesu, kterému je zpráva určena  smsg, smsg_len = umístění a délka bufferu se zprávou  rmsg, rmsg_len = umístění a délka bufferu pro odpověď  pid = Receive (0, msg, msg_len)  pid (hodnota kterou vrací funkce) = ID procesu, který odeslal zprávu  sel = 0 specifikuje, že se má přijmout zpráva od libovolného procesu  msg, msg_len = umístění a délka bufferu s přijatou zprávou  Reply (pid, reply, reply_len)  pid = ID procesu, kterému je odpověď určena  reply, reply_len = umístění a délka bufferu s odpovědí  funkce Receive umožňuje synchronizaci procesů  čeká na příchod zprávy