Module also offered within study programmes:
General information:
Name:
Operating systems
Course of study:
2019/2020
Code:
IETP-1-403-n
Faculty of:
Computer Science, Electronics and Telecommunications
Study level:
First-cycle studies
Specialty:
-
Field of study:
Electronics and Telecommunications
Semester:
4
Profile of education:
Academic (A)
Lecture language:
Polish
Form and type of study:
Part-time studies
Course homepage:
 
Responsible teacher:
Wiśniowski Piotr (pwis@agh.edu.pl)
Module summary

Kurs umożliwia zdobycia wiedzy dotyczącej podstawowych koncepcji, struktur i mechanizmów stosowanych w systemach operacyjnych oraz praktycznych umiejętność obsługi i pracy w systemie Linux.

Description of learning outcomes for module
MLO code Student after module completion has the knowledge/ knows how to/is able to Connections with FLO Method of learning outcomes verification (form of completion)
Social competence: is able to
M_K001 Potrafi pracować w zespole. Ma świadomość odpowiedzialności za pracę własną i zespołu, a także jest gotowy podporządkować się zasadom pracy zespołowej. ETP1A_K04 Test
Skills: he can
M_U001 Potrafi obsługiwać i pracować w systemie Linux z poziomu konsoli oraz automatyzować pracę z wykorzystaniem skryptów powłoki. ETP1A_U14 Test
M_U002 Potrafi konfigurować i monitorować linuxpodobne systemy operacyjne za pomocą poznanych narzędzi. ETP1A_U10 Test
Knowledge: he knows and understands
M_W001 Zna strukturę i działania systemu operacyjnego. ETP1A_W15 Test
M_W002 Ma wiedzę w zakresie zarządzania procesami, pamięciami i operacjami wejścia wyjścia przez system operacyjny. ETP1A_W11 Test
M_W003 Ma wiedzę w zakresie zasad ochrony i bezpieczeństwa systemów operacyjnych. ETP1A_W11 Test
Number of hours for each form of classes:
Sum (hours)
Lecture
Audit. classes
Lab. classes
Project classes
Conv. seminar
Seminar classes
Pract. classes
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
30 16 0 14 0 0 0 0 0 0 0 0
FLO matrix in relation to forms of classes
MLO code Student after module completion has the knowledge/ knows how to/is able to Form of classes
Lecture
Audit. classes
Lab. classes
Project classes
Conv. seminar
Seminar classes
Pract. classes
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
Social competence
M_K001 Potrafi pracować w zespole. Ma świadomość odpowiedzialności za pracę własną i zespołu, a także jest gotowy podporządkować się zasadom pracy zespołowej. - - + - - - - - - - -
Skills
M_U001 Potrafi obsługiwać i pracować w systemie Linux z poziomu konsoli oraz automatyzować pracę z wykorzystaniem skryptów powłoki. - - + - - - - - - - -
M_U002 Potrafi konfigurować i monitorować linuxpodobne systemy operacyjne za pomocą poznanych narzędzi. - - + - - - - - - - -
Knowledge
M_W001 Zna strukturę i działania systemu operacyjnego. + - - - - - - - - - -
M_W002 Ma wiedzę w zakresie zarządzania procesami, pamięciami i operacjami wejścia wyjścia przez system operacyjny. + - - - - - - - - - -
M_W003 Ma wiedzę w zakresie zasad ochrony i bezpieczeństwa systemów operacyjnych. + - - - - - - - - - -
Student workload (ECTS credits balance)
Student activity form Student workload
Summary student workload 85 h
Module ECTS credits 3 ECTS
Udział w zajęciach dydaktycznych/praktyka 30 h
Preparation for classes 10 h
przygotowanie projektu, prezentacji, pracy pisemnej, sprawozdania 15 h
Realization of independently performed tasks 30 h
Module content
Lectures (16h):

Zajęcia w ramach modułu prowadzone są w postaci wykładu (16 godzin) oraz ćwiczeń laboratoryjnych (16 godzin)

WYKŁADY

1. Wprowadzenie-przegląd
Pojęcie systemu operacyjnego; organizacja i architektura systemu komputerowego; struktura i działanie systemu operacyjnego; zarządzanie procesami i zasobami pamięci; systemy wejścia-wyjścia; ochrona i bezpieczeństwo.
2. Procesy i wątki
Koncepcja procesu; planowanie procesów; działanie procesów; komunikacja międzyprocesowa; modele wielowątkowości; biblioteki wątków; wątki w systemie Linux.
3. Synchronizacja procesów
Sekcja krytyczna; sprzętowa synchronizacja; semafory; problemy synchronizacji; monitory; zakleszczenia.
4. Pamięć główna i wirtualna
Stronicowanie procesu; przydział ciągły pamięci; segmentacja; stronicowanie na żądanie; kopiowanie przy zapisie; zastępowanie stron; przydział ramek.
5. Pamięć pomocnicza (masowa)
Struktura dysku; podłączanie dysku; planowanie i zarządzanie dyskiem; struktura RAID.
6. System plików
Pojęcie pliku; metody dostępu; struktura katalogu i dysku; montowanie systemu plików; dzielenie plików; ochrona, implementacja pliku i katalogu; metody przydziału; zarządzanie wolną przestrzenią, efektywność i wydajność.
7. Systemy wejścia-wyjścia
Przegląd; sprzęt wejścia-wyjścia; użytkowy interfejs wejścia-wyjścia; przekształcanie wywołań wejścia-wyjścia; strumienie.
8. Ochrona i bezpieczeństwo systemów operacyjnych
Cele i zasady ochrony; kontrola dostępu; praw dostępu; zagrożenia programowe i systemowe; klasyfikacja poziomu bezpieczeństwa; bezpieczeństwo w systemie Linux.

