Michal Houda houda@kcr.zf.jcu.cz Jihočeská univerzita v Českých Budějovicích Zemědělská fakulta Spuštění počítače BIOS (Basic Input-Output System) konfigurace počítače z paměti CMOS; autonomní test počítače při spuštění; inicializace komponent; předání řízení zavaděči operačního systému. Systémové prostředky současně použitelné pouze jedním programem: tiskárna; procesor (!); současně použitelné více programy, ale ty se o prostředek musí rozdělit: pamět ; obrazovka; záznamová zařízení (pevný disk,... ); použitelné bez omezení: systémové hodiny. p. 1/48 p. 3/48 p. 5/48 Osnova definice operačního systému; úkoly operačního systému; souborové systémy; přehled operačních systémů. Operační systém základní programové vybavení počítače; program stojící nad všemi ostatními programy; kontrola nad přístupem k jednotlivým prostředkům hardwaru (procesoru, paměti, vstupním a výstupním zařízením,... )... správce systémových prostředků Úkoly operačního systému správa paměti; správa procesů; správa zařízení. p. 2/48 p. 4/48 p. 6/48
Správa paměti přidělování paměti jednotlivým procesům; udržování informací o paměti, která je volná a obsazená; odebrání paměti skončenému programu (procesu); ochrana paměti; pojem odkládací soubor (swap file). Správa procesů multitasking současný běh více úloh (programů) v jednom systému; operační systém zajišt uje spravedlivé rozdělení systémových prostředků mezi jednotlivé aplikace; možnost přepínání mezi programy úkoly (task switching); kooperace (procesy na popředí a pozadí); preemptivní multitasking (přiřazení priorit). Správa zařízení základní schéma počítač (aplikace, proces) ovladač (program) zařízení (periferie, device) p. 7/48 p. 9/48 p. 11/48 Správa procesů proces = konkrétní aplikací definovaný úkol; správa procesů: rozdělování systémových prostředků pro jednotlivé procesy; pojem multitasking. Vlastnosti víceúlohového OS možnost přechodu k jinému programu bez nutnosti ukončit předchozí úlohu; unadnění funkce ovladačů; usnadnění kooperace mezi programy (např. výměna dat); lepší využití kapacity počítače; víceuživatelský režim; růst režie operačního systému; vyšší požadavky na hardware (složitost); riziko ztráty dat. Správa zařízení ovladač přiděluje dané zařízení na základě požadavku procesů; odděluje aplikační a hardwarovou vrstvu (např. požadavek na tisk vs. realizace požadavku na konkrétní tiskárně); jako součást OS, externí programy. p. 8/48 p. 10/48 p. 12/48
systém správy souborů a adresářů na disku; každý operační systém má svůj nativní souborový systém, které se liší svými vlastnostmi; volba operačního systému = volba souborového systému. Základní pojmy vlastnosti souboru název; velikost; datum a čas vzniku, modifikace, čtení; přístupová a vlastnická práva; další vlastnosti (komprese, šifrování); vlastní obsah. Základní pojmy sdílení, přístupová práva možnost přístupu k souboru cizím, jasně definovaným uživatelům; možnost nastavit souboru konkrétního uživatele jako vlastníka, který má právo všech operací se souborem a také možnost určit přístupová oprávnění pro ostatní uživatele; různé úrovně oprávnění (čtení, zápis). p. 13/48 p. 15/48 p. 17/48 Základní pojmy soubor (file) z technického hlediska kombinace nul a jedniček; o převod do lidské podoby se stará souborový systém; aplikace tak nemusí znát způsob, jak jsou data (na discích, v paměti, na síti) uložena. Základní pojmy adresář (directory) zvláštní typ souboru, obsahující (namísto dat) seznam souborů v něm umístěných; Windows: složka (folder). Základní pojmy fragmentace nežádoucí dělení souboru do několika částí uložených na různých místech na disku; Windows: nelze zabránit, možnost jednorázového (dočasného) odstranění; některé OS na bázi unixu fragmentaci vůbec neznají. p. 14/48 p. 16/48 p. 18/48
Základní pojmy žurnálování zaznamenávání všech probíhajících operací (čtení, zápis); zaručena rychlá obnova systému po havárii; daní za bezpečnost je nižší rychlost. unix/linux variabilita variant: optimalizace na velikost, rychlost, ochranu před poškozením, bezpečnost, atd.; zpravidla extrémně nízká nebo vůbec žádná fragmentace souborů; bezpečnost: propracovaný systém přístupových práv. MS-DOS, Windows: FAT princip: v tabulce FAT (File Allocation Table, alokační tabulka souborů) je zapsáno umístění všech souborů na disku; požadavek na čtení souboru: v tabulce se vyhledá jeho umístění na disku; největší nevýhody: fragmentace, efektivita využití místa, absence komprese, šifrování a bezpečnostních mechanismů. p. 19/48 p. 21/48 p. 23/48 unix/linux velké množství různých variant, ale společná myšlenka; vše je soubor ; základní struktura: i-node (indexový uzel) obsahuje všechny informace kromě jména souboru; adresář: seznam jmen souborů a odpovídajících i-nodů; jeden soubor (i-node) může mít více jmen (tzv. hardlinks, pevné odkazy). Linux ext2 stabilita, bezpečnost, nízká rychlost obnovy po havárii; ext3 doplněno žurnálování a další pokročilé vlastnosti; ReiserFS rychlý žurnálový systém, neukončený vývoj (nižší stabilita); JFS robustní žurnálový systém, vyšší náročnost, malé rozšíření. MS-DOS: FAT12 počítačová prehistorie: FAT12 (1981); na každou adresu je rezervováno 12 bitů; disk je rozdělen na 2 12 = 4096 částí (clusterů), každá o velikosti 8 kb; celkem tedy možno adresovat pouze 32 MB; dnes pouze na disketách. p. 20/48 p. 22/48 p. 24/48
MS-DOS, Windows: FAT16 FAT16 adresace 16 bity; 2 16 = 65 536 clusterů o velikosti od 0,5 do 32 kb maximálně 2 GB; MS-DOS, Windows 95, Windows NT 3. p. 25/48 Windows NT: NTFS vznik v roce 1988, 64-bitový, 2 64 = více jak 18 kvadriliónů clusterů, omezení na disk 2 TB; odlišná filozofie: srdcem tabulka MFT (Master File Table): soubor obsahující seznam souborů, pro každý soubor rezervován jeden řádek, který obsahuje veškeré informace o souboru; obnovitelnost: každá operace se provede bud celá, nebo vůbec (tzv. transakční princip); systém práv, komprese v reálném čase; Windows NT 4, Windows 2000, Windows XP. p. 27/48 OS/2: HPFS (High Performance File System) vznik v roce 1989 pro operační systém OS/2; snaží se řešit nedostatky systému FAT; bez fragmentace, dobrá ochrana proti chybám, rozšířené atributy souboru, velikost do 512 GB. p. 29/48 Přehled operačních systémů MS-DOS, Windows: FAT32 FAT32 adresace 32 bity; 2 32 = 4,3 miliardy clusterů až 2 TB; záložní kopie tabulky FAT (méně náchylný na selhání systému), další změny a vylepšení; stále chybí podpora pro bezpečnostní mechanismy; Windows 95-OSR2, Windows 98, Windows ME. Windows NT: NTFSv5 nová generace systému NTFS; podpora šifrování, diskových kvót; Windows NT 4 SP4, Windows 2000, Windows XP. MS-DOS a Windows; Apple MacOS; Linux; komerční unixové systémy; Novell Netware; PalmOS. p. 26/48 p. 28/48 p. 30/48
Microsoft MS-DOS MS-DOS (Microsoft Disc Operating System); vznik v roce 1981 pro nové osobní počítače PC od firmy IBM; přestože nebyl první, nebyl příliš dokonalý a obsahoval spoustu chyb, díky úspěchu PC zaznamenal i MS-DOS obrovský úspěch; postaven na souborovém systému FAT; jeho klony (PC-DOS, DR-DOS) se neujaly. Microsoft Windows 1995: Windows 95 nový samostatný 32-bitový systém; postaven na MS-DOSu 7.0, ale využívá jej prakticky jen ke svému spuštění; výrazný předěl ve vývoji operačních systémů firmy Microsoft, nové uživatelské rozhraní; 1996: Windows 95-OSR2 (nový souborový systém FAT32). Microsoft Windows 2000: Windows ME (Millenium Edition); poslední verze založená na souborovém systému FAT; nepříliš úspěšná, prodej krátce po uvedení zastaven. p. 31/48 p. 33/48 p. 35/48 Microsoft Windows 1985: MS Windows 1.0 (vývoj od 1981, původně Interface Manager); 1987: MS Windows 2.0 (první aplikace: Excel, Word, CorelDraw, PageMaker); 1990: MS Windows 3.0 (výrazný úspěch, vznik množství aplikací); 1992: MS Windows 3.1 (výrazné vylepšení systémů); první čtyři verze byly pouze grafickou nadstavbou pro systém MS-DOS, nikoliv samostatným operačním systémem. p. 32/48 1998: Windows 98; Microsoft Windows integrace prohlížeče Internet Explorer do systému; další funkční změny (podpora USB, technologie Plug&Play... ); 1999: Windows 98-SE (Second Edition, Druhé vydání). p. 34/48 Microsoft Windows NT 1993: Windows NT 3.1 (NT = New Technology) uživatelské rozhraní podobné Windows 3.1, ale zcela nové jádro systému, plně 32-bitový systém; souborový systém NTFS; 1994: Windows NT 3.5 (Workstation/Server) výrazné vylepšení systému a snížení nároků na pamět. p. 36/48
Microsoft Windows NT UNIX UNIX 1996: Windows NT 4.0 (Workstation/Server); uživatelské rozhraní ve stylu Windows 95; další vylepšování systému; čtyři servisní balíčky (Service Pack). 2000: Windows 2000 podpora technologie Plug&Play; integrace Internet Exploreru do systému; podpora notebooků. p. 37/48 1965 1971, Bell Telephone Laboratories (Massachussets Institute of Technology, divize společnosti AT&T) a General Electrics: první provozuschopný systém unixového typu (Multics); vznik assembleru a v něm přepsaného systému pojmenovaného UNIX; 1973: UNIX kompletně přepsán do nového jazyka C; 1977: poprvé UNIX převeden (portován) z počítače PDP na jiný hardware; p. 39/48 současnost dvě základní varianty: System V SVR4 (USL Unix System Laboratories, dnes Novell; SVR4 znamená System V Release 4); BSD 4.4 (Berkeley Software Distribution); další varianty a porty systémů unixového typu: SUN Solaris (7.0, 8.0), FreeBSD 4.1, SCO (Santa Cruz Operation) UnixWare (7, 2.1), BeSoft BeOS, Hewlett-Packard HP-UX11 (64-bitový systém pro servery na platformě PA-RISC), Digital (Compaq) OpenVMS a Tru64 UNIX (64-bitové systémy na platformě Alpha), SGI (Silicon Graphics Inc.) Irix. p. 41/48 Microsoft Windows NT UNIX Linux 2001: Windows XP (Home/Professional); nové uživatelské rozhraní; vzdálená správa systému; změna licenční politiky (vazba na hardware). 2006?: Windows Longhorn změna souborového systému, nově postaveného na SQL (Structured Query Language, databázový dotazovací jazyk); výrazně přepracované 3D rozhraní. 1979: společnosti AT&T protimonopolním úřadem zakázána činnost v oblasti počítačového průmyslu, UNIX převeden na univerzity; 1982: první komerční verze UNIXu (Unix System III). původně studentský počin Linuse Torvaldse (Univerzita Helsinky); založen na myšlenkách unixu (Minixu), ale napsán kompletně od začátku; Torvalds chtěl vytvořit jádro, které by dokonale využilo možnosti procesorů i386 a i486 (Intel); 1991: první spustitelná verze 0.02; 14. března 1994: verze 1.0. p. 38/48 p. 40/48 p. 42/48
Linux distribuován pod licencí GNU GPL (GNU General Public License, nadace Free Software Foundation) jako tzv. OpenSource (otevřený zdrojový kód) zdrojový kód je uživateli dostupný; kdokoliv může kód upravovat; za produkty může (ale nemusí) být požadována úplata, ale musí být poskytnut zdrojový kód; nabyvatel programu má svobodné právo s ním zacházet (např. zkopírovat zdarma pro další zájemce). na vývoji jádra se podílí tisíce dobrovolníků z celého světa i komerční firmy; za třináct let byl vyvinut úspěšný a kvalitní operační systém. p. 43/48 Mac OS pro počítače Apple (Macintosh); Mac OS 9.0 (starší systém); Mac OS X (založeno na unixu) kompaktní vyladěný operační systém. p. 45/48 Novell NetWare vznik 1983, specializovaný sít ový systém; instaluje se jen na servery, stanice mají některý z běžných operačních systémů; souborový systém NSS; aktuální verze: NetWare 6. p. 47/48 Linux OS/2 operační systémy pro kapesní počítače mnoho distribucí pro různé platformy (Intel, Alpha,... ): Mandrake Linux; SuSE; RedHat; Slackware; Debian; a stovky dalších. dop. literatura: Linux dokumentační projekt (kolektiv autorů, 3. aktualizované vydání, Computer Press Brno, 2003). p. 44/48 společný projekt IBM a Microsoftu pro platformu Intel; v době svého vzniku (1987) byl kvalitnější než později vyvinutý systém Windows, ale příliš se neujal; nové verze se stále, i když v malém množství, prodávají (OS/2 Warp). p. 46/48 PDA (Personal Digital Assistant) malé kapesní počítače; dva soupeři: Palm OS a Windows Mobile (dříve CE) začíná se objevovat Linux; nově se objevují také operační systémy pro vyspělé mobilní telefony (tzv. smartphony) např. Symbian. p. 48/48