Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Informatyki - Informatyka (N1)

Sylabus przedmiotu Systemy operacyjne:

Informacje podstawowe

Kierunek studiów Informatyka
Forma studiów studia niestacjonarne Poziom pierwszego stopnia
Tytuł zawodowy absolwenta inżynier
Obszary studiów charakterystyki PRK, kompetencje inżynierskie PRK
Profil ogólnoakademicki
Moduł
Przedmiot Systemy operacyjne
Specjalność przedmiot wspólny
Jednostka prowadząca Katedra Inżynierii Oprogramowania
Nauczyciel odpowiedzialny Sławomir Wernikowski <Slawomir.Wernikowski@zut.edu.pl>
Inni nauczyciele Witold Maćków <Witold.Mackow@zut.edu.pl>
ECTS (planowane) 6,0 ECTS (formy) 6,0
Forma zaliczenia zaliczenie Język polski
Blok obieralny Grupa obieralna

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
wykładyW3 18 3,00,50zaliczenie
laboratoriaL3 18 3,00,50zaliczenie

Wymagania wstępne

KODWymaganie wstępne
W-1Architektura systemów komputerowych
W-2Programowanie 1

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Zapoznanie słuchaczy z rolą i znaczeniem systemu operacyjnego w strukturze systemu komputerowego.
C-2Zapoznanie słuchaczy z mechanizmami stosowanymi przez systemy operacyjne w celu realizacji swoich funkcji.
C-3Wykształcenie umiejętności wszechstronnego korzystania ze środków udostępnianych przez systemy operacyjne oraz podstaw programowania z użyciem usług systemowych.

Treści programowe z podziałem na formy zajęć

KODTreść programowaGodziny
laboratoria
T-L-1Podstawy pracy w konsoli systemu Linux1
T-L-2Podstawowe narzędzia manipulacji plikami w systemie Linux1
T-L-3Prawa plików w systemie Linux i manipulowanie nimi1
T-L-4Filtry i potoki w systemie Linux2
T-L-5Wyrażenia regularne i ich zastosowanie w narzędziach systemu Linux1
T-L-6Zarządzanie procesami w systemie Linux2
T-L-7Programowanie skryptów w systemie Linux2
T-L-8Instalacja, konfiguracja i podstawy zarządzania systemem Linux1
T-L-9Podstawy korzystania z konsoli PowerShell1
T-L-10Programowanie skryptów w konsoli PowerShell1
T-L-11Podstawy programowania systemowego w systemie Linux - usługi plikowe.1
T-L-12Procesy w systemie Linux - zadanie programistyczne.2
T-L-13Procesy w systemie Windows - zadanie programistyczne.2
18
wykłady
T-W-1Tło historyczne pojawienia się i rozwoju systemów operacyjnych. Charakterystyka zadań i przeznaczenia systemów operacyjnych w kolejnych dekadach rozwoju technologii komputerowej. Kamienie milowe rozwoju systemów operacyjnych.2
T-W-2Wprowadzenie do systemów operacyjnych: podstawowe pojęcia, zadania i ogólna struktura systemu operacyjnego. Architektura von Neumanna, podsystem przerwań, rodzaje przerwań i sposoby implementacji w różnych architekturach, podstawowe podsystemu sprzętu komputerowego z punktu widzenia zarządzania przez system operacyjny. Klasyfikacja systemów operacyjnych i ich charakterystyka wraz z przykładami.2
T-W-3Procesy w systemie operacyjnym. Pojęcie procesu. Tworzenie i kończenie procesów. Atrybuty procesów. Cykl życia procesu. Synchronizacja procesów. Sekcja krytyczna. Sprzętowe środki synchronizacyjne. Programowe środki synchronizacyjne. Algorytm Dekkera. Semafory Dijkstry, Monitory Hoare'a. Klasyczne problemy synchronizacji. Zarządzanie procesami w systemie Linux. Zarządzanie procesami w systemach Windows. API systemów Linux i Windows dotyczące usług tworzenia, kończenia i synchronizowania procesów.3
T-W-4Program wykonywalny jako źródło tekstu procesu w systemie operacyjnym. Kompilacja, łączenie, ładowanie, wiązanie, uruchomienie. Formaty plików wykonywalnych i plików bibliotek łączonych dynamicznie w systemach Linux i Windows.2
T-W-5Wątki w systemach operacyjnych. Koncepcja wątku. Modele wielowątkowości. Włókna. Techniki realizacji wielowątkowości. Wątki na poziomie semantyki języków programowania (Java, C++). Wątki trybu użytkownika (Pthreads). Wątki w systemach Windows.4
T-W-6Wirtualizacja. Pojęcie, historia, przeznaczenie, zastosowania. Wirtualizacja na poziomie języków programowania - bytecode i środowiska wykonawcze (Java, platforma .NET). Modele wirtualizacji. Wirtualizacja sprzętu, usług i zasobów. Wirtualne i rozproszone systemy plików. Wirtualizacja usług sieciowych. Cloud Computing. Podejścia "Infrastructure as a Service", "Platform as a service", "Software as a service", "Mobile "backend" as a service". Sprzętowe środki wspierania wirtualizacji.2
T-W-7Pamięć operacyjna i zarządzanie pamięcią w systemie operacyjnym. Hierarchia organizacji pamięci we współczesnych systemach komputerowych Klasyczne algorytmy zarządzania pamięcią. Algorytmy przydziału pamięci. Stronicowanie - motywacja, realizacja, przykłady implementacji. Wiązanie adresów. Segmentacja - motywacja, realizacja, przykłady implementacji. UMA i NUMA. Pamięć wirtualna - motywacja, historia, realizacja. Stronicowanie na żądanie. Segmentacja na żądanie. Algorytmy wymiany stron. Migotanie stron. Szczegóły realizacji pamięci wirtualnej w systemach Linux i Windows.0
T-W-8Systemy operacyjne czasu rzeczywistego. Cechy charakterystyczne, wymagania, implementacja, przykłady.1
T-W-9Systemy operacyjne urządzeń mobilnych. Charakterystyka, wymagania, historia, implementacja, przykłady.1
T-W-10System plików i podsystem wejścia/wyjścia. Rola i zadania systemu plików. Rodzaje systemów plików, wady, zalety, implementacja, rozpowszechnienie. Przykłady.1
18