Laboratory classes (14h):

ĆWICZENIA

Zajęcia 1. Ćw.1- Linux, podstawowe polecenia powłoki bash
Zajęcia 2. Ćw.2-Obsługa plików i katalogów, kompilacja programów
Zajęcia 3. Ćw.3-Skrypty powłoki bash
Zajęcia 4. Kolokwium z Ćw. 1 – 3
Zajęcia 5. Ćw.4-Procesy, wątki, sygnały
Zajęcia 6. Ćw.5-Monitorowanie procesów i pamięci
Zajęcia 7. Kolokwium z Ćw. 4 – 5

Additional information
Teaching methods and techniques:
  • Lectures: Treści prezentowane na wykładzie są przekazywane w formie prezentacji multimedialnej w połączeniu z klasycznym wykładem tablicowym wzbogaconymi o pokazy odnoszące się do prezentowanych zagadnień.
  • Laboratory classes: W trakcie zajęć laboratoryjnych studenci samodzielnie rozwiązują zadany problem praktyczny, dobierając odpowiednie narzędzia. Prowadzący stymuluje grupę do refleksji nad problemem, tak by otrzymane wyniki miały wysoką wartość merytoryczną.
Warunki i sposób zaliczenia poszczególnych form zajęć, w tym zasady zaliczeń poprawkowych, a także warunki dopuszczenia do egzaminu:

Zaliczenie przedmiotu
Warunkiem zaliczenia przedmiotu jest pozytywna ocena z laboratorium oraz testu z treści prezentowanych na wykładzie.
Zaliczenie laboratorium
Warunkiem koniecznym uzyskania pozytywnej oceny końcowej z laboratorium jest:
a) wykonanie wszystkich ćwiczeń laboratoryjnych i uzyskanie minimum 50 % punktów z kolokwiów,
b) prezentacja rozwiązań zadań problemowych na zajęciach i uzyskanie minimum 50 % punktów za rozwiązanie zadań.
Ocena zaliczeniowa z laboratorium jest wyliczana na podstawie punktów zgodnie z Regulaminem Studiów.

Szczegółowe warunki zaliczenia określa “Regulamin – zasady oceniania i zaliczenia”, który omawiany jest na pierwszych zajęciach laboratoryjnych.

Participation rules in classes:
  • Lectures:
    – Attendance is mandatory: No
    – Participation rules in classes: Studenci uczestniczą w zajęciach poznając kolejne treści nauczania zgodnie z syllabusem przedmiotu. Studenci winni na bieżąco zadawać pytania i wyjaśniać wątpliwości. Rejestracja audiowizualna wykładu wymaga zgody prowadzącego.
  • Laboratory classes:
    – Attendance is mandatory: Yes
    – Participation rules in classes: Studenci wykonują ćwiczenia laboratoryjne zgodnie z materiałami udostępnionymi przez prowadzącego. Student jest zobowiązany do przygotowania się w przedmiocie wykonywanego ćwiczenia, co może zostać zweryfikowane kolokwium w formie ustnej lub pisemnej. Zaliczenie zajęć odbywa się na podstawie zaprezentowania rozwiązania postawionego problemu. Zaliczenie modułu jest możliwe po zaliczeniu wszystkich zajęć laboratoryjnych.
Method of calculating the final grade:

Ocena końcowa jest średnią ważoną: 75% oceny z laboratorium i 25 % z testu.

Sposób i tryb wyrównywania zaległości powstałych wskutek nieobecności studenta na zajęciach:

Obecność na zajęciach laboratoryjnych jest obowiązkowa. Nieobecności na zajęciach i ich usprawiedliwianie będzie traktowane zgodnie z Regulaminem Studiów.
Nieobecność na ćwiczenie należy odrobić najpóźniej do końca zajęć semestru.

Prerequisites and additional requirements:

Znajomość podstaw programowania.

Recommended literature and teaching resources:

1.William Stallings, „Systemy operacyjne. Architektura, funkcjonowanie i projektowanie”, Helion 2018
2. Andrew S. Tanenbaum, Herbert Bos “Systemy operacyjne”, Helion 2016
3. William Stallings, „Systemy operacyjne. Struktura i zasady budowy”, PWN 2006
4. Glass Graham, Ables King, “Linux dla programistów i użytkowników” Helion, 2007
5. William E. Shotts, “Linux : wprowadzenie do wiersza poleceń”, Helion 2015

Scientific publications of module course instructors related to the topic of the module:

Additional scientific publications not specified

Additional information:

Zajęcia są prowadzone z wykorzystaniem innowacyjnych metod dydaktycznych opracowanych w projekcie POWR.03.04.00-00-D002/16, realizowanym w latach 2017-2019 na Wydziale Informatyki, Elektroniki i Telekomunikacji w ramach Programu Operacyjnego Wiedza Edukacja Rozwój 2014-2020.