System operacyjny

System operacyjny (Operating System) jest praktycznie nie widoczny, widzimy go jako interfejs do komunikacji z uzytkownikiem. Widioczny interfejs to tylko jeden z wielu elementów systemu. W każdym OS występują mniej lub bardziej wyodrębnione warstwy spełniające różne funkcje. W ogólnym ujęciu są to:
- warstwa odpowiedzialna za współpracę ze sprzętem,
- jądro systemu realizujace jego funkcje,
- powłoka stanowiąca interfejs użytkownika.

Jądro - to najważniejszy komponent każdego OS. Wykonuje podstawowe operacje: uruchamia programy, przyznaje zasoby aplikacjom, obsługuje urządzenia oraz kontroluje datę i czas. Kernel jest ładowany do pamięci komputera jako jeden z pierwszych komponentów systemu i pozostaje w niej do samego końca jego bieżącego działania. Ważne jest więc by był jak najmniejszy a jednocześnie wydajny.

Moduł user - odpowiedzialny za komunikację z użytkownikami. Obsługuje on dane otrzymane z klawiatury, myszki i innych urządzeń wejściowych i odpowiednio na nie reaguje obsługując interfejs użytkownika obejmujący okna, ikony, menu itd. moduł user jest także odpowiedzialny za obsługę dźwięku, zegara systemowego, portów komunikacyjnych.

Kernel - obsługuje podstawowe funkcje systemowe tj usługi plikowe zarządzanie pamięcią i procesami. Gdy użytkownik uruchamia aplikacje ładuje odpowiednie pliki 'exe' i biblioteki dynamiczne DLL. Inna obsługa świadczona przez kernel uruchamia i zarządza wątkami każdego procesu danej aplikacji. Ponadto zajmuje się alokacją pamięci wirtualnej.

GDI (Graphic Interface) - odpowiada za wszystko co jest wyświetlone na ekranie monitora. Obsługuje  również operacje wyprowadzania grafiki na inne urządzenia wyjściowe np. drukarki.

Powłoka systemu (shell) - to program komputerowy pełniący rolę pośrednika między SO a aplikacjami i użytownikiem. Przyjmuje jego polecenia i wprowadza wyniki działania programów.

command.com - (interpreter poleceń) domyślna powłoka systemu DOS i niektórych wersji Windows. Tłumaczy polecenia  po znaku zachęty n, komendy są wykonywane przez system DOS.

explorer.exe - powłoka systemowa Microsoft Windows

Wyjątki - zdarzenia które zachodzą podczas działania aplikacji wymagające uruchomienia oprogramowania nieobsługiwanego w normalnym przepływie sterowania.

Tryb jądra - to warstwa kodu SO odpowiedzialna za takie podstawowe segmenty SO jak pamięć wirtualna oraz kolejkowanie działania aplikacji. Kod SS uruchamiany w trybie jądra ma bezpośredni dostęp do zasobów sprzętowych i pamięci komputera.

Tryb użytkownika (UI) - to obszar w którym działają programy uzytkownika przez elementy jądra. Jądro systemowe jest odpowiedzialne za przydział aplikacji potrzebnej pamięci. Kod trybu jądra winXP zarządza pracą aplikacji i jeśli to konieczne może przerwać jej działanie.

Rozdział między trybem jądra a trybem użytkownika - Jest stworzony w celu zapewnienia stabilności systemu Windows i uniezależnienia działania systemu od błędów wadliwie działających aplikacji.

Jądro systemu - odpowiada za komunikację ze sprzętem w imieniu aplikacji. Element jądra systemu zw. warstwą uniezależnienia od sprzętu, jest odpowiedzialna za kontrolę urządzeń podłączonych do komputera.

Usługi rezydentne - to nazwa nadana różnorodnym elementom stanowiących podstawy SO. Podstawowe usługi oferowane przez jądro obejmują:

  • menedżer pamięci wirtualnej - element odpowiada za zarządzanie wirtualną przestrzenią adresów o rozmiarze 4GB dostępna dla każdego procesu jak również adresowanie z pamięci fizycznej wszystkich potrzebnych aplikacji.
  • narzędzie uruchamiania procedur lokalnych - element odpowiedzialny za komunikację między procesami
  • menedżer procesów odpowiedzialny za uruchomienie odpowiedzialnych struktur pamięci oraz utworzenie wątków procesu;
  • menedżer objektów - takie zasoby systemowe jak porty są traktowane jako obiekty. Objekt zapewnia łączność pomiędzy aplikacją a zasobem systemu;
  • menedżer zabezpieczeń - to element kontrolujący wszystkie mechanizmy bezpieczeństwa istniejące w SO.
  • element jądra zw. menadżerem pamięci wirtualnej (vmm) jest odpowiedzialny za zarządzanie pamięcią fizyczną komputera i przydzielania jej zasobów poszczególnym procesom;

VMM (Virtual Machine) - zajmuje się odwzorowywaniem adresów wirtualnych fizycznej przestrzeni adresowej. Zadaniem jest śledzenie przestrzeni adresowej procesów i koordynacja tych adresów z adresami pamięci fizycznej komputera.

32 bitowe adresowanie pamięci wirtualnej - system XP używa 32 bitowego adresu do lokalizacji danych z pamięcią. Cała pamięć jest podzielona na segmenty o rozmiarze 4096b zwanych stronicami.

