PV109: Historie a vývojové trendy ve VT Operační systémy Luděk Matýska Fakulta informatiky Masarykovy univerzity podzim 2016 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 1/29 ocitace oez operační no systému • 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 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 2/29 • 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 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 3 / 29 ponenty moaernic • Správa procesorů • Správa procesů 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 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 4 / 29 - z_akiaani uperacni oystem • 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 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 5 / 29 • 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í Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 6 / 29 • Dávkový operační systém • Určen pro vyšší modely řady 360/370 o Ovládaní z děrných štítků a konzoly • Uložen na magnetickém disku • M u Iti programová n í s různým počtem souběžných úloh • Volí se bud' 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 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 7 / 29 • Job Control Language - skriptovací jazyk IBM mainframů • 3 hlavní a 3 doplňkové příkazy: o 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. Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 8 / 29 • 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 nejlepší OS • Celý systém naprogramován v jazyce velmi vysoké úrovně S3 (dialekt Algolu 68) • JCL (obdoba „shellu"): tisíce příkazů • Samotný jazyk: SCL - System Control Language • Skutečný programovací jazyk - proměnné, podprogramy, bloková struktura, řídicí struktury • 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) • K programům v jazyce SCL a S3 se nápověda generuje automaticky, k ostatním ji lze snadno doplnit Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 9 / 29 • Dokonalý systém přístupových práv • Systém checkpoint/restart o 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 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 10 / 29 • 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ý I960 -1965 J 1970 1975 1980 1985 1990 1995 2000 CTSS FJCC papers Multics History antecedents design 645 Multics 6180 Multics L68/DPS Multics Flower canceled, development capped B2 MIT 645 service ARPANet Organick book NSS endgame Shutdown of DND-H (17:08Z 10/30/2000) Zdroj: http: //www. multicians . org/ Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 11 / 29 • 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ě a Struktura - jádro, systémové nástroje (utility), další aplikace • Původně v assembleru; roku 1973 přepsán do C Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 12 / 29 • Dnes dva základní směry: • UNIX System V - linie AT&T • BSD Unix - vyvinut na Berkley University o 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 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 13 / 29 • Vyvíjen na University of California, Berkeley od roku 1977 9 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 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 14 / 29 • Vývoj začal Linus Torvalds v roce 1991 (inspirován UNIXem a MINIXem) • Původně označení pouze pro jádro systému • Velmi populární mezi vývojáři z celého světa • Model vývoje byl později popsán v eseji The Cathedral and the Bazaar od Erica S. Raymonda • Při vývoji využíván Projekt GNU (GNlTs not Unix) - bash shell, GNU C Library apod. • Linuxová distribuce • soubor jádra linuxu, systémových utilit a aplikací tvořící použitelný operační systém • velká rozmanitost (komerční-nekomerční, běžní uživatel é-vý voj á ři, se rve ro vé-d es kt o p o vé, specializované, apod.) Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 15 / 29 MEMORABLE LINUX MILESTONES CELEBRATING 20 YEARS OF LINUX LINUS TORVALDS POSTS FAMOUS MESSAGE - "HF/U.O EVERYBODY OUT THERE.."- AMD RELEASES FIRST UNUX CODE SUCKWARE BECOMES FfRST WIDELY ADOPTED DISTRIBUTION u Ladiwiire TECH GIANTS BEGIN ANNOUNCIN PLATFORM SLTPPOR FOR UNUX IBM RLJN5 FAMOUS LINUX AD DURING THE SUPERBOWL THE UNUX FOUNDATION IS FORMED TO PROMOTE PROTECT AND STANDARDIZE LINUX LINUS ISA FELLOW LINUX TURNS 20 AND POWERS THE WORLD'S SUPERCOMPUTERS. STOCK EXCHANGES. PHONES.ATMS, HEALTHCARE RECORDS. SMART GRIDS, THE LIST GOES ON 1992 m LINUS LICENSES UNUX UNDER THE GPL AN IMPORTANT DECISION THAT WILL CONTRIBUTE TO ITS SUCCESS IN THE COMING YEARS 1999 2005 2010 LINUS VISITS AQUARIUM. GETS BIT BY A PENGUIN AND CHOOSES IT AS LINUX MASCOT LINUS APPEARS ON THE COVER OF BU5INESSWEEK WITH A STORY THAT HAILS UNUX AS A BUSINESS SUCCESS THE LINUX-8ASED ANDROID OS OUTSHIPS ALL OTHER 5MARTPHONE OSES IN THE U.S. AND CLIMBS TO DOMINANCE i E a ř S Elf Unix i ? 91 - í a i i □THE LINUX FOUNDATION httpiJfWWW I in 1.1 i iirl n1ii?n c rcj ■ KlMtllLMM 'lIMll 1^ l< II II ***M<- Luděk Matýska (Fl MU) Zdroj: http: //content. linuxfoundation.org/20th/ PV109: Historie a vývojové trendy ve VT podzim 2016 16 / 29 1969 19T1 to 1973 1974 to 1975 197B 1979 19B0 1981 1982 19B3 19B4 19B5 1886 19B7 i9aa 1989 1000 1991 1992 1993 1994 1995 1996. 1997 199B 1999 2000 2001 In 2004 2005 2006 to 2010 ( Unics Minií 1.x ^^^^^^ Linux 0.95 to 1.2.x n Minix 2.1 1 Linux 1 2.0 tc 2.6.x Minis 3.x 1 Linux 3.x UnixTŠŠ ltd 4 5tct Open Source MifcKťEhäľ-frd Source □ t losed Source Mac CSX 10.0 to 10.7.x iDsrwin; 1999 2000 2001 tc 2004 2005 2006 to 2010 Zdroj: http://en.wikipedia.org/ Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 17 / 29 ac 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čů (jednoduché ovládání pomocí myši, cenová dostupnost, ...) neobsahoval příkazovou řádku soubory se skládají ze dvou větví (forks) • 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 4.x 5.x 6x 7.x i i i \ Lisa/MacWorks (Sun Hemaiketing) Macwcrks PlusMacwcrks Plus II 12 3 4 5 6 7 7.1 1 2 3 II I I I I I Macintosh T T Plus Mac T T T EEOÍRjrtabk} T T Quadra 76 3 31 T T Power Macintosh T T I I 9.M I X5 1.0 &5 369 iMac G4 T T I I 10.* 2 10 101 91 92 l^riC 10ÜK luft 7 14AA 14ňQ 1ÜÜd"b 1QQ1 lüui 1441 1004 löüc: 1ÜÜA 1ii7 liii 5(W1 aVb1 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 a 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 9 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 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 to 2004 2005 2006 to 2010 NEXTSTEP/ OPENSTEP 1.0 to 4.0 ^ UnixTSS \ Unix TSS {Time Sharing System) 9 to 10 Free BSD 1.0 to 2.2.x rr Free BSD f Mac OS X "\ Server j,. Mac OS X 10.0 to 10.6 (Darwin) Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 19 / 29 istorie a vazoy na BO Bl ei 3 J B4 es BS BT es et 90 91 91 93 94 95 96 97 9B 99 00 01 01 03 04 05 os 07 OS 09 i Vpple Apple Workgroup Server: AIX Apple Network ServerrAlX Macintosh Server: AppleShare Xserve: I Mac OS X Server A/UX orAppleShare ^ *ANS > 3.0 k AWS 6Bk AWS PPC Xsen* PPC Macintosh Server PPC 1-1-- Xaerve 1 mel Apple hardware Ap pleShare 1.0/2.0 3.0 A Z ID t n AppleShare IP í Legacy Mac OS i Apple'* Unix-cased OSs Htltow Sur 1 Rhapsody Mac OSX Server 1.0 Server IOjc I0J 10.3 10.4 103 10.6 k k i r t i r i t t t i MOSX IOjc I0J 10.3 10.4 103 10. é Pmk l Točití I Copland /Cmhmn A i A 1 i k i Macintosh System software ££k -1-r -1-T P-í Miř rit ppr Mac OS X Intel •MkL nux 1 Á deve jjjmer NeXT STEP 10 3.0 J. í btto I Other Unix O NU/Linux 1 1 1 -1-1-II 1 1 1 1 1 1 1 1 1 1 1 1 1 1 BSD Unix ■-í FrotBSD 1 f 1 JrNetBSD i r Open BSD 1 1 1 1 Open 5 a arts SunOS 1-4 -1-1-1-1-n i-1-1-1-1— SunOS 5 / Solárii U - 3.6 7 9 -1-1-1-n-1-1-'—i-1—1-1-1- 9 Solaris 10 ATA T Um * f-,-r- -1-1-1- Novell SC ID/Caldera IBM AIX Zdroj: http://appleinsider.com Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 20 / 29 • Klíčový, pro rozšírení 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 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 21 / 29 inaows • 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 a Pro TCP/IP bylo nutné použít externí program • Windows 95 o 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 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 22 / 29 Clock Reuersi Game Skill m MS-DOS ExecutiuegMMllglBMHrite - README .DOC ..........................■ ■^■^H.......... File Uiew Special D C: M'JTNDfUJK ABC. BUILD CfiLC CALEh CfiRDF CGfl. CGA. CGfl. CITOh CLIPE CLOCh COMM File Edit Search Character Paragraph Document Microsoft Windows MS-DOS Executive Uersion 1.01 Copyright © 1985, Microsoft Corp Disk Space Free: 3002^K Memory Free: 303K CONTROL.EXE C00RA.F0N COURB.FON C00RC.F0N EGflMONO.GRB HPLf EGflMONO.LGO IBMC EMM.AT J0YÍ EMM.PC KERh i HrrrnriH.i nfortnation shoul 'indows. Also co Addendum end HOUTTHE SPO D print from an ap his may be prefe Dnfiguration as it rture change the rtion of the WIN.Ih Spooler=no will c RUNNING BATCH (.BAT) FILES If you run a standard applicatio should create a PIFfile forthe t Page 1 XT ..........................................................................................bp Zdroj: http://en.wikipedia.org Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 23 / 29 inaows Microsoft Windows family tree i- MS-DOS-based and 9x- 1,0 2.0 2.0 3,0 95 2.1X 3,1x 93 ME 90S E i— NT kernel-based 3.51 .5 4.0 2000 r r- Server only QUuntorEdJkxi a-jjida^Edlkm F-1hi|:iiu4 Fi!i i:.-. □ulKůrmr Eilfcíi ♦ ■ IX' (.■!■.■■■ 19Ů5 1987 19S9 1991 1993 1995 1997 1999 2001 2003 2005 2007 2009 1986 193Ö 1990 1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 Zdroj: http://www.proghita.com Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 24 / 29 ove • 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 o 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 • 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 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 25 / 29 oDiini operační systémy • 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 o 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, Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 26 / 29 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 • 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, . ..) Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 27 / 29 • Odlehčená verze Mac OS X, původně OS pro iPhone • Později i pro i Pod Touch, iPad a Apple TV • Uživatelské rozhraní založeno na idee přímé interakce pomocí vícedotykové obrazovky • Nemožnost přístupu k adresářové struktuře - soubory jsou dostupné z aplikací • Do verze 4 multitasking omezený pouze na před instalované aplikace ■v • Čtyři vrstvy • Core OS - poskytuje nízkoúrovňové funkce ostatním technologiím • Core Services - vysoko ú rov nové služby systému (např. lokační služby) • 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í apod.) Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 28 / 29 istorie vývoje moDilnic 2.0 Windows CE 3.0 Windows CE 4.2 WindowiCEi.x CE6 PocoeiPC 2000 PutoeiPC 2001 Window* Motu Ie 2J0O3 Window* Mob le í WiMo Ů WMo&l WHotS WM7 Microsoft Mobile MiciJMjn: Pink Mobile 5 tart up i I Danger Android Google Google Android I JO IJ 1.6 Aniifiiiii2.ii Apple IPhone iPhcne 2.0 iPhone 3.0 4.0 Symblan Symblan OS & 9.1 9.1 9.3 9.4 9.5 Symblan Foundation *3 Pal mi Pain- 05 3.0 4.0 Palm OS í Cobalt Palm OS LnuxVALP Palm OS S> Gmec Wincows Mobile 5 W Mo i-.l RIM BlackBErry OS 2.0 3.0 4J0 4.1 4.2 4.3 4J 4.7 UKfcfen OS J.O Zdroj: http: //www. appleinsider. com Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2016 29 / 29