5. wielozadaniowość (z wywłaszczaniem) - zdolność do obsługi więcej niż jednej aplikacji (z wywłaszczaniem oznacza, że każdy program ma kwant czasu, po którym przełącza się inny proces, dzięki czemu zablokowany proces można „zabić”)
6. wielowątkowość - zdolność do nieliniowego wykonywania programów; program lub aplikacja mogą mieć więcej niż jeden wątek
7. multimedialność - obsługa plików zapisanych w różnych formatach multimedialnych (graficznych, dźwiękowych i wideo)
UNIX:
Unix Time-Sharing System (UNIX) - system operacyjny napisany w 1969 r w Bell Laboratories (AT&T) przez Dennisa Ritchie i Kena Thompsona. Obecnie UNIX to cała rodzina systemów operacyjnych różniących się sposobami implementacji (AIX, GNU/Linux, MAC OS X, Solaris).
Podstawowe cechy:
- niezależność od sprzętu
- warstwowa architektura (jądro, które otaczają warstwy zewnętrzne)
- wielozadaniowość, wieloprogramowość
- wielodostępność
- wieloprocesorowość
- ochrona dostępu do katalogów i plików
- łatwe przystosowanie interpretera poleceń do wymagań użytkownika.
Podstawowe wady to: duża liczba wersji i obszerna dokumentacja.
Warstwowy model systemu:
Większość elementów systemu UNIX, np. rodzaj i wygląd interfejsu, nie jest ustalona, zależy od modułów, jakie zostaną włączone w skład systemu.
Warstwowy model systemu UNIX składa się z czterech warstw:
-jądro:
* ma bezpośredni dostęp do wszystkich zasobów komputera
* zawiera tzw. program szeregujący i sterowniki urządzeń
* zarządza pamięcią operacyjną
- biblioteki:
* zestawy podprogramów (zwykle napisanych w języku C) wykonujących różne, często stosowane operacje
* biblioteki są dołączane do programów na etapie konsolidacji (faza po kompilacji, przed uruchomieniem)
- powłoka:
* warstwa ta oddziela wewnętrzną część systemu operacyjnego od użytkownika
* zawiera interpreter poleceń, który umożliwia komunikację z użytkownikiem
* interpreter poleceń uruchamia polecenia systemu operacyjnego oraz programy użytkownika
- programy:
* procesy uruchamiane przez użytkownika, zarządzane przez program szeregujący jądra
* każdy program 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 odpowiedni komunikat