1.Pod względem sposobu komunikacji z użytkownikiem rozróżniamy: -systemy tekstowe: komunikują się za pomocą wydawanych z linii poleceń komend (DOS) -systemy graficzne: komunikuję się za pomocą graficznych ikon i okienek (WINDOWS)

2.W każdym systemie operacyjnym występują mniej lub bardziej wyodrębnione warstwy spełniające różne funkcje są to:

-jądro: warstwa odpowiedzialna za wykonanie podstawowych zadań systemu operacyjnego
-powłoka: specjalny program, który służy do komunikacji użytkownika z systemem operacyjnym
-system plików: metoda przechowywania plików, zarządzania plikami, informacjami o tych plikach, tak by dostęp do plików i danych w nich zgromadzonych był łatwy dla użytkownika systemu; także: wolumin. 3.Pod względem architektury systemy operacyjne dzielimy na systemy z jądrem :

-monolitycznym to rodzaj jądra systemu operacyjnego, w którym większa część funkcji jądra zaimplementowana jest w pojedynczym obrazie pamięci, który ładowany jest na stałe do pamięci komputera przez bootloader. Zdarza się jednak, że do jądra monolitycznego (zwanego wtedy modularnym) dopisywana jest możliwość ładowania modułów, które jednak nie realizują najbardziej podstawowych funkcji jądra.
-mikrojądro: rodzaj jądra systemu operacyjnego, które zawiera tylko najbardziej niezbędne elementy, takie jak funkcje zarządzania wątkami, komunikacją międzyprocesową, oraz obsługą przerwań i wyjątków.
-jądro hybrydowe: jest jądrem opartym o zmodyfikowane architektury jądra monolitycznego oraz mikrojądra używanych w systemach operacyjnych. Ten rodzaj jądra budzi kontrowersję w porównaniu do podobnego jądra monolitycznego, pojęcie to, przez niektórych specjalistów zostało odebrane jako marketing. Najczęściej akceptowalnymi rodzajami jąder są: jądro monolityczne oraz mikrojądro (włącznie z nanojądrem i pikojądrem które są jego mniejszymi wersjami).

4.Cechy jądra systemu operacyjnego:
  • Wielozadaniowość – cecha systemu operacyjnego umożliwiająca mu równoczesne wykonywanie więcej niż jednego procesu. Zwykle za poprawną realizację wielozadaniowości odpowiedzialne jest jądro systemu operacyjnego.
  • Wielowątkowość (ang. multithreading) – cecha systemu operacyjnego, dzięki której w ramach jednego procesu może wykonywać kilka wątków lub jednostek wykonawczych. Nowe wątki to kolejne ciągi instrukcji wykonywane oddzielnie. Wszystkie wątki tego samego procesu współdzielą kod programu i dane. W systemach nie obsługujących wielowątkowości pojęcia procesu i wątku utożsamiają się.
  • Wielobieżność (ang. reentrant) – cecha jądra systemu operacyjnego, pozwalająca na jednoczesną pracę kilku procesów w trybie jądra.
  • Skalowalność (ang. scalability) - zapewnienie coraz wydajniejszej pracy w miarę zwiększania liczby elementów składowych.Jest to np. cecha sieci komputerowych polegająca na zdolności do dalszej rozbudowy.
  • Wywłaszczenie - to technika używana w środowiskach wielowątkowych, w której algorytm szeregujący (scheduler) może wstrzymać aktualnie wykonywane zadanie (np. proces lub wątek), aby umożliwić działanie innemu. Dzięki temu rozwiązaniu zawieszenie jednego procesu nie powoduje blokady całego systemu operacyjnego. W systemach bez wywłaszczenia zadania jawnie informują scheduler, w którym momencie chcą umożliwić przejście do innych zadań. Jeżeli nie zrobią tego w odpowiednim czasie, system zaczyna działać bardzo wolno. Oprócz tego wywłaszczanie umożliwia szczegółowe określanie czasu, w jakim dany proces może korzystać z procesora. Wywłaszczanie w niektórych systemach operacyjnych może dotyczyć nie tylko programów, ale także samego jądra - przykładem takiego systemu jest Linux.


5.Najważniejsze cechy decydujące o użyteczności systemu
  • Koegzystencja z innymi systemami tzn., możliwość czytania i zapisywania danych na partycjach innych systemów oraz współpraca i wymiana danych pomiędzy komputerami w sieci lokalnej i Internecie.
  • zgodność sprzętowa tzn., możliwość instalacji na konkretnym komputerze utrudnia czasem brak odpowiednich sterowników do określonych urządzeń.
  • wymiana danych tzn., możliwość czytania i wymiany dokumentów między różnymi aplikacjami przystosowanymi do różnych systemów.
  • przystosowanie do pracy w Internecie tzn., możliwości i wygoda w przeglądaniu witryn, wymiany protokołów Internetowych itp.
  • Cena
  • Ilość aplikacji działającej na danym systemie tzn., nawet najlepiej działający system będzie niewiele wart, jeśli nie będzie posiadał bogatego oprogramowania przystosowanego na swoją platformę.
  • Lokalizacja (możliwość porozumiewania się z systemem w narodowym języku).
6.Zadania systemu operacyjnego

  • zarządzanie zasobami komputera: przydział zasobów,
    • synchronizacja dostępu do zasobów (zapobieganie interferencji),
    • ochrona i autoryzacja dostępu do zasobów,
    • odzyskiwanie zasobów,
    • rozliczanie – gromadzenie danych o wykorzystaniu zasobów.
  • gromadzenie danych
  • maszyny wirtualne
  • wielozadaniowość
  • interakcja z użytkownikiem
  • komunikacja z innymi maszynami