Obciążenie pracą studenta - formy aktywności

KODForma aktywnościGodziny
laboratoria
A-L-1Uczestnictwo w zajęciach18
A-L-2Przygotowanie się do zajęć oraz rozwiązywanie zadań off-site48
A-L-3Udział w konsultacjach9
75
wykłady
A-W-1Uczestnictwo w wykładach18
A-W-2Samodzielne studiowanie treści omawianych na wykładach38
A-W-3Przygotowanie do zaliczenia10
A-W-4Udział w konsultacjach7
A-W-5Udział w zaliczeniu2
75

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Wykład informacyjno-konwersatoryjny
M-2Ćwiczenia laboratoryjne

Sposoby oceny

KODSposób oceny
S-1Ocena formująca: Ocena na podstawie sprawdzianu wejściowego oraz stopnia wykonania scenariuszy konspektów laboratoryjnych i/lub sprawozdania z zajęć
S-2Ocena podsumowująca: Test zaliczający (jednokrotnego lub wielokrotnego wyboru) oraz pytania otwarte (zadania problemowe)

Zamierzone efekty uczenia się - wiedza

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
I_1A_C07_W01
Student rozumie rolę i zadania systemu operacyjnego komputera
I_1A_W06C-1T-W-1, T-W-3, T-W-2, T-W-5, T-W-4M-1, M-2S-1
I_1A_C07_W02
Student potrafi wyjaśnić oraz zidentyfikować praktyczne problemy związane funkcjonowaniem i użytkowaniem systemu operacyjnego
I_1A_W10C-1, C-2T-W-6, T-W-7, T-W-8, T-W-9, T-W-10M-1S-2

