Rozdział 2 - Systemy operacyjne
Zadaniem systemu operacyjnego jest utworzenie środowiska dla uruchamiania i pracy programów. Zadanie to jest realizowane poprzez setki (a nawet tysiące) funkcjonalnych pakietów systemu operacyjnego. Zadaniem poszczególnych funkcji może być np. wyświetlenie ciągu znaków na ekranie, lub odczytanie sekwencji naciśniętych klawiszy.
Funkcjonalny model systemu operacyjnego
System operacyjny zarządza czterema typami operacji:
uruchamianiem, nadzorem i zakończeniem procesów aplikacji. Zadaniem systemu operacyjnego jest wczytanie aplikacji do pamięci i jej uruchomienie.
alokacją pamięci. Zadaniem systemu jest przydzielenie aplikacji potrzebnej jej ilości pamięci i zwolnienie obszarów pamięci dłużej nie używanych.
operacjami wejścia-wyjścia (I/O) plików. System plików (ang. File system) jest integralną częścią systemu operacyjnego. Jego zadaniem jest zarządzanie likami przechowywanymi w pamięci masowej. System plików nadzoruje: tworzenie, otwieranie, kasowanie, zmienianie nazw plików i katalogów, oraz przesyłanie danych do i z pliku. Zadaniem systemu operacyjnego jest również zlokalizowanie pliku na dysku i odtworzenie jego logicznej struktury.
urządzeniami wejścia-wyjścia. Ostatnim zadaniem systemu operacyjnego jest porozumiewanie się z urządzeniami wejścia-wyjścia, takimi jak karta graficzna, klawiatura czy myszka. Program komunikuje się z urządzeniem przez systemowy sterownik urządzenia (ang. Device driver).
System operacyjny składa się z kilku warstw. Najniższą jest BIOS. Warstwa ta udostępnia różne usługi pozostałej części systemu operacyjnego, związane z wymianą informacji pomiędzy urządzeniami komputerowymi — dyskiem, klawiaturą, ekranem, portami. Drugą, wyższą warstwę tworzy jądro systemu (ang. Kernel), który pośredniczy pomiędzy programami a usługami BIOS. Gdy BIOS odczytuje sektory dysku z częściami pliku, to kernel składa je tworząc plik i udostępniając go programowi. Kernel oddaje do dyspozycji funkcje znane razem jako API, (ang. Application programing interface). Trzecią i najwyższą warstwą jest program, który odpowiada za komunikację z użytkownikiem — do jego zadań należą min. operacje na plikach czy uruchamianie programów użytkowych.
Przegląd systemów operacyjnych
W podrozdziale umieściliśmy jedynie "encyklopedyczne" informacje o większości popularnych systemów operacyjnych. Ograniczeni objętością książki opisaliśmy budowę jednego systemu. Kierując się popularnością produktów firmy Microsoft wybraliśmy do tego celu system Microsoft Windows 2000.
CP/M
CP/M (ang. Control Program for Microcomputer) — system operacyjny opracowany w 1974 r. przez Garry'ego Kildella z firmy Intel dla komputerów z procesorami 8080 i Zilog Z80. System ten uznawany jest za protoplastę DOS-a, ponieważ po ukazaniu się mikroprocesorów 16-bitowych z rodziny i-8086 i pochodnych, doczekał się, opracowanego przez Seattle Computer Products, emulatora 86-QDOS, który z kolei został sprzedany firmie Microsoft, posiadającej kontrakt z IBM na dostarczenie systemu operacyjnego do przygotowywanego wówczas komputera IBM PC. W efekcie w 1981 r. ujrzał światło dzienne MS-DOS 1.0
VMS
Wielodostępny system o założeniach zbliżonych do UNIX-a, choć w obejściu zupełnie odmienny. Powstał w drugiej połowie lat '70 wraz z architekturą VAX Digital. Ponieważ powstawał równolegle ze sprzętem, dla którego jest przeznaczony nie został praktycznie przeniesiony na inne platformy systemowe.
*-11
Pod tą nazwą kryje się kilkanaście zupełnie różnych systemów operacyjnych — są między nimi systemy wielodostępne, czasu rzeczywistego, i inne — stosowanych na 16-bitowych minikomputerach PDP-11 Digitala, oznaczonych wspólną końcówką "-11" (RSTS-11, RT-11, RSX-11, CAPS-11...).
DOS
Historia DOS-a (ang. Disk operating system) rozpoczyna się w 1981 roku. Microsoft kupuje od Seattle Computer Products 86-DOS by wypełnić zobowiązania kontraktu z IBM na system operacyjny do przygotowywanego komputera IBM PC, modyfikuje go tak, by mógł pracować na IBM PC i nazywa MS-DOS. Pierwsza wersja beta zaczyna pracować na IBM PC w lutym 1981 roku. W sierpniu 1981 roku pokazany zostaje MS-DOS 1.0, zajmujący 13K dysku i pracujący na 8K pamięci operacyjnej. W listopadzie 1981 roku dodana zostaje obsługa dwustronnych dyskietek 320K. Dwa lata później, w 1983 roku, wraz z IBM PC/XT pojawia się napisany praktycznie od nowa MS-DOS 2.0, z hierarchiczną strukturą katalogów i możliwością instalowania sterowników do urządzeń; zajmuje 41 KB, pracuje na 24 KB pamięci. Na początku 1984 roku dodane jest wsparcie dla języków narodowych. Oddany do użytku w sierpniu 1984 roku MS-DOS 3.0 pozwala na stworzenie rozszerzonej partycji na dysku, liczącej do 32 MB i ma wbudowaną obsługę stacji 1,2 MB; system zajmuje 60 KB na dysku. Wersja 3.1 dodaje obsługę sieci, 3.2 — obsługę dyskietek 3,5-calowych 720 KB. W listopadzie 1985 roku pojawia się Microsoft Windows — nakładka graficzna na DOS. Wersja 3.3 z maja 1987 roku pozwala na definiowanie dysków logicznych w rozszerzonej partycji dysku twardego, wprowadzone zostają strony kodowe. W czerwcu 1988 roku MS-DOS 4.0 przekracza barierę 32 MB dla partycji, wspiera teraz pamięć rozszerzoną. System zajmuje 108 KB, pracuje w 75 KB pamięci operacyjnej. Wersja 5.0 z 1991 roku ma wsparcie dla wysokiej pamięci, system pomocy i program do zarządzania zawartością dysku (MS-DOS Shell). System zajmuje 118 KB, pracuje w 60 KB pamięci. Wersja MS-DOS 6.0, z roku 1993, zostaje wyposażona w zestaw programów narzędziowych do przygotowywania kopii zapasowych, ochrony przed wirusami, defragmentacji dysku, kompresji dysku, zarządzania pamięcią. Ma także wsparcie dla napędów CD-ROM, zarządzanie poborem mocy pozwalające na oszczędność baterii na komputerach przenośnych. MS-DOS 7.0 już nie wychodzi, choć tak początkowo nazywano projekt Chicago firmy Microsoft, który znamy jako Windows 95.
DR-DOS
W połowie 1990 r. pojawia się DR-DOS firmy Digital Research, przejętej przez Novella w 1991 r., co zaowocowało zmianą nazwy produktu na Novell DOS a następnie na Caldera Open DOS/DR-DOS. System jest w pełni zgodny z MS DOS-em, wyposażony we wbudowane funkcje obsługi sieci, znacznie ulepszone zarządzanie pamięcią EMS/XMS i wbudowany menedżer zadań. Znany jest także Free DOS, darmowy projekt programistów związanych z Free Software Foundation.
PTS DOS
produkt rosyjskiej firmy PhysTechSof, wyposażony w funkcje sieciowe, udostępniający bootmanager-a i możliwość korzystania z kompresowanych "w locie" podkatalogów. Obecnie jest to system bardzo rozszerzony, z interpreterem REXX-a i kilkoma innymi usprawnieniami, nie sprawiający także kłopotu w roku 2000 (pamiętajmy, że Microsoft nie gwarantuje zgodności z rokiem 2000 starych wersji MS-DOS).
Systemy operacyjne oparte na DOS-ie skonstruowane były w myśl zasady: jeden komputer, jeden użytkownik, jeden uruchomiony program.
QNX
System QNX powstał w roku 1982, w wyniku prac badawczych nad technikami komunikacji międzyprocesorowej prowadzonych na Uniwersytecie Waterloo w Kanadzie i był zarazem następcą idei systemu operacyjnego Thoth, zaimplementowanego dla mikrokomputera IBM PC pod pierwotną nazwą QUNIX przez Dana Dodge'a i Gordona Bella. QNX różni się od UNIX-a kilkoma właściwościami, np. strukturą modułową i architekturą wykorzystującą model klient-serwer. Jego struktura nie opiera się na monolitycznym jądrze — system składa się z wielu współpracujących ze sobą modułów zwanych zadaniami administrującymi, które kooperują za pośrednictwem niewielkiego jądra, odpowiedzialnego niemal wyłącznie za zarządzanie zadaniami i przesyłanie komunikatów między nimi (ang. Mikrokernel). Obecnie dostępny QNX jest bardzo nowoczesnym systemem operacyjnym. Z serwera WWW jego producenta można ściągnąć jednodyskietkową wersję demonstracyjną tego systemu, zawierającą nie tylko powłokę graficzną (GUI), ale także program umożliwiający obsługę modemowego połączenia z Internetem, przeglądarkę WWW, edytor tekstów i kilkanaście stron dokumentacji w HTML-u, w tym strony interaktywne, które przetestują komputer.
UNIX
UNIX jest jednym z najpopularniejszych systemów operacyjnych na świecie. Znak towarowy UNIX należy do The Open Group, ale pierwotnie system ten był opracowywany przez Kena Thompsona i Dennis Ritchie. System UNIX od zawsze był wielodostępnym i wielozadaniowym sieciowym systemem operacyjnym, co oznacza, że z założenia mógł łatwo łączyć się z innymi maszynami, obsługiwać jednocześnie wielu użytkowników i wykonywać dla nich wiele zadań w tym samym czasie. Jego początki sięgają czasów, gdy w powszechnym użyciu były nie komputery osobiste, lecz mainframe-y, zaś dostęp do centralnych zasobów odbywał się za pomocą terminali. Ze względu na bezpieczeństwo danych w systemach UNIX-owych każdy użytkownik musi podać nazwę swojego konta, czyli zalogować się, przed rozpoczęciem pracy. Dostęp do konta jest chroniony hasłem. Użytkownik wpisując hasło potwierdza, że rzeczywiście jest tym, za kogo się podaje.
Dla niemal każdej platformy sprzętowej istnieje wersja systemu UNIX. Wielu producentów zakupiło kod źródłowy i wydało swoje własne wersje systemu. Na przestrzeni lat duży wpływ na obecny wygląd systemu mieli producenci, tacy jak IBM, Hewlett-Packard, Sun i inni, ale nie tylko oni go modyfikowali. Gdy powstała pierwsza wersja UNIX-a, jej kod źródłowy darmowo udostępniono szkołom średnim i uniwersytetom. Od samego początku istnienia UNIX-a olbrzymi wpływ na jego rozwój miały dwie szkoły — University of California w Berkeley oraz Massachusetts Institute of Technology.Jednocześnie ludzie na całym świecie zaczęli tworzyć własne programy narzędziowe pracujące w tym środowisku. Niestety, rozwój ten nie był w żaden sposób koordynowany, co zaowocowało wieloma różnicami między różnymi wersjami systemu. W końcu jednak zaczęły pojawiać się standardy. W systemie UNIX wiele z nich objęto standardem IEEE POSIX.1.
System UNIX ma też i wady. Jedną z nich jest duża pojemność dysku, jakiej wymaga nawet do standardowej instalacji. Jest również drogi, szczególnie w wersji dla komputerów PC. Wady systemu UNIX stwarzają szansę dla Linuksa, który został zaprojektowany tak, by był mały, szybki i niedrogi, i od początku projektowano go z myślą o stworzeniu systemu operacyjnego dla komputerów domowych i niewielkich serwerów. Z perspektywy czasu wszystko wskazuje na to, iż projektanci odnieśli sukces.
MacOS
MacOS jest systemem operacyjnym z graficznym interfejsem użytkownika (GUI), działającym na komputerach Macintosh; jego producentem jest Apple. Przez długi czas był wzorem dla innych systemów operacyjnych jako przyjazny dla użytkownika.
Środowisko graficzne Windows
Koncepcja interfejsu graficznego, z oknami, w których będą uruchamiane programy, powstała w latach siedemdziesiątych w laboratoriach firmy Xerox w Palo Alto w Kalifornii. W 1977 roku zaprezentowano komputer Xerox Star, w którym posługiwano się myszką do pracy z oknami i ikonami na ekranie, nie wszedł jednak do masowej produkcji. W połowie 1993 roku w zespole przygotowującym Windows znalazł się jeden z pracowników ośrodka PARC. Później pojawił się komputer o nazwie Lisa — prekursor komputerów Macintosh — stworzony przez Apple, z oknami i myszką jako urządzeniem wejściowym.
Microsoft tworząc Windows nie wymyślił więc ani środowiska graficznego, ani myszki czy okien — potrafił jednak skorzystać z doświadczeń swoich poprzedników, tworząc swoje środowisko graficzne Microsoft Windows, a później rozwijając je w systemy operacyjne Windows NT i Windows 98.
O istnieniu Microsoft Windows świat dowiedział się 10 listopada 1983 roku, ale dopiero dwa lata później, 18 listopada 1985 roku, można było obejrzeć gotowy produkt. Pierwsza wersja Windows nie cieszyła się dużą popularnością. Konkurencja ze strony komputerów Apple Macintosh i ich graficznego systemu operacyjnego była jeszcze wtedy zbyt silna. Dopiero od czasu pojawienia się wersji 3.0 w 1990 roku Windows-y zyskują na popularności. Sukces firmy Microsoft przypieczętowała premiera, w październiku 1992 roku, wersji Windows for Workgroups 3.1. Nowa wersja Windows posiadała wbudowaną obsługą sieci dla grupy roboczej, oraz sieci bezpośrednich połączeń miedzy komputerami. Jest to środowisko pomyślane dla połączenia małych grup komputerów, udostępnienia w sieci ludziom pracującym obok siebie dysków i drukarek, możliwości wymiany poczty, bez stawiania specjalnych serwerów. Zawiera ona między innymi okrojoną wersję programu poczty elektronicznej Microsoft Mail, terminarz Microsoft Schedule+ oraz sieciową grę karcianą Hearts. Poprawiona wersja tej odmiany Windows —Windows for Workgroups 3.11 — zawiera oprogramowanie do wysyłania i odbierania faksów, oraz 32-bitowy dostęp do plików.
Były to ostatnie wersje Windows zaprojektowanego jako środowisko graficzne dla DOS-a. Produkt początkowo znany jako Windows 4.0 ukazał się już jako system operacyjny Windows 95, by po kilku latach przejść w Windows 98.
Ocenia się, że do czasu ukazania się Windows 95 na świecie używano ponad pięćdziesięciu milionów egzemplarzy systemu Windows.
NetWare
NetWare firmy Novell jest sieciowym systemem operacyjnym. Środowisko sieci opartej o NetWare procuje w architekturze klient/serwer. Rolę serwerów pełnią komputery klasy PC z systemem operacyjnym Novell NetWare 4.x, 5.x, ich klientami są komputery pracujące pod kontrolą systemów operacyjnych Dos, Windows 3.11, Windows 95/98, Windows NT/2000 z zainstalowanym oprogramowaniem Novell Klient. Serwery Netware udostępniają następujące usługi:
wysokowydajny serwer plików
usługi drukowania kolejkowego oraz NDPS
serwisy internetowe: www, ftp, news, LDAP
Dodatkowo zpewniają wydajne środowisko pracy dla aplikacji Java oraz stanowia platformę dla wielu programów do których należy zaliczyć: system pracy grupowej GroupWise, system baz danych Oracle 8 i serwer aplikacji IBM WebShpere. Dzięki zintegrowaniu z katalogiem NDS (Novell Directory Services) przy użyciu serwerów NetWare można tworzyć duże, wieloserwerowe, centralnie zarządzane sieci korporacyjne, które cechuje wysoka skalowalność i łatwość administracji.
GeoWorks
GeoWorks to środowisko graficzne dla komputerów IBM PC, które stanęło do walki z Microsoft Windows i IBM OS/2. W 1991 roku pojawia się wersja GeoWorks Ensemble, później GeoWorks Pro. Interfejs graficzny GEOS, na którym opierał się GeoWorks, był równie łatwy w użyciu jak Windows, a przy tym szybszy na "słabszych" komputerach klasy AT i 386, wyposażonych w małą ilość pamięci operacyjnej. Przypominał nieco Motif, jeden z interfejsów systemu Unix. Dołączono kilka podstawowych aplikacji, takich jak kalkulator, kalendarz, program graficzny czy edytor tekstu, a także gry — Solitare i Tetris.
Desqview
Na początku lat dziewięćdziesiątych firma Quarterdeck zaprezentowała dwie wersja systemu operacyjnego: Desqview oraz Desqview/X. Desqview pozwalał na pracę wielu aplikacji jednocześnie (ang. Multitasking), miał przy tym mniejsze wymagania co do pamięci operacyjnej niż Windows. Desqview/X zawierał także interfejs X/Window, pozwalający na połączenie się z inną maszyną zawierającą to oprogramowanie, taką jak Sun i uruchamianie na niej zdalnie programów.
Windows 9x
Ponieważ system Windows 98 jest jedynie posiadającą zintegrowaną obsługę standardu USB i pozbawioną części błędów wersją systemu Windows 95, oba systemy przedstawimy łącznie. Najważniejsze cechy systemów Windows 9x, odróżniające je od poprzednich systemów operacyjnych firmy Microsoft, to:
32-bitowy tryb adresowania pamięci
wielozadaniowość
obsługa systemu VFAT( obsługa długich nazw plików i katalogów) i systemu FAT-32
zintegrowana obsługa sieci
ulepszony interfejs użytkownika
OS/2 i Windows NT
W roku 1988 firma Microsoft powołała zespół opracowujący Windows NT. Jego celem miało być stworzenie nowoczesnego, w pełni 32-bitowego, stabilnego i wielofunkcyjnego systemu operacyjnego. Ten pomysł również nie był do końca autorskim opracowaniem giganta z Redmond — niemal rok wcześniej odbyła się premiera nowego systemu operacyjnego OS/2 , napisanego wspólnie z IBM. Sam Microsoft zrezygnował ze współtworzenia systemu OS/2 dopiero w 1990 r., a więc wówczas, gdy w OS/2 istniały już: HPFS — system plików dużo wydajniejszy od FAT, interpreter języka skryptowego REXX oraz graficzny interfejs użytkownika w postaci aplikacji Presentation Manager. Początkowo recenzenci oceniali zresztą, że OS/2 jest bardziej zaawansowany pod względem technologicznym niż Windows NT. Chociaż system zdobył dość liczną rzeszę wiernych mu do dziś użytkowników, przez dziwną politykę marketingową IBM w 1997 r. ostatecznie oddał pole swojej najbliższej konkurencji. Na rynku zatem z jego początkowych idei zostało jedynie to, co zasymilował Windows NT.
BeOS
System którego premiera odbyła się w 1991 roku był początkowo zaprojektowany dla nieprodukowanej już platformy sprzętowej wykorzystującej procesor Hobbit. W krótkim czasie został przeniesiony na komputery PowerPC firmy Motorola, by w końcu "doczekać się" implementacji na komputerach z procesorami Intel-a. System w 100% oryginalny, czego bezpośrednią konsekwencją są: z jednej strony niemożliwość uruchomienie jakiejkolwiek aplikacji napisanej dla systemów DOS, UNIX, czy Windows, z drugiej strony — brak charakterystycznych dla tych systemów problemów związanych z wymogiem zachowania kompabitylności z ich wcześniejszymi wersjami. Mocną stroną systemu firmy Be jest jego doskonale opracowana wielowątkowość (ang. Multithreading).
Linux
Linux został stworzony przez Linusa Torvaldsa z Uniwersytetu Helsińskiego w Finlandii. Linus oparł Linuksa na niewielkiej implementacji UNIX-a dla komputerów PC o nazwie minix. Linux po raz pierwszy został pokazany publicznie pod koniec 1991 r. W listopadzie tego samego roku opublikowano wersję 0.10. Już miesiąc później, w grudniu, pojawiła się wersja 0.11. Linus postanowił, że kod źródłowy systemu będzie dostępny darmo i dla każdego, i zachęcił wszystkich do rozwijania go w przyszłości. Udało się. Obecnie Linux jest rozwijany pod kierownictwem Linusa przez ludzi na całym świecie porozumiewających się ze sobą dzięki Internetowi.
Mocne strony Linuksa:
Pełna wielozadaniowość — system pozwala na równoczesne wykonywanie wielu zadań i odczyt z wielu urządzeń.
Pamięć wirtualna — Linux może wykorzystywać część twardego dysku jako pamięć wirtualną, zwiększając tym samym wydajność systemu dzięki przechowywaniu aktywnych procesów w pamięci RAM i umieszczaniu rzadziej wykorzystywanych lub nieaktywnych obszarów pamięci na dysku twardym. Pamięć wirtualna pozwala na wykorzystanie całej pamięci komputera oraz lepszą obsługę systemu plików i zabezpiecza przed wystąpieniem segmentacji pamięci.
System X Window — system X Window jest graficznym środowiskiem użytkownika w systemach UNIX-owych. Ma on olbrzymie możliwości, obsługuje wiele aplikacji i jest standardem przyjętym w przemyśle.
Wbudowana obsługa sieci — Linux wykorzystuje protokoły TCP/IP, IPX/SPX oraz usługi sieciowe, łącznie z NFS (Network File System) i NIS (Network Information Service). Łącząc swój komputer z innym poprzez kartę sieciową lub modem, możesz uzyskać dostęp do Internetu.
Dzielone biblioteki — każda aplikacja korzysta i dzieli z innymi standardową bibliotekę podprocedur, co oszczędza sporo miejsca na dysku twardym, ponieważ procedury te nie muszą być pisane od nowa i ich kopie nie muszą towarzyszyć aplikacjom.
Kompatybilność ze standardem IEEE POSIX.1 — dzięki temu Linux jest zgodny z wieloma standardami ustanowionymi dla wszystkich systemów UNIX-owych.
Własny kod źródłowy — w jądrze systemu nie ma ani linijki kodu z AT&T czy też innego źródła firmowego. Oprogramowanie Linuksa jest rozwijane przez inne organizacje takie jak komercyjne firmy, projekt GNU, hakerów oraz programistów z całego świata.
Niższa cenę od większości innych systemów i klonów UNIX-a — jeśli tylko masz cierpliwość, czas i stałe łącze, możesz za darmo pobrać Linuksa z Internetu.
Wydłużony okres przydatności starszych komputerów — Linux działa bardzo sprawnie na starszych komputerach typu x386 lub x486.
Oprogramowanie GNU — w systemie Linux można uruchamiać olbrzymią liczbę darmowego oprogramowania udostępnianego na zasadzie licencji GNU GPL. W Internecie można znaleźć wszystko — od narzędzi i aplikacji (GNU C i GNU C++) poprzez programy do administrowania systemem (linuxconf itd.) i gry (na przykład GNU Chess, GNU Civilization i Quake).
System Linux rozpowszechniany jest w kilku wersjach (tzw. dystrybucjach). Poniżej wymienimy te najbardziej znane: Corel, Debian (chyba ostatnia dystrybucja rozwijania wyłącznie przez entuzjastów systemu Linux), Red Hat, Mandrake (wersja Red Hat-a zoptymalizowana pod kątem wykorzystania możliwości procesorów Pentium), OpenLinux, Slackware (jedna z pierwszych dystrybucji systemu), SuSE.
Windows 2000
Najnowszym systemem operacyjnym Microsoftu jest Windows 2000, łączący zalety systemu Windows NT i Windows 98 oraz posiadający wiele nowych, własnych rozwiązań. Ten nowy sieciowy system operacyjny stanowi solidną podstawę dla budowania systemów informatycznych i komunikacyjnych wszelkich rozmiarów. Obecnie rodzina produktów Windows 2000 zawiera: Windows 2000 Professional, Windows 2000 Server, Windows 2000 Advanced Server oraz Windows 2000 Datacenter Server. Choć wszystkie one oparte są na tym samym rdzeniu, każda wersja posiada specyficzne właściwości i składniki zaprojektowane w celu obsługi unikalnych zastosowań:
Windows 2000 Professional -
Windows 2000 Professional został zaprojektowany głównie jako klient sieci Windows 2000. Może jednak pełnić także funkcję klienta innych sieci, włącznie z Windows NT i NetWare, oraz może funkcjonować jako samodzielny system w komputerze. Windows 2000 Professional zastąpił Windows NT 4 Workstation i obecnie jest zalecanym przez Microsoft klientem sieci.
Ta wersja Windows 2000 jest tak przygotowana, aby jak największą wydajność miały najważniejsze aplikacje oraz aby móc uzyskać jak najszybszy dostęp do zasobów Internetu. Oferuje platformę bogatą w obsługę multimediów (audio i wideo), pełną obsługę standardów internetowych, a także intuicyjny układ sterowania, wszystko to bez utraty wydajności, stabilności i bezpieczeństwa.
Windows 2000 Server -
Windows 2000 Server jest zaprojektowany do pracy w charakterze serwera domeny Windows 2000. Może pełnić funkcję sterownika domeny lub jednego z serwerów w sieci. Jako sterownik domeny, pierwszy serwer Windows 2000 w sieci ustanawia domenę i jej kartotekę aktywną (ang. Active Directory). Wszystkie kolejne komputery Windows 2000 Server w domenie wspomagają główny serwer w obsłudze domeny i jej aktywnej kartoteki. Jako serwer Windows 2000 Server może obsługiwać wiele aplikacji i usług, włącznie z udostępnianiem plików, drukarek czy usług IIS (ang. Internet Information Services), takich jak WWW, FTP, e-mail i grupy dyskusyjne.
Ta wersja Windows 2000 powstała w celu maksymalizowania wydajności usług sieciowych dla rozrastającej się grupy użytkowników; oferuje stabilną platformę dla aplikacji sieciowych i udostępniania zasobów, takich jak pliki, drukarki i dostęp do Internetu.
Windows 2000 Server został zaprojektowany do tworzenia i obsługi głównie sieci Windows 2000, jest jednak zgodny z Windows NT. Dzięki temu można tworzyć domenę sieciową, w której pracują: podstawowy sterownik domeny (PDC) z zainstalowanym Windows NT oraz serwery Windows 2000 Server, stanowiące zapasowe sterowniki domeny (BDC). Windows 2000 Server może działać także w heterogenicznych sieciach razem z systemami NetWare i Unix.
Windows 2000 Advanced Server -
Windows 2000 Advanced Server został zaprojektowany jako wydajny serwer sieciowy dla domeny Windows 2000. Ma te same podstawowe funkcje i możliwości co Windows 2000 Server, ale oprócz tego jest bardziej wydajny i skalowalny. Advanced Server obsługuje do ośmiu procesorów, 8 GB fizycznej pamięci RAM, wyrównywanie obciążenia sieciowego oraz klastrowanie. W związku z tym, choć może pełnić funkcję głównego sterownika domeny lub typowego serwera aplikacji w sieci, został zaprojektowany przede wszystkim do obsługi przedsiębiorstw internetowych i innych, opierających się głównie na technologiach sieciowych.
Klastrowanie (ang. clustering) jest nazwą technologii, w której dwa lub więcej komputery są połączone w celu wspólnego udostępnienia swojej mocy obliczeniowej jednej aplikacji. Klastering pozwala na przeznaczenie dla aplikacji większej mocy obliczeniowej, zapewniając przy tym odporność na błędy (fault tolerance), czyli możliwość dalszej pracy nawet, gdy jeden z komputerów w klastrze zostanie odłączony.
Windows 2000 Datacenter Server -
Windows 2000 Datacenter Server został zaprojektowany jako najbardziej zaawansowany i wydajny serwer aplikacji. Ma te same podstawowe funkcje i możliwości co Windows 2000 Advanced Server (włącznie z wyrównywaniem obciążenia sieci i klasteringiem), lecz obsługuje przy tym do 32 procesorów (lub 64 w specjalnych wersjach OEM) oraz 64 GB fizycznej pamięci RAM. Microsoft opracował Datacenter Server do zastosowań takich jak magazynowanie danych, renderowanie złożonej grafiki, przetwarzanie danych w czasie rzeczywistym i innych, tym podobnych, aplikacji.
Windows 2000 nie jest pojedynczym, monolitycznym programem, ale raczej kolekcją wielu małych komponentów zaprojektowanych do wzajemnej współpracy. Taka modułowa struktura ma wiele zalet, od uniwersalizacji możliwości po łatwość aktualizacji i naprawy. Ta struktura uwidacznia się szczególnie w podziale na procesy oraz usługi jądra i użytkownika. System operacyjny Windows 2000 jest podzielony na dwie osobne warstwy: tryb użytkownika i tryb jądra. W nieuprzywilejowanej warstwie trybu użytkownika są wykonywane wszystkie interaktywne aplikacje i procesy. W uprzywilejowanej warstwie jądra są wykonywane wszystkie usługi i procesy należące do systemu i jądra systemu. Wszystkie procesy warstwy użytkownika uzyskują dostęp do zasobów (tj. do sprzętu) poprzez odpowiednie składniki warstwy jądra. Innymi słowy, procesy warstwy użytkownika są całkowicie odizolowane od sprzętu. Podstawowa struktura tych dwóch warstw i zawartych w nich składników została przedstawiona na rysunku 2.1.
Rys 2.1 Architektura systemu Windows 2000 |
|
Wszystkie operacje i procesy należące do użytkownika wykonywane są w warstwie użytkownika.
W warstwie użytkownika występują dwa typy podsystemów: podsystemy środowiskowe oraz podsystemy integralne. Podsystemy środowiskowe są usługami emulacyjnymi lub maszynami wirtualnymi tworzonymi przez Windows 2000, zapewniającymi różnorodną obsługę aplikacji. Windows 2000 obsługuje następujące rodzaje aplikacji:
32-bitowe aplikacje Windows (Win32)
16-bitowe aplikacje Windows (Win16)
Aplikacje MS-DOS
Znakowe aplikacje OS/2 1.x
Aplikacje POSIX
Kluczowym komponentem warstwy użytkownika jest podsystem środowiska Win32. Zapewnia wspólne API dla wszystkich podsystemów środowiskowych komunikujących się z usługami wykonawczymi oraz korzystających z urządzeń wejścia-wyjścia (wideo, mysz i klawiatura).
Wszystkie podstawowe procesy systemu oraz procesy pomocnicze działają w trybie jądra. Tryb jądra ma pełną kontrolę nad sprzętem i udostępnia go procesom trybu użytkownika. Tryb jądra sprawuje ochronę nad stabilnością środowiska systemu operacyjnego i kontroluje zasoby sprzętowe poprzez trzy ważne elementy: usługi wykonawcze Windows 2000, mikrojądro oraz warstwę uniezależnienia od sprzętu (HAL).
Usługi wykonawcze Windows 2000
Kolekcja składników do zarządzania zasobami nosi nazwę usług wykonawczych Windows 2000 (ang. Windows 2000 Executive). Należą do nich:
Menedżer I/O (ang. I/O manager) — ten składnik zarządza wszystkimi kanałami wejścia-wyjścia, włącznie z systemami plików i urządzeniami zewnętrznymi.
Menedżer IPC (ang. IPC — Interprocess Communiaction Manager) — zarządza wszystkimi transakcjami pomiędzy serwerem a procesami klientów, zarówno wewnątrz komputera lokalnego, jak i komputerów zdalnych.
Menedżer pamięci wirtualnej (ang. Virtual Memory Manager) — ten składnik zarządza pamięcią wirtualną.
Menedżer procesów (ang. Process Manager) — ten element zarządza tworzeniem, działaniem i kończeniem procesów.
Menedżer Plug and Play (ang. Plug and Play Manager) — zarządza wszystkimi urządzeniami zgodnymi z Plug and Play i powiązanymi z nimi sterownikami.
Monitor zabezpieczeń (ang. Security Reference Monitor) — ten składnik zarządza usługami zabezpieczeń, włącznie z potwierdzaniem tożsamości, dostępem do zasobów oraz przynależnością do grupy.
Menedżer zasilania (ang. Power Manager) — ten element zarządza obsługą oszczędzania energii dostępną w Windows 2000.
Menedżer okien (ang. Window Manager) — zarządza obsługą danych wejściowych (z klawiatury i myszy) oraz wyświetlaniem okien i okienek dialogowych.
Sterowniki urządzeń graficznych (ang. Graphics Device Drivers) — te składniki zarządzają rysowaniem elementów graficznych i współpracują z interfejsem urządzeń graficznych (ang. GDI, Graphics Device Interface).
Menedżer obiektów (ang. Object Manager) — składnik ten zarządza wszystkimi obiektami zasobów w systemie.
Mikrojądro
Rdzeniem Windows 2000 jest mikrojądro. Ten składnik steruje procesorem, obsługuje przerwania sprzętowe, koordynuje operacje wejścia-wyjścia oraz nadzoruje działanie usług wykonawczych.
Warstwa uniezależnienia od sprzętu (HAL)
Na samym dnie warstwy jądra znajduje się HAL (ang. Hardware Abstraction Layer, warstwa uniezależnienia od sprzętu), stanowiący specyficzny dla danej platformy składnik, tworzony w czasie instalacji na podstawie danych o urządzeniach sprzętowych znajdujących się w komputerze. HAL musi być odbudowywany przy każdej poważniejszej zmianie w konfiguracji systemu, takiej jak dodanie kolejnego procesora czy aktualizacja płyty głównej.
Windows 2000 obsługuje wielowątkowość, wielozadaniowość i wieloprocesorowość. Te możliwości pozwalają, kolejno, na: uruchamianie przez pojedynczy proces wielu równoległe wykonywanych wątków, obsługę przez jeden procesor kilku różnych procesów oraz instalowanie w pojedynczym komputerze kilku procesorów.
Często pojedyncze pliki przechowywane są w postaci wielu "rozrzuconych" po dysku części.
Czyli do sierpnia 1995 roku.
Charakterystyczne dla DOS-a nazwy typu 8+3 (8 znaków nazwy + 3 znaki rozszerzenia) zostały zastąpione 255-znakowymi nazwami.
Jedna z najważniejszych aplikacja PM — Workplace Shell (WPS), odpowiedzialna za organizację środowiska pracy interfejsu, min. za przypisywanie ikon do programów, jest do dzisiaj uznawana za niedościgniony wzór aplikacji zorientowanej obiektowo.
2 Część I ♦ Podstawy obsługi systemu WhizBang (Nagłówek strony)
2 C:\doc\matura 2k\R-02.DOC