SYSTEMY OPERACYJNE Historia podstawowych, systemów operacyjnych. System operacyjny (ang. skrót OS Operating System) - program komputerowy bądź zbiór programów, który zarządza sprzętem oraz aplikacjami komputera. Podstawą wszystkich systemów operacyjnych jest wykonywanie podstawowych zadań takich jak: kontrolowanie i przypisywanie pamięci, przydział czasu procesora, obsługa urządzeń, ustalanie połączeń sieciowych oraz zarządzanie plikami. Wiele systemów operacyjnych posiada środowiska graficzne ułatwiające ich obsługę. Budowa systemu operacyjnego Przyjęto podział na trzy główne elementy budowy systemu operacyjnego: • jądro systemu wykonujące zadania • powłoka - specjalny program komunikujący użytkownika z systemem operacyjnym, • system plików - sposób zapisu struktury danych na nośniku. 1. system internetowy 2. Amiga 3. systemy firmy Apple 4. systemy firmy Be i pochodne 5. systemy firmy Digital (DEC)/Compaq 6. systemy firmy IBM 7. systemy firmy Microsoft i pochodne 8. systemy firmy Novell 9. NeXT 10. systemy firmy Unisys 11. UNIX i jego pochodne 12. systemy czasu rzeczywistego (realtime systems) 13. Inne PODZIAŁ SYSTEMÓW Jednozadaniowe / Wielozadaniowe DOS / Windows, Linux Jednodostępne / Wielodostępne DOS, Win9X, ME, BeOS / Win NT,XP, Mac OS X, UNIX Real Time - System operacyjny czasu rzeczywistego -procesy mogą być wykonywane w zadanym momencie (bez opóźnień) WebOS - (Internetowy system operacyjny z ang. Web operating system) to zaawansowany technologicznie skrypt dostępny z poziomu przeglądarki, imitujący wizualnie i fizycznie stacjonarny system operacyjny. System operacyjny DOS • DOS pojawił się na początku lat 80-tych, wraz z serią komputerów IBM PC • Obecnie dostępnych jest kilka odmian DOS’a: MS DOS (Microsoft), PC DOS (IBM), darmowy DR DOS (Caldera) oraz wolny Free DOS (w trakcie tworzenia) • DR DOS 7 zapewnia wielozadaniowość • DOS składa się z 3 zasadniczych części: BIOS’u, jądra systemu i interpretera poleceń BIOS BIOS to podstawowy system obsługi wejścia i wyjścia (Basic Input Output System). Jest on zapisany w pamięci stałej ROM komputera i zawiera: • procedury obsługi klawiatury i monitora (oznaczenie CON), stacji dysków (A:, B:), twardego dysku (C:), drukarki (LPT1), łącza komunikacji szeregowej (COM1) • procedury POST (Power On Self Test); po uruchomieniu komputera testują one mikroprocesor, pamięć operacyjną RAM, sterowniki monitora, klawiatury i stacji dyskietek • procedury ładowania, które wczytują z dyskietki lub dysku twardego dalsze części systemu operacyjnego Jądro systemu Zawarte w 2 zbiorach systemowych, znajdujących się na dyskietce systemowej lub w katalogu podstawowym dysku twardego: • IO.SYS rozszerza BIOS o sterowniki dodatkowych urządzeń (np. dysku twardego, karty dźwiękowej itp., zainstalowanych w systemie i wskazanych w pliku konfiguracyjnym CONFIG.SYS • MSDOS.SYS moduł łączący procedury niskiego poziomu, zawarte w BIOS’ie i pliku IO.SYS z poleceniami systemu operacyjnego; zarządza on plikami na dyskach twardych i dyskietkach Interpreter poleceń — COMMAND.COM • interpretuje polecenia wprowadzane z klawiatury • jeśli polecenia nie ma na liście poleceń wewnętrznych systemu DOS, COMMAND.COM szuka go w katalogach zdefiniowanych w zmiennej PATH - jeśli znajdzie, wczytuje plik do pamięci RAM i uruchamia • jeśli nie znajdzie, wyświetla komunikat o błędzie: Bad command or file name • komendy DOS’a, rozpoznawanych przez COMMAND.COM, nazywamy komendami wewnętrznymi - tak jak sam COMMAND.COM, rezydują one w pamięci operacyjnej RAM • pozostałe komendy DOS’a, zwane komendami zewnętrznymi, są osobnymi programami umieszczonymi na dysku systemowym, zwykle w katalogu C:\DOS; po ich wywołaniu przez użytkownika, COMMAND.COM wczytuje je do pamięci RAM i uruchamia • przykłady komend wewnętrznych: del, dir, copy i zewnętrznych: xcopy, tree, format Etapy ładowania DOS’u • po włączeniu komputera do prądu rozpoczyna prace BIOS • wykonuje się procedura POST • procedura ładująca szuka w pierwszym sektorze (tzw. boot sector) dyskietki lub twardego dysku program ładujący (bootstrap) • bootstrap sprawdza, czy na dysku znajduje się jądro systemu (nie musi to być DOS - w podobny sposób uruchamiają się też z inne systemy operacyjne, np. GNU/Linux, Windows 98, OS/2, BeOS) • jeśli bootstrap nie odnajdzie jądra systemu, wyświetla komunikat: Non-system disk or disk error Replace and strike any key when ready • jeśli znajdzie jądro DOS’a, wczytuje najpierw IO.SYS, a następnie MSDOS.SYS • system szuka pliku konfiguracyjnego CONFIG.SYS i wczytuje zawarte w nim ustawienia • MSDOS.SYS szuka COMMAND.COM, wczytuje go do pamięci RAM uruchamia • COMMAND.COM szuka pliku AUTOEXEC.BAT i wykonuje zawarte tam po-lecenia startowe; jeśli go nie znajdzie, żąda podania daty i czasu • zostaje wyświetlony znak zgłoszenia systemu (tzw. PROMPT), po czym system oczekuje na polecenia Plik konfiguracyjny CONFIG.SYS • wczytywany przy starcie systemu przez MSDOS.SYS • zawiera zestaw parametrów, definiujących konfiguracją oraz wskazujących dodatkowe sterowniki urządzeń zewnętrznych • przykładowa zawartość: LASTDRIVE=Z \\ FILES=40 \\ DEVICE=C:\DOS\HIMEM.SYS \\ Zmienne środowiskowe Zmienne środowiskowe to parametry systemowe lub definiowane przez użytkownika, przechowywane w pamięci operacyjnej , np.: • PATH - zmienna systemowa określająca katalogi, do których zagląda COMMAND.COM w poszukiwaniu programów do wykonania (czyli plików o rozszerzeniu *.COM, *.EXE, *.BAT) • PROMPT — określa wygląd znaku zgłoszenia systemu (wyglądającego np. tak: C:\> ) • zmienne środowiskowe można definiować wprost z klawiatury komendą SET • te, które chcemy definiować przy każdym starcie systemu, umieszcza się w pliku AUTOEXEC.BAT, który jest wykonywany automatycznie przez COMMAND.COM na końcu inicjacji systemu Minimalne Zalecane Procesor Intel 80486DX Procesor Intel Pentium MMX 100 MHz lub szybszy 16 MB Pamięci RAM 32 MB Pamięci RAM 200 MB wolnego miejsca na dysku 300 MB wolnego miejsca na dysku VGA (640x480) 16 kolorów Super VGA (800x600) 256 kolorów Napęd CD-ROM (tylko dla wersji pudełkowej) Napęd CD-ROM i/lub DVD-ROM Rejestr Windows, a dokładnie rejestr ustawień w systemach operacyjnych Windows to hierarchiczna baza danych konfiguracyjnych. Są w niej przechowywane informacje o konfiguracji i ustawieniach m.in. użytkowników, urządzeń podłączonych do komputera, zainstalowanych programów. Sterownik urządzenia to program lub fragment programu odpowiadający za dane urządzenie i pośredniczący pomiędzy nim, a resztą systemu komputerowego. Service Pack to nazwa darmowego dodatku dla systemów operacyjnych Microsoftu, ale także dla aplikacji serwerowych i klienckich tej firmy. Jest to zestaw aktualizacji bezpieczeństwa i nowych funkcji dla systemu operacyjnego oraz aplikacji. System plików FAT 16 – MS-DOS -95 FAT 32 – 98, 95OSR2 NTFS – XP, Vista Systemy / środowiska 16 bitowe środowiska operacyjne – MS DOS, Win1, Win2 16/32 hybrydowe środowiska operacyjne – Win3 16/32 hybrydowe systemy operacyjne – Win3.11. Win95/98 32 bitowe systemy operacyjne – NT3.1, XP, Vista 64 bitowe systemy operacyjne – NT3.1-4.0, Vista Minimalne / Zalecane Procesor Pentium/AMD 166 MHz lub szybszy Procesor Pentium/AMD 300 MHz lub szybszy 64 MB Pamięci RAM 256 MB Pamięci RAM lub więcej 1,5 GB wolnego miejsca na dysku 2 GB wolnego miejsca lub więcej na dysku Super VGA (800x600) Adapter wideo i monitor o wyższej rozdzielczości. Napęd CD-ROM (tylko dla wersji pudełkowej) Napęd CD-ROM lub DVD-ROM lub blu-ray disc Konfiguracja minimalna (wg producenta), przy której niektóre funkcje systemu Windows Vista są niedostępne: • Procesor 32- lub 64-bitowy o częstotliwości 800 MHz, zalecane 1GHz • 512 MB pamięci operacyjnej, zalecane 1 GB • Karta graficzna SVGA (o rozdzielczości 800×600), zalecane 128 Mb • Dysk twardy o pojemności 20 GB i 15 GB wolnego miejsca, zalecane 40 GB i mający 15 GB, system zajmuje 8GB Napęd CD-ROM. Unix Time-Sharing System (pisane również jako UNIX, choć nie jest to skrót – nazwa "UNIX" jest kalamburem określenia MULTICS, który był wzorem dla Uniksa) - system operacyjny napisany w 1969 r. w Bell Labs (UNIX System Laboratories, USL) przez Dennisa Ritchie i Kena Thompsona. Rozwijany później w bardzo dynamiczny sposób, co zaowocowało powstaniem wielu odmian i implementacji. Kategorie Systemy Unix i uniksopodobne zwykle za Erikiem Raymondem dzieli się na trzy kategorie: • systemy charakteryzujące się historyczną ciągłością kodu źródłowego • pochodne BSD: FreeBSD, NetBSD i OpenBSD • pochodne AT&T oraz BSD: NCR UNIX, Solaris, UnixWare • systemy, które Open Group uznała za spełniające warunki Single UNIX Specification i zezwoliła na używanie w ich opisie znaku handlowego UNIX®, lista obejmuje tylko następujące systemy: AIX, HP-UX, IRIX, NCR UNIX, SCO OpenServer, Solaris, Tru64 UNIX, UnixWare, UX/4800, z/OS • systemy funkcjonalnie podobne do systemów Unix, które nie spełniają powyższych kryteriów: • dodatkowo z nimi kompatybilne, na przykład poprzez spełnienie wymagań normy POSIX: GNU/Hurd, GNU/Linux, Minix (POSIX od Minix 2), QNX • tylko funkcjonalnie podobne: CROOK, Phoenix-RTOS System operacyjny Unix - Model warstwowy systemu W modelu tym dzieli się system na 4 warstwy: jądro, biblioteki, powłoka i programy. Jądro • zawiera m.in. program szeregujący oraz sterowniki urządzeń • zarządza pamięcią operacyjną • w nowszych systemach sterowniki rzadziej występujących urządzeń dostępne są w postaci zewnętrznych modułów, które można wybiórczo załadować do jądra - dzięki temu jego rozmiary są mniejsze • jądro ma bezpośredni dostęp do wszystkich zasobów komputera Biblioteki • zawierają zestawy podprogramów (zwykle napisanych w języku C), wykonujących różne, często stosowane, operacje (mogą to być np. zestawy funkcji matematycznych, procedury, umożliwiające obsługą monitora czy też operacje na dysku) • biblioteki te są zwykle dołączane do programów na etapie ich konsolidacji (program, np. w języku C, przed uruchomieniem zostaje poddany kompilacji, a następnie konsolidacji) • taka statyczna konsolidacja powoduje, że dana biblioteka jest dołączana do każdego z korzystających z niej programów - nawet wtedy, gdy uruchamiane są one jednocześnie w systemie; powoduje to znaczną zajętość pamięci operacyjnej Powłoka • nazwa pochodzi stąd, że warstwa ta oddziela wewnętrzna część systemu operacyjnego od użytkownika • powłoka zawiera interpreter poleceń, który umożliwia komunikację z użytkownikiem (jest to odpowiednik programu command.com z DOS’a) • interpreter poleceń uruchamia polecenia systemu operacyjnego oraz pro-gramy użytkowe Programy • procesy uruchamiane przez użytkownika • zarządzane przez program szeregujący jądra • mogą być przerwane w dowolnym momencie, np. komendą - kill • każdy ma przydzielony odpowiedni obszar pamięci i priorytet • jeśli proces użytkownika próbuje dostać sie do cudzego obszaru pamięci, zostaje przerwany, a system wyświetla komunikat: segmentation fault • bieżąca zawartość pamięci procesu może zostać zapisana na dysku w pliku o nazwie core (nazwa od słów core dump, czyli zrzut pamięci) • analiza zawartości tego pliku może pomóc programiście w wykryciu przyczyny wystąpienia błędu http://aurox.pl/ Aurox to koordynowana w Polsce dystrybucja Linuksa, bazująca na Fedorze. Aurox posiada linie produktowe zarówno komercyjne (Aurox Server i Aurox Workstation), jak i linie darmowe (Aurox Community) dostępne bez żadnych opłat do ściągnięcia ze stron projektu. Aurox w ciągu ostatnich ponad 3 lat stał się jedną z najpopularniejszych dystrybucji Linuksa w Polsce, a także w Europie ŚrodkowoWschodniej. Aurox to dobry wybór dla początkujących użytkowników Linuksa, którzy poszukują systemu zastępczego dla kulejącej instalacji MS Windows. http://www.debian.org/ Czym jest Debian? Debian to wolny system operacyjny (OS). System operacyjny to zestaw podstawowych programów i narzędzi, które umożliwiają komputerowi działanie. Debian używa jądra (jest to rdzeń systemu operacyjnego) Linux, ale większość podstawowych narzędzi systemu pochodzi z projektu GNU. Dlatego system nazywa się GNU/Linux. Debian to coś więcej, niż sam system operacyjny: zawiera ponad 18700 pakietów, które są skompilowanymi programami spakowanymi w sposób, który umożliwia łatwą instalację. http://fedoraproject.org/ Fedora jest systemem operacyjnym opartym na Linuksie, który prezentuje to, co najnowsze i najlepsze w wolnym oprogramowaniu i oprogramowaniu open source. Fedorę zawsze można dowolnie używać, modyfikować i rozpowszechniać. http://ubuntu.pl/ Ubuntu to stare afrykańskie słowo oznaczające "człowieczeństwo dla wszystkich". Kierując się tym przesłaniem firma Canonical Ltd. opracowała i udostępniła opartą na Debianie dystrybucję Linuksa Ubuntu. SUSE http://www.novell.com/linux/ MANDRIVA http://mandriva.com/ KNOPPIX® http://knoppix.com/ SLACKWARE http://slackware.com/ GENTOO http://www.gentoo.org/ Mac OS X - jest to złożony system operacyjny dla komputerów Macintosh opracowany w roku 2000 w amerykańskiej firmie Apple Computer. X w nazwie oznacza 10 wersję systemu Mac OS, jednak Mac OS X jest systemem o całkowicie odmiennej budowie niż poprzednie wersje Mac OS. Jego silne strony to między innymi: • możliwość uruchamiania programów napisanych dla wcześniejszych wersji systemu Mac OS • łatwość adaptacji, kompilacji i wykorzystania oprogramowania stworzonego dla systemów uniksowych, zwłaszcza typu BSD • Quartz Extreme, format PDF jako podstawa interfejsu graficznego • ColorSync, przemysłowej jakości system zarządzania kolorem • wydajny silnik OpenGL • ma wbudowane zaawansowane narzędzia sieciowe Efekty 3D Fedora Core 6 domyślnie instaluje środowisko Compiz oraz wsparcie dla efektów 3D z użyciem technologii AIGLX. Jeśli tylko sterowniki do karty graficznej obsługują OpenGL, efekty 3D na pulpicie są na wyciągnięcie ręki (System > Preferences > Desktop Effects).