Program Operační systém a jeho design, tabulka rozdělení disku (podrobněji), Instalace Windows a Linuxu krok po kroku, více OS na jednom počítači (multiboot), přeinstalace systému, migrace OS na jiný disk nebo HW. Záchrana dat před reinstalací. historie WINDOWs a DOS, Další OS.
Operační systémy - historie http://en.wikipedia.org/wiki/history_of_operating_systems asi 50 léta dvacátého století dávkové zpracování úloh každá úloha běžela sama na celém počítači přišlo se na to, že počítač tak není využíván efektivně zrodil se program MONITOR, předchůdce operačního systému zavádění úloh do počítače automaticky účetnictví - čas procesoru, počet vytištěných stran apod. další vývoj 60tá léta snaha odstínit hardware počítače od programů vynález souborového systému podprogramy pro tisk, přístup k disku apod accounting (zase účetnictví) 1964 nápad na víceúlohový operační systém což takhle spustit více programů najednou, a procesor mezi nimi bude přepínat
Funkce operačního systému Jádro OS: Přiděluje úlohám procesorový čas (plánuje je) Přiděluje a spravuje paměť Tvoří rozhraní mezi hardware počítače a programy Implementuje souborový systém, umožňuje tak aplikacím snazší práci ze soubory Řídí přístup, uživatelská práva Poskytuje aplikacím API (aplikační rozhraní) pro zobecněný přístup k různým částem OS. (Někdy API pro GUI grafické uživatelské rozhraní) Systémové programy základní programy pro interakci s jádrem OS shelly (bash, command com) příkazy pro výpis souborů, pro kopírování, kontrola integrity souborového systému atp. GUI grafické uživatelské rozhraní je někdy samostatná aplikace (Linux)
Současné operační systémy http://en.wikipedia.org/wiki/operating_systems Rodina operačních systémů Windows Windows Longhorn Windows XP Windows 2000,Windows NT,Windows Me Rodina operačních systémů GNU/Linux Debian,Mandrake,Redhat,Fedora,SUSE,... Rodina dinousauřích OS Unix Solaris,IRIX, BSD, FreeBSD, NetBSD, VMS, Mac OS Rodina OS pro mobilní zařízení Linux, Windows CE, Symbian, PalmOS Rodina OS pro vestavěná zařízení speciální OS, kde je nutné dodržet časová omezení QNX, RTOS (auta, raketoplány, stíhačky apod) Rodina herních OS AmigaOS, NeoGeo SNK atd
Architektura moderních OS Kernel, Jádro Drivers, Ovladače souborový systém Hardware CPU, paměť, periferie Multitasking: preemptivní knihovny DLL, so aplikace1 aplikace2 úloze je přidělen procesor na určitý časový úsek, pak je jádrem spuštěna úloha jiná, stav úloh se uschovává, strategie pro většinu současných OS kooperativní úloha sama požádá jádro, pokud už nechce běžet používá se ve vestavěných OS
Procesy Proces obsahuje: stav priorita vlastník PID (číslo procesu) alokovanou paměť kontext ps ax, kill každý proces má rodiče a může mít potomky.
Souborové systémy pro práci s daty součást jádra OS Funkce ovladače pro souborový systém: čtení a zápis dat autorizace přístupu Souborový systém je uložen v nějakém oddílu na disku (partition table) na disketě nebo na USB klíčence partition není, takže zaujímá celé médium data DATA co jsme do počítače nahráli, hry, mp3, operační systém, dokumenty... pomocné datové struktury udržující informace o pozici dat ze souboru na disku => METADATA
Formát disku nízkoúrovňový zapisuje magnetické značky, kde začíná sektor apod provádí se speciálním servisním programem nebo jen výrobce vysokoúrovňový provádí ho operační systém zapisuje metadata datové struktury, které organizují disk např. rozdělení disku na oblasti klasické formátování znamená nahrání metadat (kartotéky) souborového systému do oblasti
Ovladače hardware Způsob distribuce součástí OS dodají výrobci HW externě (CD, stáhnout z internetu) Podoba binární forma téměř 100% způsob distribuce pod OS WINDOWS některé ovladače pod Linux (ATI nebo Nvidia) musí existovat stejné jádro jako pro které byl ovladač přeložen u OS windows bez problémů u Linux dost problém, spousta jader, spousta distribucí Zdrojový tvar ve formě zdrojového kódu v jazyce C uživatel si sám přeloží Kombinovaná forma část rozhraní pro konkrétní kernel se překládá část ovladače je binární
Evoluce systémů Windows Dva druhy windows: založené na jádře OS VMS Windows NT,Windows 2000,Windows XP, Windows LongHorn původně jako nadstavba nad operačním systémem DOS Windows 1.0, Windows 2.0, Windows 3.11 s novým jádrem vymyšleným v Microsoftu Windows 95, Windows 98, Windows ME DOS http://en.wikipedia.org/wiki/ms-dos disk operating system jednouživatelský, textově orientovaný instalovaný na první PC od IBM (rok 1981) kompatibilní s ještě starším OS CP/M Poslední verze přišla s Windows ME Součást předchozích Windows 98 a 95 příkatový interpret command.com příkazy: dir cd mkdir copy
Evoluce Linux Opakování z minulé hodiny: jádro naprogramováno Linusem Torvaldsem jako free alternativa k operačnímu Unix like systému Minix (1991) systémové programy byly převzaty z projektu GNU (viz minulá přednáška) Distribuce Linuxu obsahují jádro OS - ve verzi 2.4.x nebo 2.6.x balíčkovací systém aplikační programy různé aplikace pro nastavení systému
Počítač s více OS na jednom disku Proč ne, ideální např. pro poznávání Linuxu. stačí správně: rozdělit disk (změna partition table) nastavit bootloader Problémy: kompatibilita souborových systémů např. do souborového windows systému NTFS nejde zapisovat (řešení existuje ale je hodně složité a nesystémové) Windows neznají souborové systémy použité v Linuxu (lze řešit) přepsání zavaděče operačního systému např. při reinstalaci Windows starší také Windows nerozumí oddílům s NTFS
Zavaděče operačních systémů Multiboot Multiboot: http://www.tldp.org/howto/multios-howto.html zavaděč OS se zeptá jaký OS chceme spustit Zavaděč z novějších Windows umí zavést např i Windows 98 nebo XP, 2000 Já doporučuji používat zavaděče z Linuxu Lilo starší druh zavaděče, není při startu příliš interaktivní http://www.tldp.org/howto/multiboot-with-lilo.html konfigurační soubor: /etc/lilo.conf Grub v současnosti preferovaný bootloader, lze si sním povídat ještě před startem systému lze využít pro specifikaci systému, který si přeju nabootovat konfigurační soubor: /boot/grub/menu.lst http://www.tldp.org/howto/multiboot-with-grub.html http://www.tldp.org/howto/linux+win9x+grub-howto/index.html
Typické rozdělení disku Opakování z minula Záznamy pro primární oddíl vyplní: disk C: pro DOS disk C: pro Windows hibernační soubor Zbytek disku je dobré rozdělit jako rozšířený oddíl, už prakticky libovolně dle naších požadavků OS Linux může být uložen až v rozšířené oblasti (žádný problém) Device Boot Start End Blocks Id System /dev/hda1 1 6 48163+ 16 Hidden FAT16 /dev/hda2 7 19 104422+ 16 Hidden FAT16 /dev/hda3 20 593 4610655 1b Hidden Win95 FAT32 /dev/hda4 594 3737 25254180 5 Extended /dev/hda5 594 848 2048256 6 FAT16 /dev/hda6 849 2123 10241406 7 HPFS/NTFS /dev/hda7 2124 2140 136521 82 Linux swap /dev/hda8 2141 2523 3076416 83 Linux
MBR a tabulka rozdělení disku její část uložena v MBR Master Boot Record sektor s log. číslem nula obsahuje tabulku rozdělení disku a zaváděč systému zabírá jen jeden sektor 512B, poslední dva byte sektoru 0x55AA položky: v MBR jsou možné jen 4 CHS začátku oblasti (speciální hodnota CHS pro moc ) lineární adresa začátku oblasti obdobné záznamy pro konec oblasti záznam o typu oblasti (partition) 82 linux swap C FAT32LBA viz seznam příznak bootovatelnosti modifikace tabulky programem FDISK, (CFDISK, SFDISK, partition magic) Partition-Rescue-HOWTO
Rozšíření partition table je možné jeden záznam v tabulce označit za rozšířený rozšířená oblast se rekurzivně zase skládá z jednotlivých podoblastí v každém prvním sektoru oblasti je část tabulky s záznamem o podoblasti Typ oblasti je 0x5 nebo 0xf (pro velké disky) nebo 0x85 jen pro linux
Programy pro změnu oblastí na disku, pro kopírování oblastí 2 problémy změnit záznamy v tabulce rozdělení disku, případně utvořit nové změna metadat souborového systému tak aby se všechno zvětšilo, nebo zmenšilo programy partition magic (komerční) gparted (Free Software) Kopírování: různé zálohovací nástroje Norton ghost apod příkaz dd v linuxu Postup při kopírování windows na nový disk: 1. nabootuju linux 2. vytvořím partition table stejně velkou jako už mám jen na novém disku 3. dd if=/dev/hdxy of=/dev/hdxy x=a b c,y = 1 2 3 4. boot z klíčenky nebo diskety kde máme zavaděč grub 5. nastartujeme windows a nainstalujeme windowsový zavaděč
Typické instalační kroky při instalaci OS Boot z CD nebo DVD Rozdělení disku Zápis souborového systému Instalace Vytvoření uživatelů, heslo administrátora (NENECHÁVAT PRÁZDNÉ) Zápis zavaděče OS Nastavení systému Nastavení, nainstalování ovladačů HW
Instalace Microsoft Windows CD, instalační klíč, připravený service pack http://www.blackviper.com/articles/os/installxppro/installxppro1.htm Nepřipojujte Windows k Internetu pokud neinstaluje z CD s posledním servicepackem!!!! Váš počítač se zaviruje cca do 3 minut... Stáhněte si nebo si servicepack obstarejte předem Service Pack 2 "for multiple computers" http://www.microsoft.com/downloads/details.aspx?familyid=049c9dbe-3b8e-4f30-8245-9e368d3cdb5a&displaylang=en Pokud vše funguje instalace je přímočará Pokud ne: opsat chybové hlášení do googlu, hledat stránku na microsoft.com posunout systémové hodiny do minulosti zakázat DMA na disku zakázat všechna on-board zařízení update BIOS
Instalace Linux Viz slajdy z installfestu 2003 http://installfest.cz/index0.php instalace probíhá typickými fázemi navíc: je třeba vytvořit partition pro odkládací prostor
Přenos operačního systému na nový disk Použijme buď nějaký z komerčních produktů (norton ghoast) nebo Linux Knoppix nový disk zapojíme do počítače nabootujeme knoppix vytvoříme na novém disku oddíl který je stejně velký jako na původním disku příkazem dd obsah disku zkopírujeme dd if=/dev/hdx2 of=/dev/hdy3
Přenos operačního systému na nový počítač (výměna motherboardu) OS Linux stačí vyměnit kernel (pouze pokud jsme si ho kompilovali sami) pokud používáme distrbuci s balíčky v binárním tvaru (až na Gentoo Linux) pak je hotovo OS Windows odinstalovat všechny ovladače sepcifické pro motherboard ale spíše nutná celková reinstalace systému
Kopírování dat před reinstalací Pokud systém funguje, data zazálohujeme např na DVD V Linuxu zálohujeme domovské adresáře a adresáře s nastavením /etc (pro pozdější referenci) Pro Linux i Windows: Pokud systém nefunguje nabootujeme knoppix a zazálohujeme např přes druhou DVD mechaniku nebo USB klíčenku
Reinstalace Linux Spustíme znovu instalaci, požádáme o formát kořenového souborového systému
Reinstalace windows Nejlepší je oddíl už znovu zformátovat, buď v instalaci nebo v Linuxu dd if=/dev/zero of=/dev/hdx3