Nazwa przedmiotu:
Systemy operacyjne (I)
Koordynator przedmiotu:
Tomasz Jordan KRUK
Status przedmiotu:
Obowiązkowy
Poziom kształcenia:
Studia II stopnia
Program:
Informatyka
Grupa przedmiotów:
Przedmioty techniczne - podstawowe
Kod przedmiotu:
SOI
Semestr nominalny:
1 / rok ak. 2012/2013
Liczba punktów ECTS:
5
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
100
Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
4
Język prowadzenia zajęć:
polski
Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
2
Formy zajęć i ich wymiar w semestrze:
  • Wykład30h
  • Ćwiczenia0h
  • Laboratorium30h
  • Projekt0h
  • Lekcje komputerowe0h
Wymagania wstępne:
Umiejętność programowania w języku C.
Limit liczby studentów:
100
Cel przedmiotu:
Zapoznanie studentów z ideą, budową i własnościami systemów operacyjnych. Praktyczne wprowadzenie do programowania systemowego.
Treści kształcenia:
Wykład: Wprowadzenie. Podstawowe definicje: system operacyjny, proces zasób. Funkcje jądra systemu. Historia rozwoju systemów operacyjnych. Tryby przetwarzania. Koncepcje i struktury systemów operacyjnych. Programowanie w języku interpretera poleceń. Komendy powłoki. Przekierowanie wejścia/wyjścia. Metaznaki i rozpoznawanie wzorców. Zmienne powłoki i zasady substytucji. Zarządzanie procesami. Stany procesów. Procesy a wątki. Architektury SMP. Wzajemne wykluczenie i synchronizacja. Wyścigi i sekcje krytyczne. Komunikacja i synchronizacja międzyprocesowa. Klasyczne algorytmy synchronizacyjne. Zarządzanie pamięcią. Organizacja pamięci. Adresowanie. Pamięć dzielona. Pamięć wirtualna. Algorytmy rozmieszczenia oraz wymiany. Segmentacja i stronicowanie. Zarządzanie urządzeniami zewnętrznymi. Metody oprogramowywania wejścia wyjścia. Rozwiązania RAID. Zarządzanie plikami. Struktura i organizacja systemy plików. Katalogi i pliki specjalne. Metody ochrony i kontroli dostępu. Wirtualizacja. Hipernadzorca. Parawirtualizacja. Maszyny wirtualne. Przetwarzanie rozproszone i rozwiązania klastrowe. Komunikacja międzyprocesowa w środowisku rozproszonym. Typy rozwiązań klastrowych. Zarządzanie procesami w środowisku rozproszonym. Wiedza nabyta na wykładzie jest sprawdzana podczas kolokwium w trakcie semestru (Kol.) oraz egzaminu (E.). Laboratorium: Studenci realizują indywidualnie zadania dotyczące każdego z poniższych zagadnień: Lab0. Wprowadzenie do środowiska laboratoryjnego Lab1. Kompilacja jądra i dodanie wywołania systemowego Lab2. Modyfikacja algorytmu szeregowania procesów Lab3. Synchronizacja z wykorzystaniem semaforów Lab4. Synchronizacja z wykorzystaniem monitorów Lab5. Modyfikacja algorytmów zarządzania pamięcią operacyjną Lab6. Tworzenie własnego systemu plików Zadanie wprowadzające Lab0 wymaga zaliczenia ale nie jest punktowane. Zadania podzielone są na zadania krótkie (Lab0., Lab1., Lab5.) oraz długie (Lab2., Lab3., Lab4., Lab6.). Implementacja zadań długich obligatoryjnie poprzedzana jest sprawdzianami kontrolującymi przygotowanie merytoryczne (odpowiednio: We2, We3, We4, We6) oraz weryfikacją zaproponowanego zarysu rozwiązania.
Metody oceny:
-
Egzamin:
tak
Literatura:
1. Andrew S. Tanenbaum, Systemy operacyjne. Wydanie III. Wyd. Helion, 2010 2. William Stallings, Systemy operacyjne. Wydawnictwo Naukowe PWN, 2006
Witryna www przedmiotu:
http://www.ia.pw.edu.pl/~tkruk/edu/soi.b/
Uwagi:
-

Efekty uczenia się

Profil ogólnoakademicki - wiedza

Efekt WPO_01
Student, który zaliczył przedmiot posiada wiedzę odnośnie budowy i własności systemów operacyjnych.
Weryfikacja: ocena wyników Kol i E
Powiązane efekty kierunkowe: K_W04
Powiązane efekty obszarowe: T2A_W02
Efekt WPO_02
Student, który zaliczył przedmiot posiada wiedzę odnośnie metod komunikacji i synchronizacji międzyprocesowej.
Weryfikacja: ocena wyników Kol i E
Powiązane efekty kierunkowe: K_W04
Powiązane efekty obszarowe: T2A_W02

Profil ogólnoakademicki - umiejętności

Efekt UPO_01
Student, który zaliczył przedmiot jest w stanie kompilować, modyfikować i rozszerzać system operacyjny.
Weryfikacja: ocena wyników We2, We6 i Lab1., Lab2., Lab5. i Lab6.
Powiązane efekty kierunkowe: K_U11, K_U13
Powiązane efekty obszarowe: T2A_U16, T2A_U18
Efekt UPO_02
Student, który zaliczył przedmiot jest w stanie prawidłowo wykorzystywać mechanizmy do synchronizacji i komunikacji międzyprocesowej.
Weryfikacja: ocena wyników We3, We4 i Lab3., Lab4.
Powiązane efekty kierunkowe: K_U11, K_U13
Powiązane efekty obszarowe: T2A_U16, T2A_U18