PV109: Historie a vývojové trendy ve VT Operační systémy Luděk Matýska Fakulta informatiky Masarykovy univerzity podzim 2015 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2015 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 2015 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 2015 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 2015 4 / 29 • 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 2015 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 2015 6 / 29 • Dávkový operační systém • Určen pro vyšší modely řady 360/370 • 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 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 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2015 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 2015 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 2015 9 / 29 • 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 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2015 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. mult i c i ans . org/ Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2015 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 2015 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í o 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 2015 13 / 29 • 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í a 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 2015 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 (GNU's 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 kto p o vé, specializované, apod.) Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2015 15 / 29 MEMORABLE LINUX MILESTONES CELEBRATING 20 YEARS OF LINUX LINUS TORVALDS POSTS FAMOUS MESSAGE - "HELLO EVERYBODY OUT THERE..." - AMD RELEASES FIRST UNUX CODE SLaCKWaRE BECOMES FTRST WIDELY ADOPTED 0ISTHJBU11ON TECH GIANTS BEGIN ANNOUNCING PLATFORM SUPPORT FOR UNUX IBM RUNS FAMOJS LINUX AD DURING THE SUPERBQWL THE LINUX FOUNDATION IS FORMED TO PROMOTE PROTECT AND STANDARDIZE LINUX LINUS ISA FELLOW LINUX TURNS 20 AND POWERS THE WORLD'S SUPERCOMPUTERS. STOCK EXCHANGES. PHONES.ATM5. HEALTHCARE RECORDS. SMART GRIDS, THE LIST GOES ON UN JS LICENSES UNUX UNDER THE GPL AN IMPORTANT DECISION THAT WILL CONTRIBUTE TO ITS SUCCESS IN THE COMING YEARS LIN JS VISITS AQUARIUM. GETS BIT BY A PENGUIN AND CHOOSES IT AS LINUX MASCOT RED HAT GOES PUBLIC LINUS APPEARS ON THE COVER OF BUSINESSWEEK WITH A STORY THAT HAILS LINUX AS A BUSINESS SUCCESS THE UNUX-BASED ANDROID OS OUTSHIPS ALL OTHER SMARTPHONE OSES IN THE U.S. AND CLIMBS TO DOMINANCE LINK I 9 9 1 - Í 0 1 1 □LINUX FOUNDATION Pittp :Hwww.Nn uxfou-nd-ation-org/ Zdroj: http: //content. linuxfoundation.org/20th/ Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2015 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 2015 17 / 29 ac • 1984: Apple Macintosh o 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 1.x 4.x 5lX ť*x 7.x &x 9.x 10x Lisa/MacWorl<¥ pim Hamaiton i i i i i i i i ng) Macwprfcs PlugMacworks Plus II i i i i i i i i i X$ 1.0 B i i 10 10.1 I Macintosh Plus 4 í ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ í 6 7 | 7.1 7.5 76 8 9L1 92 ^1 ^1 1 1 ^1 ^1 1 1 1 2 3 ^ Mac II i i i i i i i 5EGíR>rtaqltí Quadra Power Macintosh i Mac 04 T iqftR ioňť. iofl.7 ioňň ioňo iaaň itm iow 'lotťi iam jioq£ ji&afl 'tato jioQfl jiocna avťi jmu jmb Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2015 18 / 29 • Ve 2. polovině 90. let hledal Apple nový OS pro své počítače o 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 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 í Mac OS X A / V, Server J j Mac OS X 10.0 to 10.6 (Darwin) Free BSD Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2015 19 / 29 istorie a vazoy na 9WR 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 J Vpple Apple Workgroup Server: AIX Apple Network ServerrAlX Macintosh Server: AppleShare Xserve: I Mac OS X Server A/UX orAppleShare ^ *ANS > AÍUX ÍBt 2.0 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 lOJ 10.3 10.4 103 10.6 k k i r t i r i t t t i MOSX IOjc lOJ 10.3 10.4 103 10. é PuiJk t TakgeM í Copland /Cmhmn i i Á 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 r 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 2015 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 2015 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 • 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 Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2015 22 / 29 Clock!ÍÍÍÍÍÍ!ÍÍÍÍÍÍÍÍÍ!ÍÍUÍÍ! MS—D0S Executive; File Uiew Special üüüüiiiiü üüüüüüüfi í\w? Í\w? Í\w? Í\w? Í\w? Ívav Í\w? Í\w? HÜU R e u e r s i !!!!!!!!!!!!!!!líl Game Skill D C: MJTNDflUfi ABC. BUILD CfiLC CALEh CfiRDF CGfl. CGA. CGfl. CITOh CLIPE CLOCh COMM iílH íl Write - README 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 COURA.FON COURB.FON COURC.FON EGAMONO.GRB HPLf EGAM0N0.LG0 IBMC EMM.AT J0YÍ EMM.PC KERľ i HrrriiriH.i nformation 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 d] RUNNING BATCH (.BAT) FILES If you run a standard applicatio should create a PIFfile forthe t Page 1 XT Zdroj: http://en.wikipedia.org Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2015 23 / 29 inaows Microsoft Windows family tree r- 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 2015 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 2015 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 • 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 2015 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, . ..) ciro^oo Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2015 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 • Čtyři vrstvy • Core OS - poskytuje nízkourovňové funkce ostatním technologiím • Core Services - vysoko úrovňové 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 2015 28 / 29 istorie vývoje moDilnic 2.0 Windows CE 3.0 Windows CE 4.1 WindowiCEi.x CE6 PutoeiPC 2000 PutoeiPC 2001 Window* Motu Ie 1ÍKB Window* Mob le í WiMo Ů WMo&l WHotS WM7 Microsoft Mobile MiciJMjn: Pink Mobile Startup i Danger Android Co o;; I e Google Android I jo IJ 1.6 AniiQii 2.0 Apple IPhone iPhone 1.0 iPhone 3.0 4.0 Symblan Symblan OS é 9.1 9.1 9.3 9.4 9.5 Symblan Foundation *3 Pal mi Palrv 05 3.0 4.0 Palm OS í Cobalt Palm OS LnuxVALP Palm OS S> Gmec Wincows Mobile S W Mo i-.l RIM BlackBErry OS 1.0 3.0 4j0 4.1 4.1 4.3 4J 4.7 Zdroj: http: //www. apple insider. com Luděk Matýska (Fl MU) PV109: Historie a vývojové trendy ve VT podzim 2015 29 / 29