Katalog stronnicowania - pierwsze 10 - bitów adresów określanych jest jako wpis w katalogu stronnicowania. Katalog stronnicowania to stronnica, która ma rozmiar 4096 - bajtów. Każdy wpis w katalogu stronnic ma rozmiar 4 - bajtów. Każdy proces uruchamiany w SO Win XP posiada swój własny katalog stronnic, dlatego wszystkie procesy mogą używać tego samego zakresu adresów.   

Tablica stronnicowania: - po tym jak pierwsze 10 - bitów 32 - bitowego adresu zostało wykorzystywanych do znalezienia wpisu w katalogu stronnic, wartość odczytywania z tego miejsca jest wykorzystywana do znalezienia kolejnej struktury zwanej Tablicą stronnicowania. Jest to struktura stronnic 4096 - bajtów składająca się z wpisów o rozmiarze 4 - bajtów każdy. PTE - wpisy w tablicy stronnic.

Ramka stronnicowania: - jest to miejsce w pamięci gdzie są przechowywane rzeczywiste dane. Każdy VMM znalazł ramke stronnic wykonanych ost. 12 - bitów 32 - bitowego adresu do wyszukiwania bajtów danych w ramce stronnic na który wskazuje adres.

Plik stronicowania: - większość komputerów nie jest wyposażona w 4GB pamięci fizycznej. Dlatego VMM musi stwierdzić czy stronnica zawierająca dane jest w danej chwili dostępna w pamięci  czy też jest przechowywana w pliku na dysku. Dzieje się to gdy wpis w tablicy stronic wskaże na ramkę stronic która w danej chwili nie jest obecna w pamięci fiz. W takiej sytuacji pojawia się tzw. "Błąd stronicowania".  Oznacza to że stronica pamięci na którą wskazuje musi być wczytana do pamięci fizycznej.

Zarządzanie procesami: - jednym z zadań jądra jest zarządzanie procesami i urządzeniami. Mimo że komputery z jednym procesorem mogą wykonywać tylko jeden program w danym momencie to jądro może przechowywać w pamięci kilka programów w tym samym czasie. Zarządzanie procesami i urządzeniami odbywa się w takich cyklach:
- jądro posiada kontrolę nad procesorem,
- jądro wybiera jeden z procesów i wyszukuje miejsce w którym kończy pracę.
- jądro przekazuje kontrolę nad procesorem do tego procesu.,
- jądro zajmuje się zleconymi mu zadaniami systemowymi takie jak odczytywanie danych z urządzeń.

Wielozadaniowość: - oznacza że w danym czasie jest wykonywanych kilka zadań. Jeden proces jest realizowany przez określony czas poczym ustępuje miejsca innemu procesowi.  

Wielowątkowość: - logicznym rozwinięciem przetwarzania danych wielozadaniowych jest podział programów na wiele części (aktów) które następnie są wykonywane w systemie. Wielozadaniowość (wielowątkowość) każdy wątkek może działać niezależnie lecz niektóre wątki nie mogą wystartować dopóki nie otrzymują czegoś od innych wątków.

Przerwania: - to sygnał powodujący zmianę przepływu sterowania niezależnie od aktualnie wykonywanemu programowi. Przerwania są generowane przez rożne urządzenia które znajdują się na płycie głównej lub są podłączone do jego magistrali. Poprzez wysyłanie przerwania każdy z urządzeń próbuje zwrócić na siebie uwagę procesora. Pojawienie się przerwania powoduje wstrzymanie aktualnie wykonywanego programu i wykonanie przez procesor kodu procedury obsługi przerwania np.: wciśnięcie dowolnego klawisza klawiatury powoduje wysłanie zgłoszenia w (IRQ) do kontrolera przerwań. Kontroler ten jest centralnym węzłem przez który przechodzą wszystkie żądania przerwań.  

Sterowniki: - urządzenia zewnętrzne współpracują z SO za pośrednictwem pomicniczych programów nazywanych sterownikami. Instalacja w SO nowego urządzenia jest rozdzielone na II fazy:
- fizyczne (poł. z komputerem)  
- zainstalowane i skonfigurowanie sterowników.

Plug and Play:  - standard ten polega na tym że system potrafi rozpoznać rodzaj i typ połączonego z komputerem urządzenia i zainstalować odpowiednie sterowniki a także skonfigurować je w tym zakresie aby urządzenia nadawało się do użytku. Sterowniki naogół są przechowywane w pliku DRIVER.CAB, który znajduje się w folderze WINDOWS/DRIVER.CACHE/I386.

Podpis cyfrowy:  wersje sterowników napisane dla poprzednich wersji windows w XP są nieprzydatne. Instalowanie sterowników jest warunkiem właściwego funkcjonowania urządzenia z komputerem.  Sterowniki, które przejdą badania są oznaczane podpisem cyfrowym.

Menedżer urządzeń: - to aplikacja systemowa, która ułatwia konfigurawanie funkcji urządzeń a także znajdowanie przyczyn wadliwego ich funkcjonowania. Kategorie informacji wyświetlanych w Menedżerze urządzeń mające postać drzewa którymi gałęziami są urządzenia  tego samego typu.

 


zobacz też słownik informatyczny

by Kasprzak