FAKULTA INFORMATIKY Masarykova univerzita PV109: Historie a vývojové trendy ve VT Operační systémy Luděk Matýska podzim 2020 Luděk Matýska • PV109: Historie a vývojové trendy ve VT • podzim 2020 1/32 FAKULTA INFORMATIKY Masarykova univerzita Počítače bez operačního 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 • PV109: Historie a vývojové trendy ve VT • podzim 2020 2/32 FAKULTA INFORMATIKY I Masarykova univerzita Zárodky prvních OS ■ CíLem byLo minimalizovat prostoje mezi úlohami ■ Někdy integrovány s překladačem ■ Hlavní komponenta - jazyk pro řízení úloh ■ Job Control LanguageJCL ■ Později i další funkce, zprvu opět ty, které minimalizují prostoje ■ spooling ■ ošetření chyb Luděk Matýska • PV109: Historie a vývojové trendy ve VT • podzim 2020 3/32 FAKULTA INFORMATIKY I Masarykova univerzita Komponenty moderních OS ■ Správa procesoru ■ Správa procesů a vLáken ■ Správa hlavní (operační) paměť ■ 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 povazovaly mnohdy i překladače Luděk Matýska • PV109: Historie a vývojové trendy ve VT • podzim 2020 4/32 FAKULTA INFORMATIKY I Masarykova univerzita ZOS - Základní Operační Systém ■ 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 • PV109: Historie a vývojové trendy ve VT • podzim 2020 5/32 FAKULTA INFORMATIKY Masarykova univerzita IBM DOS (1966) ■ 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 ■ MuLtiprogramování s max. 3 nerovnoprávnými programy ■ 1 v pozadí, 2 v popředí Luděk Matýska • PV109: Historie a vývojové trendy ve VT • podzim 2020 6/32 FAKULTA INFORMATIKY I Masarykova univerzita IBM OS (1966) ■ Dávkový operační systém ■ Určen pro vyšší modely řady 360/370 ■ Ovládání z děrných štítků a konzoly ■ Uložen na magnetickém disku ■ MuLtiprogramování s různým počtem souběžných úLoh ■ Volí se bucí 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 • PV109: Historie a vývojové trendy ve VT • podzim 2020 7/32 FAKULTA INFORMATIKY I Masarykova univerzita IBMJCL ■ Job ControL Language - skriptovací jazyk IBM mainframů ■ 3 hlavní a 3 doplňkové příkazy: ■ JOB - začátek úlohy (zadává název, paměfové 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 • PV109: Historie a vývojové trendy ve VT • podzim 2020 8/32 FAKULTA INFORMATIKY I Masarykova univerzita ICLVME I. ■ Vydán v polovine 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 • PV109: Historie a vývojové trendy ve VT • podzim 2020 9/32 FAKULTA INFORMATIKY I Masarykova univerzita ICLVME II. ■ 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 2 KB) ■ Soubory se stejným profilem Lze spojit do knihovny (stačí pak 1 profil) Luděk Matýska • PV109: Historie a vývojové trendy ve VT • podzim 2020 10/32 FAKULTA INFORMATIKY Masarykova univerzita Multics (1964) 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 -1970 1975 1980 1985 1990 1995 2000 CTSS FJCC papers Hultics History antecedents design MIT 645 service 645 nultics ARPANet Organick book HjSS 6180 Multics L68/DPS Multics Flower canceled, development capped B2 endgame Shutdown of DND-H (17:08Z 10/30/2000) Zdroj: http: //www. mul tic i an s . org/ Luděk Matýska • PV109: Historie a vývojové trendy ve VT • podzim 2020 11/32 FAKULTA INFORMATIKY I Masarykova univerzita UNIX (1969) ■ 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ěř) vše je soubor ■ konfigurace uloženy v souborech jako text ■ Důraz kladen na vztahy mezi programy (více jednodušších) ■ Program děla jednu věc, a tu děla správně ■ 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 • PV109: Historie a vývojové trendy ve VT • podzim 2020 12/32 FAKULTA INFORMATIKY I Masarykova univerzita UNIX ■ 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évolky m 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 • PV109: Historie a vývojové trendy ve VT • podzim 2020 13/32 FAKULTA INFORMATIKY I Masarykova univerzita BSD - Berkeley Software Distribution ■ Vyvíjen na University of CaLifornia, BerkeLey od roku 1977 ■ Podpora systémů PDP-11 a VAX ■ První systém, který integroval TCP/IP sta c k (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 NexTSTEPa následně i Mac OS X Luděk Matýska • PV109: Historie a vývojové trendy ve VT • podzim 2020 14/32 FAKULTA INFORMATIKY I Masarykova univerzita Linux ■ 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, serverové-desktopové, specializované, apod.) Luděk Matýska • PV109: Historie a vývojové trendy ve VT • podzim 2020 FAKULTA INFORMATIKY Masarykova univerzita Linux - milníky MEMORABLE LINUX MILESTONES CELEBRATING 20 YEARS OF LINUX r limus torvalds posts famous message - "hello everybody out there..." - and releases first unux code SLACKWARĚ BECOMES FIRST WIDELY ADOPTED DISTRIBUTION TECH Ol A NTS BEGIN ANNOUNCING PLATFORM SUPPORT FOR LINUX IBM RUNS FAMOUS LINUX AD DURING THE SUPEKHOWL THE UNIX FOUNDATION i \> I. i Macintosh System Sofrware ĚBk Mai OS PPG Mac OS X PPG Mai OS X Intel r. -MkL nux 1 i dne NeXT STEP 2.0 4.0 I k Other Unix CNU/Llnux 1 1 1 -1-1-II 1 1 1 1 1 1 1 1 1 1 1 1 1 BSB Unix ■-5 Fl-Oi BSD 1 r JrNetB5E> > rOperiBSD i 1 1 1 OpenSo arli SunOS 1-4 SunOS S / Solárii 1.0 - 1.6 T S 9 Solaris 1 0 i i i i i Ii i i j. I I 1 Ii 1 Ii Ii 1 AT& T Um x k f-,-r- T Novell SC :OZ Caldera IBM AIX Zdroj: http: //appleinsider. com Luděk Matýska • PV109: Historie a vývojové trendy ve VT • podzim 2020 21/32 FAKULTA INFORMATIKY I Masarykova univerzita MS-DOS (1981) ■ Klíčový, pro rozšíření nastupující nové platformy IBM PC ■ Základ systému tvořil ODOS (Ouick 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 • PV109: Historie a vývojové trendy ve VT • podzim 2020 22/32 FAKULTA INFORMATIKY I Masarykova univerzita MS Windows ■ 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, Nove U) ■ 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 • PV109: Historie a vývojové trendy ve VT • podzim 2020 23/32 FAKULTA INFORMATIKY Masarykova univerzita Microsoft Windows 1.0 iiiiiiiiiiiiiiiiiiiiiii Clock! Reuersi m jllllllll Game Skill MS-DOS Executiue File Uieu Special A C D \UTHnnus HBIIPrite - README.DOC File Edit Search Character Paragraph Document ABC.l BÜILE CALC. CALEh CflRDF CGA.E CGA.G CGA.L CITOr CLIPE CLOCH COMM. Microsoft Windows MS-DOS Executiue Uersion 1.01 Copyright @ 1985, Microsoft Corp Disk Space Free: 3002WÍ Memory Free: 303K CONTROL.EXE C00RA.F0N C00RB.F0N COORC.FON EGAMONO EGAMONO EMM.AT EMM.PC GRB LGO HPLf IBMt JGVÍ KERf i u r r r 11 r i a.i nforrnation shoul 'indows. Also co Addendum end HOUTTHE SPO D print from an ap his may be prefe zmfiguration as it nture change the ition of the WIN.Iľ Spoüler=no will c RUNNING BATCH (.BAT) FILE J If you run a standard applicatio should create a PIF file for the k Page 1 Ar ET Zdroj: http: //en. wikipedia. org Luděk Matýska • PV109: Historie a vývojové trendy ve VT • podzim 2020 24/32 FAKULTA INFORMATIKY I Masarykova univerzita Historie MS Windows Microsoft Windows family tree 19Ů5 1987 1989 1991 1993 1995 1997 1999 2001 2003 2005 2007 2009 1986 1988 1990 1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 Zdroj: https : //techenglish . wordpress . 00171/2009/10/29/11151:0^-of-microsoft-windows/ Luděk Matýska • PV109: Historie a vývojové trendy ve VT • podzim 2020 25 / 32 FAKULTA INFORMATIKY Masarykova univerzita Historie MS Windows Year 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 present Windows 1.0 Windows 2.1 x Windows 3.0 Windows 3.1x vYindows Millenn E:: s" C Windows nt 3.x Windows nt4.0 Windows XP A'in i Vista Windows 7 A:indívv3 8 - Windows 3 J__ _i Windows CE 2 0 Wmtows CE II Windows CE -y. Windows CE F.x Windows CE 6 Windows CE 7.0 Windows CE 2013 : ■. ; n ::s ■ Mobile vVind; : Lin bile 2ZZ'i SE Windows Mobiles Window Mcbile : jí ,'lndows Phone ľ Phone S.l - Mobiľ Zdroj:https://en.wikipedia.org/wiki/List_of_Microsoft_operating_systems Luděk Matýska • PV109: Historie a vývojové trendy ve VT • podzim 2020 26/32 FAKULTA INFORMATIKY I Masarykova univerzita Novell NetWare ■ Síťový OS vyvíjený od roku 1983, aktuální verze 6.5 ■ Založen na konceptu sdilenľsouboru namísto sdilenľ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ífové služby ■ NCP (NetWare Core Protocol) - předpokládal, že sít bude korektně fungovat většinu času ■ agresivní cachování ■ přístup přímo k souborům Luděk Matýska • PV109: Historie a vývojové trendy ve VT • podzim 2020 27/32 FAKULTA INFORMATIKY Masarykova univerzita Mobilní 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) ■ Prí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 • PV109: Historie a vývojové trendy ve VT • podzim 2020 28/32 FAKULTA INFORMATIKY I Masarykova univerzita OS Android ■ 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 • PV109: Historie a vývojové trendy ve VT • podzim 2020 FAKULTA INFORMATIKY Masarykova univerzita iOS (2007-) 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 Nemožnost přístupu k adresářové struktuře - soubory jsou dostupné z aplikací Do verze 4 multitasking omezený pouze na předinstalované aplikace v i Č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) ■ 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 • PV109: Historie a vývojové trendy ve VT • podzim 2020 30/32 FAKULTA INFORMATIKY Masarykova univerzita Historie vývoje mobilních OS 1000 100 1 2-002 1001 1004 1005 100« 1007 looe 1009 10 10 J 0 WlncLDfws CE 3.0 Windows CE 4. t Wind owi CE 5.k Cl E Ů Pod Danger Mobile Startups Android 1-1-' 1 f Google Gcogje Android 1J0 1-5 1.6 Android 2.0 Ap ple IPhone iPhcne 2.0 iPhcne 3.0 4.0 Symblan 1 EPOC Symbian OS i, 7 6 9.1 9.2 9.3 9.4 9.S f Symblan Fö li nd ati on 5ymblan Al Palm Palm OS í Cöbak Palm OS ünux/ALP webOS 1 1 Pälrv OS 3.0 4.0 s Pa n OS Sjí Gmec Wlncows Mobile S WiMo 6.1 HIM BlactBerry OS 2.0 1.0 4.0 4.1 4.2 4.3 4.5 +.7 EkitrJkůe.t^ OS J.O Zdroj:http://www.appleinsider.com Luděk Matýska • PV109: Historie a vývojové trendy ve VT • podzim 2020 31/32 FAKULTA INFORMATIKY Masarykova univerzita Historie vývoje mobilních OS Symbian (Nokia, Samsung, LG, Sonv Ericsson, etc.) Q5 9.2 OS 5.3 Q5 5.4 SED Symbian Platform 3,0 3,1 3,2 5,0 3rd Edition 3rd Edition, Feature Pack 1 3rd Edition, Feature Pack 2 51 h Edition (SymbianM) SymbianA2 SymbianA3 SymbianM _ Research in Motion BlackBerry OS {BlackBerry) 4.1 Branch 4.2 Branch 4.5 Branch 4.6 Branch 4.7 Branch 5.0 Branch 4.1.0 4.2.1 4.5.0 4.6.0 1.6.1 4,7.0 5.0.0 _ Apple iPhone OS (iPhone, iPod Touch, iPad) 1.0 1.1 2.0 2.1 2.2 3.0 3.1 3.2 4.0 ULI L 0,2 l.l.l Ll-2 L.L3 2.0.1 I 2.0.2 2.2.1 3.0.1 3.1. Z 3.L.3 Microsoft Windows CI (HTC, Samsung, LG, Toshiba, Sonv Ericsson, Dell, Acer, etc.) KIN 1, KIN 2| (Zune,Zune HD) 5.2 6.0 Microsoft Windows Mobile Microsoft Windows Phone 7 Microsoft KIN OS Microsoft Zune OS 5.0 6.0 6.1 6.5 7.0 1.0 l.K Branch 2.x Branch 3.x Branch 4.x Branch 6.5.1 6.5.3 6.5.5 Linu; t - Smartphones (HTC, Samsung, LG, Toshiba, Sony Ericsson, Dell, Acer, etc.) (Nokia) (Nokia, LG, Intel, etc.) (Palm) (Samsung) Google Android Maemo MeeGo webOS bada 1.5 1.6 2.0 2.1 5.0 1.0/1.1 Branch 1.2 Branch 1.3 Branch 1.4 Branch lj( 1.0 1.0.2 1 1.0.3 1.0.4 1.1.0 1.2.0 1.2.1 1.3.1 1.3.5 1.3.5.1 1.4.0 1 1.4.1.1 Google Chrome OS/Chromium OS Intel Moblin (Maemo 6.0) Ubuntu Netbcck Edition Alpha Stages 2.0 2.1 S.04 (LTS) S.10 9.04 9.10 10.04 (LTS)_I_10.10_ Linux - Netbooks Zdroj:https://upload.wikimedia.org/wikipedia/commons/f/f7/Mobile_os.png Luděk Matýska • PV109: Historie a vývojové trendy ve VT • podzim 2020 32 / 32