Zamierzone efekty uczenia się - umiejętności

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
I_1A_C07_U01
Student potrafi korzystać konsoli oraz z języków skryptowych charakterystycznych dla platform systemów Unix/Linux i Windows
I_1A_U09C-3T-L-1, T-L-2, T-L-3, T-L-4, T-L-5, T-L-6, T-L-7, T-L-8, T-L-9, T-L-10M-2S-1
I_1A_C07_U02
Student potrafi korzystać z funkcji systemowych systemu operacyjnego Unix/Linux oraz Windows na poziomie programów pisanych w języku C/C++
I_1A_U08C-3T-L-11, T-L-12, T-L-13M-2S-1

Zamierzone efekty uczenia się - inne kompetencje społeczne i personalne

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
I_1A_C07_K01
Student jest kreatywny i przygotowany do wykorzystywania różnorodnych źródeł wiedzy
I_1A_K01C-3T-L-1, T-L-2, T-L-3, T-L-4, T-L-5, T-L-6, T-L-7, T-L-8, T-L-9, T-L-10, T-L-11, T-L-12, T-L-13M-2S-1

Kryterium oceny - wiedza

Efekt uczenia sięOcenaKryterium oceny
I_1A_C07_W01
Student rozumie rolę i zadania systemu operacyjnego komputera
2,0
3,0potrafi wymienić i zdefiniować wybrane podstawowe role i zadania systemu operacyjnego
3,5potrafi wymienić i zdefiniować dowolne podstawowe role i zadania systemu operacyjnego
4,0potrafi precyzyjnie opisać wybrane role i zadania systemu operacyjnego
4,5potrafi precyzyjnie opisać dowolne role i zadania systemu operacyjnego
5,0potrafi objaśnić wpływ architektury systemu komputerowego na role i zadania systemu operacyjnego
I_1A_C07_W02
Student potrafi wyjaśnić oraz zidentyfikować praktyczne problemy związane funkcjonowaniem i użytkowaniem systemu operacyjnego
2,0
3,0potrafi wymienić wybrane podstawowe elementy składowe systemu operacyjnego mające wpływ na jego funkcjonowanie i użytkowanie
3,5potrafi wymienić dowolne podstawowe elementy składowe systemu operacyjnego mające wpływ na jego funkcjonowanie i użytkowanie
4,0potrafi precyzyjnie opisać wybrane podstawowe elementy składowe systemu operacyjnego mające wpływ na jego funkcjonowanie i użytkowanie
4,5potrafi precyzyjnie opisać dowolne podstawowe elementy składowe systemu operacyjnego mające wpływ na jego funkcjonowanie i użytkowanie
5,0potrafi objaśnić wpływ architektury systemu komputerowego na funkcjonowanie i użytkowanie systemu operacyjnego

Kryterium oceny - umiejętności

Efekt uczenia sięOcenaKryterium oceny
I_1A_C07_U01
Student potrafi korzystać konsoli oraz z języków skryptowych charakterystycznych dla platform systemów Unix/Linux i Windows
2,0
3,0potrafi użytkować systemy operacyjne Linux i Windows na poziomie interfejsu tekstowego w zakresie podstawowych poleceń użytkownika
3,5potrafi użytkować systemy operacyjne Linux i Windows na poziomie interfejsu tekstowego w zakresie podstawowych poleceń użytkownika i administratora
4,0potrafi użytkować systemy operacyjne Linux i Windows na poziomie interfejsu tekstowego w zakresie zaawansowanych poleceń użytkownika i administratora
4,5jak 4.0 oraz potrafi pisać proste skrypty przy użyciu języków dostępnych w systemach Linux i Windows
5,0jak 4.0 oraz biegle zna języki skryptowe dostępne w systemach operacyjnych Linux i Windows
I_1A_C07_U02
Student potrafi korzystać z funkcji systemowych systemu operacyjnego Unix/Linux oraz Windows na poziomie programów pisanych w języku C/C++
2,0
3,0Słuchacz potrafi w stopniu podstawowym użyć kompilator oraz debuger w celu uruchomienia podstawowych usług systemy operacyjnego oraz potrafi w stopniu podstawowym posługiwać się dostępną w systemie dokumentacją dotyczącą funkcji systemowych
3,5potrafi efektywnie użyć wybrane podstawowe mechanizmy systemowe
4,0potrafi efektywnie użyć dowolne podstawowe mechanizmy systemowe
4,5potrafi efektywnie użyć wybrane zaawansowane mechanizmy systemowe
5,0potrafi efektywnie użyć dowolne zaawansowane mechanizmy systemowe

