PV109: Historie a vývojové trendy ve VT Operační systémy Eva Hladká Fakulta informatiky Masarykovy univerzity podzim 2013 Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 1 / 30 CZ.1.07/2.2.00/28.0041 Centrum interaktivních a multimediálních studijních opor pro inovaci výuky a efektivní učení 'XPřf evropský SOCiální ■ ministerstvo školství, Op fond V CR EVROPSKÁ UNIE mládeže a tělovýchovy INVESTICE DO ROZVOJE VZDĚLÁVÁNI • Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 2/30 • Obvyklé ve světě cca do 50. let, u nás déle • Programování HW - strojový kód • Veškerá obsluha z ovládacího pultu • Program někdy musel obsahovat i zaváděcí část • Na počítači vždy běžel pouze jeden program Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 3/30 • Cílem bylo minimalizovat prostoje mezi úlohami • Někdy integrovány s překladačem • Hlavní komponenta - jazyk pro řízení úloh • Job Control Language, JCL • Později i další funkce, zprvu opět ty, které minimalizují prostoje • spooling • ošetření chyb Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 4/30 • Správa procesoru • Správa procesu a vláken • Správa hlavní (operační) paměti • Správa souborů • Správa l/O zařízení • Správa vnější (sekundární) paměti • Networking, distribuované systémy • Systém ochran • Interpret příkazů - CLI/GUI • Systémové programy • Rozhraní (služeb) OS pro uživatele • V minulosti se za součást OS považovaly mnohdy i překladače Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 5/30 • Určen pro počítač ZPA 600 (modernizovaný EPOS2) v 60. letech • Velmi jednoduchý systém • Zajišťoval pouze provádění akcí podle pokynů uživatele • Zadávání příkazů • konzola (psací stroj) • snímač děrných štítků • Uložen komplěně ve statické paměti, • Později některé části na magnetické pásce Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 6/30 o Dávkové zpracování úloh • Určený pro menší modely řady IBM 360 • Ovládání z děrných štítků a z konzoly • Uložen na magnetickém disku • M u Iti programová ní s max. 3 nerovnoprávnými programy • 1 v pozadí, 2 v popředí Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 7/30 • Dávkový operační systém • Určen pro vyšší modely řady 360/370 • Ovládaní z děrných štítku a konzoly • Uložen na magnetickém disku • M uItiprogramování s různým počtem souběžných úloh o Volí se buď při generaci systému nebo dynamicky • Velmi rozsáhlý jazyk pro řízení úloh (JCL - Job Control Language) • Velmi bohatý sortiment systémových služeb (dostupných z assembleru) • Později doplněn o práci z terminálů • Standardně nezná přístupová práva Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 8/30 • Job Control Language - skriptovací jazyk IBM mainframů • 3 hlavní a 3 doplňkové příkazy: • JOB - začátek úlohy (zadává název, paměťové požadavky, časové omezení aj.) • EXEC - spuštění programu nebo procedury (makra). Opět možno zadat paměťové a časové omezení. Nejsou-li dostupné zdroje, čeká na jejich uvolnění • DD - definice datových souborů. Nejkomplikovanější příkaz, má stovky možných parametrů. • Další 3 příkazy definovaly začátek a konec procedury a přepnutí ovládání na konzolu. Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 9/30 • Vydán v polovině 70. let 20. století • Určen pro počítače řady ICL 2900 a 3900, považován (i konkurencí) za nej lepší OS • Celý systém naprogramován v jazyce velmi vysoké úrovně S3 (dialekt Algolu 68) o JCL (obdoba „shellu"): tisíce příkazů • Samotný jazyk: SCL - System Control Language • Skutečný programovací jazyk - proměnné, podprogramy, bloková struktura, řídicí struktury o Bohaté prostředky nápovědy • online help (tehdy naprostá novinka) • nápověda k jednotlivým příkazům (parametry, jejich typy a implicitní hodnoty) o K programům v jazyce SCL a S3 se nápověda generuje automaticky, k ostatním ji lze snadno doplnit Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 10 / 30 • Dokonalý systém přístupových práv • Systém checkpoint/restart • Subsystém transakčního zpracování (zpracování dat v reálném času se zabezpečením proti výpadkům) • Systém byl podroben testu odolnosti proti napadení, (prováděli sami jeho autoři v roli uživatele s běžnými právy) • Každý soubor je provázen profilem, který popisuje jeho vlastnosti (cca 2KB) • Soubory se stejným profilem lze spojit do knihovny (stačí pak 1 profil) item Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 11 / 30 Multiplexed Information and Computing Service Snaha o vytvoření vysoce flexibilního univerzálního systému Mnoho nových a inovativních technologií • Multitasking • Dynamické linkování knihoven • Vysoká míra zabezpečení systému Naprogramován v PL/1 Významně ovlivnil další generace operačních systémů až do dnešní doby Kvůli vysoké komplikovanosti systém nebyl příliš úspěšný 1985 -1990 -1995 -2000 - CTSS FJCC papers MIT 645 service ARPňNet Organ i cK book Hultics History antecedents iř: i ;t 645 llultics 6180 Multics L68/DPS llultics Shutdown of DND-H (17:08Z 10/30/2000) Zdroj: http://www.multicians.org/ Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 12 / 30 • Vyvíjen v Bell Labs firmy AT&T • Ken Thompson a Dennis Ritchie • Navázal na Multics (poučil se z chyb) • Filosofie systému (později platformy): • jednoduchost • multitasking • je víceuživatelský • hierarchický souborový systém, (téměř) vseje soubor • konfigurace uloženy v souborech jako text • Důraz kladen na vztahy mezi programy (více jednodušších) • Program dělá jednu věc, a tu dělá správně • Struktura - jádro, systémové nástroje (utility), další aplikace • Původně v assembleru; roku 1973 přepsán do C Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 13 / 30 • Dnes dva základní směry: • UNIX System V - linie AT&T • BSD Unix - vyvinut na Berkley University • Mnoho variant komerčních i opensource • 1975: koncept roury (pipe) umožnil modulárnější a rychlejší vývoj • Unixové války • spory mezi prodejci UNIXových systémů • přelom 80. a 90. let 20. století • boj o vytvoření standardů po budoucí vývoj • důsledkem byla mj. díra na trhu, kterou zaplnily Windows NT • UNIX Epoch - počítání času v UNIXových systémech od 1. 1. 1970 Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 14 / 30 • Vyvíjen na University of California, Berkeley od roku 1977 • Podpora systémů PDP-11 a VAX • První systém, který integroval TCP/IP stack (sokety) • Vždy silně orientován na networking • „Hřiště" pro akademické prostředí • Z BSD vychází dnes např. OpenBSD, FreeBSD, ale i NexTSTEP a následně i Mac OS X Zdroj: http: //freeoperatingsystem.net Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 15 / 30 Linux o Vývoj začal Linus Torvalds v roce 1991 (inspirován UNIXem a MINIXem) o Původně označení pouze pro jádro systému o Velmi populární mezi vývojáři z celého světa o Model vývoje byl později popsán v eseji The Cathedral and the Bazaar od Erica S. Raymonda o Při vývoji využíván Projekt GNU (GNU's not Unix) - bash shell, GNU C Library apod. o Linuxová distribuce ; soubor jádra linuxu, systémových utilit a aplikací tvořící použitelný operační systém o velká rozmanitost (komerční-nekomerční, běžní uživatelé-vývojáři, serverové-desktopové, specializované, apod.) Eva Hladká (Fl MU) I PV109: Historie a vývojové trendy ve VT Historie UNIXových systémů • 1984: Apple Macintosh • grafické uživatelské rozhraní - metafora pracovní plochy stolu (desktop) • základem byl Lisa OS a koncepty převzaté z Xerox ALTO • Spuštěna mohla být nejvýše jedna aplikace • zásadní význam pro popularizaci osobních počítaču (jednoduché ovládání pomocí myši, cenová dostupnost, .. .) • neobsahoval příkazovou řádku • soubory se skládají ze dvou větví (forks) o data fork - obsahuje (podobně jako u jiných OS) data • resource fork - obsahuje sturkturovan8 metadata (definice menu, zvuky apod) • Postupně vzniklo hlavních 9 verzí, poslední byla vydána v roce 1999 1 1 1 1 1 1 1 1 1 1 1 1 iii lK 4x5* 6j 7.1 Sue Ifjje UsaíKbdWrjfte iSun F emartíatint ) r\teCTwks Pluslfecwcifhs Plus i XE. 1.0 P 10 101 1 i ^^^^ i ^l 1 2 3 4 5 6 7 7.1 7.5 1» 8 81 85 86 9 91 92 1 2 3 1 1 1 1 Nfedrtosh Plus Mac ii SKSOWal*) Quadra Fwiet Macintosh iUI* QA 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1995 1997 1998 1999 2Ů00 2001 2Ů02 Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 19 / 30 • Ve 2. polovině 90. let hledal Apple nový OS pro své počítače • 1996: Apple kupuje NeXT Computer se záměrem využít OS NeXTSTEP jako náhradu za nedostačující Mac OS • O rok později se Steve Jobs vrací do Apple • Založen částečně na FreeBSD, Mach jádře • Objective-C framework (dnes Cocoa) • Vytvářen „na míru" počítačům Apple • Víceuživatelský systém, • Zaměřen na uživatele • Vysoká přívětivost - Human Interface Guidelines vydané Applem jsou používány i u dalších SW 1984 1985 1989 1990 1991 ^ UnixTSS \ Unix TSS (Time S ha ring System) 3 to 10 Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 20 / 30 Apple Mac OS - historie a vazby na UNIX • Klíčový, pro rozšíření nastupující nové platformy IBM PC • Základ systému tvořil QDOS (Quick and Dirty OS), který zakoupil Microsoft za 50000 USD od firmy Seattle Computer Products. • Hlavní funkce: • práce se soubory a složkami • spouštění programů • formátování disket a disků • jednoduché skriptování • Nejprve samostatný systém (jehož grafickou nadstavbou se staly Windows) • Poslední samostatně prodávaná (a nejznámější) byla verze MS-DOS 6.22 • Od Windows 95 již integrována v systému Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 22 / 30 • 1985: MS Windows 1.0 • první pokus implementovat grafické prostředí podporující multitasking • Až do verze Windows 3.1x pouze jako grafická nadstavba MS-DOS • po celou dobu pouze podpora kooperativního multitaskingu • Windows for Workgroups 3.1x - podpora networkingu (MS, IBM, Novell) • Sdílení souborů, tiskáren, e-maily • Pro TCP/IP bylo nutné použít externí program • Windows 95 • 16/32bitový grafický operační systém určený pro osobní počítače rodiny IBM PC • Přímý nástupce MS-DOS • Grafické prostředí s typickou nabídkou Start • Podpora dlouhých názvů souborů (až 255 znaků) • Nástupci - Windows 98, Windows ME (Milénium Edition) • Windows NT (New Technology) - původně 32b systém určen pro servery, od Windows XP jediné používané jádro Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 23 / 30 Game Skill ■§§§§«1 JUHlIB □DODDDDQ ..... JIB......iL MS-DOS ExecutiueJ.i...... ......iiliB README.DOC" File Uiew Special "Lrr3 BbI Df=] C: VUTHnnUS DBC.l BUILD CfiLC CALEr CňRDF CGI).C CGA.G CGA.L ČITOU CLIPÍ CLOCK COMM File Edit Search Character Paragraph Document Copy Microsoft Uindous MS-DOS Executiue Uersion 1.B1 right @ 1985, Microsoft Corp. nn Disk Space Free: 30624K Memory Free: 383K CONTROL.EME COURA.FOM COURB.FOM COURC.FOM «-l I EGAMONO.GRB EGAM0N0.LG0 EMM.AT EMM.PC HPLfi I BMG jovrl KERn ntormation shoul|+ 'indows. Also cüP Addendum enclL "HOUTTHE SPO| 3 print from an a| his may be prefi Dnfiguration as it dure change the tion of the WIN.Iť 3pooler=no will c RUNNING BATCH (.BAT] FILE| It you run a standard applicatio should create a PIFfile forthe tj+ CJPage 1 ■I I I- Zdroj: http://en.wikipedia.org Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 24 / 30 Historie MS Windows Microsoft Windows Zdroj: http://www.proghita.com PV109: Historie a vyvojove trendy ve VT • Síťový OS vyvíjený od roku 1983, aktuální verze 6.5 • Založen na konceptu sdílení souborů namísto sdílení disku v lokální síti • Inspirace ve vlastnostech mainframů • Model klient-server • Platformě nezávislý, používal síťové protokoly IPX/SPX (od verze 5 TCP/IP) • Výkonostně předčil všechny své konkurenty díky 4 vlastnostem: • nepreemptivní OS určený pro síťové služby o NCP (NetWare Core Protocol) - předpokládal, že síť bude korektně fungovat většinu času • agresivní cachování • přístup přímo k souborům Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT I podzim 2013 26 / 30 • Určeny pro tablety, PDA a ,,chytré telefony" • Mnohdy založeny na OS pro osobní počítače (iOS, Android) • Jedná se o operační systémy reálného času • Významná omezení ze strany HW: • kapacita paměti • výdrž vs. výkon • uživatelské rozhraní (dotykový senzor, HW klávesnice) • Příklady: • Symbian OS - otevřený systém, manažerské telefony Nokia • BlackBerry OS - zaměřen na snadnou ovladatelnost, a bezpečnost (šifrovaný přenos zpráv) • Windows CE - původně určen pro PDA, stal se základem pro další typy mobilních systémů (např. AutoPC, Windows Phone) • Samsung Bada, MeeGo, Maemo, Palm OS, Windows 8, Windows RT, Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 27 / 30 • Založen na linuxu, open source platforma • Dostupný na velké škále zařízení různých výrobců (tablety, telefony, multimediální centra, apod.) • Pro vývojáře Android SDK • Pět vrstev • Jádro operačního systému • Knihovny OS - napsány v C/C++, dostupné vývojářům skrze framework CIHD^OID • Android Runtime - aplikační virtuální stroj • Application Framework - přístup ke službám • Aplikační vrstva - základní uživatelské aplikace (e-mailový klient, SMS, mapy, ...) Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 28 / 30 • Odlehčená verze Mac OS X, původně OS pro iPhone • Později i pro iPod Touch, iPad a Apple TV • Uživatelské rozhraní založeno na idee přímé interakce pomocí vícedotykové obrazovky [/ L • Nemožnost přístupu k adresářové struktuře - soubory jsou dostupné z aplikací «v • Do verze 4 multitasking omezený pouze na předinstalované aplikace o Čtyři vrstvy • Core OS - poskytuje nízkoúrovňové funkce ostatním technologiím • Core Services - vysokoúrovňové služby systému (např. lokační služby) o Media - umožňuje přehrávat multimediální soubory a vytváření multimediálních aplikací • Cocoa Touch - poskytuje frameworky pro vývoj aplikací (GUI, dotykové rozhraní a pod.) Eva Hladká (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2013 29 / 30 Historie vývoje mobilních OS