Zapoznanie studenta z budową i celami stawianymi systemom operacyjnym.
Ukształtowanie umiejętności w zakresie konfiguracji systemu operacyjnego i monitorowania jego pracy oraz jego administrowaniem.
Zapoznanie studentów ze specyfiką budowy i pracy z systemem Linux.
Ukształtowanie umiejętności programowania w języku powłoki.
Prerequisites
Teoretyczne podstawy informatyki, Architektura komputerów, Algorytmy i struktury danych.
Scope
Zadania oraz podział systemów operacyjnych: Klasyfikacja systemów operacyjnych: systemy wsadowe, systemy wieloprogramowe, systemy z podziałem czasu, systemy równoległe, systemy sieciowe, systemy rozproszone i systemy czasu rzeczywistego.
Budowa systemów operacyjnych. Składowe systemów operacyjnych. Usługi oferowane przez systemy operacyjne oraz klasyfikacja systemów operacyjnych.
Szeregowanie zadań. Kryteria i algorytmy planowania czasu procesora. Ocena algorytmów planowania. Szeregowanie rotacyjne, priorytetowe. Wywłaszczanie.
Zarządzanie pamięcią. Logiczna i fizyczna przestrzeń adresowa. Przydział ciągły pamięci operacyjnej. Fragmentacja zewnętrzna i wewnętrzna. Upakowanie. Stronicowanie pamięci. Segmentacja pamięci. Pamięć wirtualna. Stronicowanie na żądanie. Wymiana stron w pamięci.
System plików. Pojęcie pliku oraz struktury katalogów. Budowa systemu plików. Metody przydziału miejsca na dyskach twardych.
Podstawy zarządzania systemem Windows z poziomu wiersza polecenia. Administrowanie systemem. Nadawanie praw dostępu do zasobów systemu. Podstawowe polecenia systemu Windows, etykiety i skoki do etykiet, stosowanie parametrów. Podstawy Windows Powershell.
Skrypty powłoki. Podstawowe polecenia systemu Linux. Elementy języka programowania. Przekazywanie parametrów do skryptu. Strumienie, potoki, przekierowywanie strumieni.
Narzędzia programisty w systemie Linux. Kompilatory gcc i g++. Profilowanie i debugowanie programu. Programowanie za pomocą funkcji systemowych.
Teaching methods
Wykład: wykład konwencjonalny/tradycyjny.
Laboratorium: ćwiczenia laboratoryjne z wykorzystaniem sprzętu komputerowego.
Learning outcomes and methods of theirs verification
Outcome description
Outcome symbols
Methods of verification
The class form
Assignment conditions
Wykład - warunkiem zaliczenia jest uzyskanie pozytywnej oceny z egzaminu przeprowadzanego w formie pisemnej.
Laboratorium - warunkiem zaliczenia jest uzyskanie pozytywnych ocen ze sprawdzianów przeprowadzonych z wybranego materiału (minimum dwóch) oraz zaliczenie sprawozdań z zajęć laboratoryjnych wskazanych przez prowadzącego.