Kryterium oceny - inne kompetencje społeczne i personalne

Efekt uczenia sięOcenaKryterium oceny
I_1A_C07_K01
Student jest kreatywny i przygotowany do wykorzystywania różnorodnych źródeł wiedzy
2,0
3,0dostateczna umiejętność samodzielnego szukania i wykorzystania informacji, wymaga bardzo częstej pomocy nauczyciela
3,5ponad dostateczna umiejętność samodzielnego szukania i wykorzystania informacji, wymaga częstej pomocy nauczyciela
4,0dobra umiejętność samodzielnego szukania i wykorzystania informacji, wymaga rzadkiej pomocy nauczyciela
4,5ponad dobra umiejętność samodzielnego szukania i wykorzystania informacji, wymaga bardzo rzadkiej pomocy nauczyciela
5,0wyróżniająca umiejętność samodzielnego szukania i wykorzystania informacji, potrafi bez pomocy nauczyciela wykonać wszystkie ćwiczenia laboratoryjne zgodnie z otrzymanymi konspektami

Literatura podstawowa

  1. A.Silberschatz, I.Peterson, P.Galvin, Podstawy systemów operacyjnych, Helion, Gliwice
  2. W. Stallings, Systemy operacyjne - struktura i zasady budowy

Literatura dodatkowa

  1. A.S.Tanenbaum, Operating System: Design and Implementation
  2. E. Siever, Linux - podręcznik użytkownika
  3. E. Wilson, Windows PowerShell

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1Podstawy pracy w konsoli systemu Linux1
T-L-2Podstawowe narzędzia manipulacji plikami w systemie Linux1
T-L-3Prawa plików w systemie Linux i manipulowanie nimi1
T-L-4Filtry i potoki w systemie Linux2
T-L-5Wyrażenia regularne i ich zastosowanie w narzędziach systemu Linux1
T-L-6Zarządzanie procesami w systemie Linux2
T-L-7Programowanie skryptów w systemie Linux2
T-L-8Instalacja, konfiguracja i podstawy zarządzania systemem Linux1
T-L-9Podstawy korzystania z konsoli PowerShell1
T-L-10Programowanie skryptów w konsoli PowerShell1
T-L-11Podstawy programowania systemowego w systemie Linux - usługi plikowe.1
T-L-12Procesy w systemie Linux - zadanie programistyczne.2
T-L-13Procesy w systemie Windows - zadanie programistyczne.2
18

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Tło historyczne pojawienia się i rozwoju systemów operacyjnych. Charakterystyka zadań i przeznaczenia systemów operacyjnych w kolejnych dekadach rozwoju technologii komputerowej. Kamienie milowe rozwoju systemów operacyjnych.2
T-W-2Wprowadzenie do systemów operacyjnych: podstawowe pojęcia, zadania i ogólna struktura systemu operacyjnego. Architektura von Neumanna, podsystem przerwań, rodzaje przerwań i sposoby implementacji w różnych architekturach, podstawowe podsystemu sprzętu komputerowego z punktu widzenia zarządzania przez system operacyjny. Klasyfikacja systemów operacyjnych i ich charakterystyka wraz z przykładami.2
T-W-3Procesy w systemie operacyjnym. Pojęcie procesu. Tworzenie i kończenie procesów. Atrybuty procesów. Cykl życia procesu. Synchronizacja procesów. Sekcja krytyczna. Sprzętowe środki synchronizacyjne. Programowe środki synchronizacyjne. Algorytm Dekkera. Semafory Dijkstry, Monitory Hoare'a. Klasyczne problemy synchronizacji. Zarządzanie procesami w systemie Linux. Zarządzanie procesami w systemach Windows. API systemów Linux i Windows dotyczące usług tworzenia, kończenia i synchronizowania procesów.3
T-W-4Program wykonywalny jako źródło tekstu procesu w systemie operacyjnym. Kompilacja, łączenie, ładowanie, wiązanie, uruchomienie. Formaty plików wykonywalnych i plików bibliotek łączonych dynamicznie w systemach Linux i Windows.2
T-W-5Wątki w systemach operacyjnych. Koncepcja wątku. Modele wielowątkowości. Włókna. Techniki realizacji wielowątkowości. Wątki na poziomie semantyki języków programowania (Java, C++). Wątki trybu użytkownika (Pthreads). Wątki w systemach Windows.4
T-W-6Wirtualizacja. Pojęcie, historia, przeznaczenie, zastosowania. Wirtualizacja na poziomie języków programowania - bytecode i środowiska wykonawcze (Java, platforma .NET). Modele wirtualizacji. Wirtualizacja sprzętu, usług i zasobów. Wirtualne i rozproszone systemy plików. Wirtualizacja usług sieciowych. Cloud Computing. Podejścia "Infrastructure as a Service", "Platform as a service", "Software as a service", "Mobile "backend" as a service". Sprzętowe środki wspierania wirtualizacji.2
T-W-7Pamięć operacyjna i zarządzanie pamięcią w systemie operacyjnym. Hierarchia organizacji pamięci we współczesnych systemach komputerowych Klasyczne algorytmy zarządzania pamięcią. Algorytmy przydziału pamięci. Stronicowanie - motywacja, realizacja, przykłady implementacji. Wiązanie adresów. Segmentacja - motywacja, realizacja, przykłady implementacji. UMA i NUMA. Pamięć wirtualna - motywacja, historia, realizacja. Stronicowanie na żądanie. Segmentacja na żądanie. Algorytmy wymiany stron. Migotanie stron. Szczegóły realizacji pamięci wirtualnej w systemach Linux i Windows.0
T-W-8Systemy operacyjne czasu rzeczywistego. Cechy charakterystyczne, wymagania, implementacja, przykłady.1
T-W-9Systemy operacyjne urządzeń mobilnych. Charakterystyka, wymagania, historia, implementacja, przykłady.1
T-W-10System plików i podsystem wejścia/wyjścia. Rola i zadania systemu plików. Rodzaje systemów plików, wady, zalety, implementacja, rozpowszechnienie. Przykłady.1
18

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1Uczestnictwo w zajęciach18
A-L-2Przygotowanie się do zajęć oraz rozwiązywanie zadań off-site48
A-L-3Udział w konsultacjach9
75
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1Uczestnictwo w wykładach18
A-W-2Samodzielne studiowanie treści omawianych na wykładach38
A-W-3Przygotowanie do zaliczenia10
A-W-4Udział w konsultacjach7
A-W-5Udział w zaliczeniu2
75
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięI_1A_C07_W01Student rozumie rolę i zadania systemu operacyjnego komputera
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_W06Posiada ogólną wiedzę dotyczącą szeroko pojętych systemów informatycznych, obejmującą różne fazy eksploatacji i rozwoju systemów oraz związane z tym procesy, zna podstawowe narzędzia i techniki przydatne w rozwiązywaniu problemów informatycznych.
Cel przedmiotuC-1Zapoznanie słuchaczy z rolą i znaczeniem systemu operacyjnego w strukturze systemu komputerowego.
Treści programoweT-W-1Tło historyczne pojawienia się i rozwoju systemów operacyjnych. Charakterystyka zadań i przeznaczenia systemów operacyjnych w kolejnych dekadach rozwoju technologii komputerowej. Kamienie milowe rozwoju systemów operacyjnych.
T-W-3Procesy w systemie operacyjnym. Pojęcie procesu. Tworzenie i kończenie procesów. Atrybuty procesów. Cykl życia procesu. Synchronizacja procesów. Sekcja krytyczna. Sprzętowe środki synchronizacyjne. Programowe środki synchronizacyjne. Algorytm Dekkera. Semafory Dijkstry, Monitory Hoare'a. Klasyczne problemy synchronizacji. Zarządzanie procesami w systemie Linux. Zarządzanie procesami w systemach Windows. API systemów Linux i Windows dotyczące usług tworzenia, kończenia i synchronizowania procesów.
T-W-2Wprowadzenie do systemów operacyjnych: podstawowe pojęcia, zadania i ogólna struktura systemu operacyjnego. Architektura von Neumanna, podsystem przerwań, rodzaje przerwań i sposoby implementacji w różnych architekturach, podstawowe podsystemu sprzętu komputerowego z punktu widzenia zarządzania przez system operacyjny. Klasyfikacja systemów operacyjnych i ich charakterystyka wraz z przykładami.
T-W-5Wątki w systemach operacyjnych. Koncepcja wątku. Modele wielowątkowości. Włókna. Techniki realizacji wielowątkowości. Wątki na poziomie semantyki języków programowania (Java, C++). Wątki trybu użytkownika (Pthreads). Wątki w systemach Windows.
T-W-4Program wykonywalny jako źródło tekstu procesu w systemie operacyjnym. Kompilacja, łączenie, ładowanie, wiązanie, uruchomienie. Formaty plików wykonywalnych i plików bibliotek łączonych dynamicznie w systemach Linux i Windows.
Metody nauczaniaM-1Wykład informacyjno-konwersatoryjny
M-2Ćwiczenia laboratoryjne
Sposób ocenyS-1Ocena formująca: Ocena na podstawie sprawdzianu wejściowego oraz stopnia wykonania scenariuszy konspektów laboratoryjnych i/lub sprawozdania z zajęć
Kryteria ocenyOcenaKryterium oceny
2,0
3,0potrafi wymienić i zdefiniować wybrane podstawowe role i zadania systemu operacyjnego
3,5potrafi wymienić i zdefiniować dowolne podstawowe role i zadania systemu operacyjnego
4,0potrafi precyzyjnie opisać wybrane role i zadania systemu operacyjnego
4,5potrafi precyzyjnie opisać dowolne role i zadania systemu operacyjnego
5,0potrafi objaśnić wpływ architektury systemu komputerowego na role i zadania systemu operacyjnego
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięI_1A_C07_W02Student potrafi wyjaśnić oraz zidentyfikować praktyczne problemy związane funkcjonowaniem i użytkowaniem systemu operacyjnego
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_W10Posiada uporządkowaną i pogłębioną wiedzę z zakresu architektury systemów komputerowych, uwzględniającą współczesne kierunki rozwoju sprzętu komputerowego.
Cel przedmiotuC-1Zapoznanie słuchaczy z rolą i znaczeniem systemu operacyjnego w strukturze systemu komputerowego.
C-2Zapoznanie słuchaczy z mechanizmami stosowanymi przez systemy operacyjne w celu realizacji swoich funkcji.
Treści programoweT-W-6Wirtualizacja. Pojęcie, historia, przeznaczenie, zastosowania. Wirtualizacja na poziomie języków programowania - bytecode i środowiska wykonawcze (Java, platforma .NET). Modele wirtualizacji. Wirtualizacja sprzętu, usług i zasobów. Wirtualne i rozproszone systemy plików. Wirtualizacja usług sieciowych. Cloud Computing. Podejścia "Infrastructure as a Service", "Platform as a service", "Software as a service", "Mobile "backend" as a service". Sprzętowe środki wspierania wirtualizacji.
T-W-7Pamięć operacyjna i zarządzanie pamięcią w systemie operacyjnym. Hierarchia organizacji pamięci we współczesnych systemach komputerowych Klasyczne algorytmy zarządzania pamięcią. Algorytmy przydziału pamięci. Stronicowanie - motywacja, realizacja, przykłady implementacji. Wiązanie adresów. Segmentacja - motywacja, realizacja, przykłady implementacji. UMA i NUMA. Pamięć wirtualna - motywacja, historia, realizacja. Stronicowanie na żądanie. Segmentacja na żądanie. Algorytmy wymiany stron. Migotanie stron. Szczegóły realizacji pamięci wirtualnej w systemach Linux i Windows.
T-W-8Systemy operacyjne czasu rzeczywistego. Cechy charakterystyczne, wymagania, implementacja, przykłady.
T-W-9Systemy operacyjne urządzeń mobilnych. Charakterystyka, wymagania, historia, implementacja, przykłady.
T-W-10System plików i podsystem wejścia/wyjścia. Rola i zadania systemu plików. Rodzaje systemów plików, wady, zalety, implementacja, rozpowszechnienie. Przykłady.
Metody nauczaniaM-1Wykład informacyjno-konwersatoryjny
Sposób ocenyS-2Ocena podsumowująca: Test zaliczający (jednokrotnego lub wielokrotnego wyboru) oraz pytania otwarte (zadania problemowe)
Kryteria ocenyOcenaKryterium oceny
2,0
3,0potrafi wymienić wybrane podstawowe elementy składowe systemu operacyjnego mające wpływ na jego funkcjonowanie i użytkowanie
3,5potrafi wymienić dowolne podstawowe elementy składowe systemu operacyjnego mające wpływ na jego funkcjonowanie i użytkowanie
4,0potrafi precyzyjnie opisać wybrane podstawowe elementy składowe systemu operacyjnego mające wpływ na jego funkcjonowanie i użytkowanie
4,5potrafi precyzyjnie opisać dowolne podstawowe elementy składowe systemu operacyjnego mające wpływ na jego funkcjonowanie i użytkowanie
5,0potrafi objaśnić wpływ architektury systemu komputerowego na funkcjonowanie i użytkowanie systemu operacyjnego
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięI_1A_C07_U01Student potrafi korzystać konsoli oraz z języków skryptowych charakterystycznych dla platform systemów Unix/Linux i Windows
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_U09Potrafi analizować i oceniać przydatność języków, platform programistycznych i narzędzi informatycznych do rozwiązywania wybranych problemów inżynierskich w dziedzinie informatyki.
Cel przedmiotuC-3Wykształcenie umiejętności wszechstronnego korzystania ze środków udostępnianych przez systemy operacyjne oraz podstaw programowania z użyciem usług systemowych.
Treści programoweT-L-1Podstawy pracy w konsoli systemu Linux
T-L-2Podstawowe narzędzia manipulacji plikami w systemie Linux
T-L-3Prawa plików w systemie Linux i manipulowanie nimi
T-L-4Filtry i potoki w systemie Linux
T-L-5Wyrażenia regularne i ich zastosowanie w narzędziach systemu Linux
T-L-6Zarządzanie procesami w systemie Linux
T-L-7Programowanie skryptów w systemie Linux
T-L-8Instalacja, konfiguracja i podstawy zarządzania systemem Linux
T-L-9Podstawy korzystania z konsoli PowerShell
T-L-10Programowanie skryptów w konsoli PowerShell
Metody nauczaniaM-2Ćwiczenia laboratoryjne
Sposób ocenyS-1Ocena formująca: Ocena na podstawie sprawdzianu wejściowego oraz stopnia wykonania scenariuszy konspektów laboratoryjnych i/lub sprawozdania z zajęć
Kryteria ocenyOcenaKryterium oceny
2,0
3,0potrafi użytkować systemy operacyjne Linux i Windows na poziomie interfejsu tekstowego w zakresie podstawowych poleceń użytkownika
3,5potrafi użytkować systemy operacyjne Linux i Windows na poziomie interfejsu tekstowego w zakresie podstawowych poleceń użytkownika i administratora
4,0potrafi użytkować systemy operacyjne Linux i Windows na poziomie interfejsu tekstowego w zakresie zaawansowanych poleceń użytkownika i administratora
4,5jak 4.0 oraz potrafi pisać proste skrypty przy użyciu języków dostępnych w systemach Linux i Windows
5,0jak 4.0 oraz biegle zna języki skryptowe dostępne w systemach operacyjnych Linux i Windows
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięI_1A_C07_U02Student potrafi korzystać z funkcji systemowych systemu operacyjnego Unix/Linux oraz Windows na poziomie programów pisanych w języku C/C++
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_U08Potrafi dobrać i krytycznie ocenić elementy składowe systemów komputerowych.
Cel przedmiotuC-3Wykształcenie umiejętności wszechstronnego korzystania ze środków udostępnianych przez systemy operacyjne oraz podstaw programowania z użyciem usług systemowych.
Treści programoweT-L-11Podstawy programowania systemowego w systemie Linux - usługi plikowe.
T-L-12Procesy w systemie Linux - zadanie programistyczne.
T-L-13Procesy w systemie Windows - zadanie programistyczne.
Metody nauczaniaM-2Ćwiczenia laboratoryjne
Sposób ocenyS-1Ocena formująca: Ocena na podstawie sprawdzianu wejściowego oraz stopnia wykonania scenariuszy konspektów laboratoryjnych i/lub sprawozdania z zajęć
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Słuchacz potrafi w stopniu podstawowym użyć kompilator oraz debuger w celu uruchomienia podstawowych usług systemy operacyjnego oraz potrafi w stopniu podstawowym posługiwać się dostępną w systemie dokumentacją dotyczącą funkcji systemowych
3,5potrafi efektywnie użyć wybrane podstawowe mechanizmy systemowe
4,0potrafi efektywnie użyć dowolne podstawowe mechanizmy systemowe
4,5potrafi efektywnie użyć wybrane zaawansowane mechanizmy systemowe
5,0potrafi efektywnie użyć dowolne zaawansowane mechanizmy systemowe
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięI_1A_C07_K01Student jest kreatywny i przygotowany do wykorzystywania różnorodnych źródeł wiedzy
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_K01Potrafi krytycznie ocenić posiadaną wiedzę informatyczną oraz dostrzega dynamikę jej zmian.
Cel przedmiotuC-3Wykształcenie umiejętności wszechstronnego korzystania ze środków udostępnianych przez systemy operacyjne oraz podstaw programowania z użyciem usług systemowych.
Treści programoweT-L-1Podstawy pracy w konsoli systemu Linux
T-L-2Podstawowe narzędzia manipulacji plikami w systemie Linux
T-L-3Prawa plików w systemie Linux i manipulowanie nimi
T-L-4Filtry i potoki w systemie Linux
T-L-5Wyrażenia regularne i ich zastosowanie w narzędziach systemu Linux
T-L-6Zarządzanie procesami w systemie Linux
T-L-7Programowanie skryptów w systemie Linux
T-L-8Instalacja, konfiguracja i podstawy zarządzania systemem Linux
T-L-9Podstawy korzystania z konsoli PowerShell
T-L-10Programowanie skryptów w konsoli PowerShell
T-L-11Podstawy programowania systemowego w systemie Linux - usługi plikowe.
T-L-12Procesy w systemie Linux - zadanie programistyczne.
T-L-13Procesy w systemie Windows - zadanie programistyczne.
Metody nauczaniaM-2Ćwiczenia laboratoryjne
Sposób ocenyS-1Ocena formująca: Ocena na podstawie sprawdzianu wejściowego oraz stopnia wykonania scenariuszy konspektów laboratoryjnych i/lub sprawozdania z zajęć
Kryteria ocenyOcenaKryterium oceny
2,0
3,0dostateczna umiejętność samodzielnego szukania i wykorzystania informacji, wymaga bardzo częstej pomocy nauczyciela
3,5ponad dostateczna umiejętność samodzielnego szukania i wykorzystania informacji, wymaga częstej pomocy nauczyciela
4,0dobra umiejętność samodzielnego szukania i wykorzystania informacji, wymaga rzadkiej pomocy nauczyciela
4,5ponad dobra umiejętność samodzielnego szukania i wykorzystania informacji, wymaga bardzo rzadkiej pomocy nauczyciela
5,0wyróżniająca umiejętność samodzielnego szukania i wykorzystania informacji, potrafi bez pomocy nauczyciela wykonać wszystkie ćwiczenia laboratoryjne zgodnie z otrzymanymi konspektami