Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Elektryczny - Teleinformatyka (S1)

Sylabus przedmiotu Systemy operacyjne i architektura systemów komputerowych:

Informacje podstawowe

Kierunek studiów Teleinformatyka
Forma studiów studia stacjonarne Poziom pierwszego stopnia
Tytuł zawodowy absolwenta inżynier
Obszary studiów nauki techniczne, studia inżynierskie
Profil ogólnoakademicki
Moduł
Przedmiot Systemy operacyjne i architektura systemów komputerowych
Specjalność przedmiot wspólny
Jednostka prowadząca Katedra Przetwarzania Sygnałów i Inżynierii Multimedialnej
Nauczyciel odpowiedzialny Przemysław Mazurek <Przemyslaw.Mazurek@zut.edu.pl>
Inni nauczyciele
ECTS (planowane) 6,0 ECTS (formy) 6,0
Forma zaliczenia egzamin Język polski
Blok obieralny Grupa obieralna

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
wykładyW3 30 3,00,62egzamin
laboratoriaL3 45 3,00,38zaliczenie

Wymagania wstępne

KODWymaganie wstępne
W-1Informatyka i programowanie

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Zapoznanie studentów z metodami programowania systemów komputerowych z wykorzystaniem systemów operacyjnych
C-2Zapoznanie studentów z architekturami komputerów

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

KODTreść programowaGodziny
laboratoria
T-L-1Projektowanie maszyn stanów2
T-L-2Programowanie sterowników urządzeń7
T-L-3Wykorzystanie metod komunikacji międzyprocesowej14
T-L-4Obsługa zdarzeń czasu rzeczywistego metodami programowymi i sprzętowymi10
T-L-5Projektowanie układów ASIP10
T-L-6Obliczenia stałoprzecinkowe i zmiennoprzecinkowe2
45
wykłady
T-W-1Budowa systemów operacyjnych z wywłaszczaniem i bez wywłaszczania. Systemy operacyjne zagnieżdżone oraz systemy operacyjne czasu rzeczywistego (RTOS).2
T-W-2Architektura jądra Linux oraz jąder systemów operacyjnych czasu rzeczywistego. Jądra monolityczne, mikrojądra, jądra modułowe.1
T-W-3Zasada działania systemów operacyjnych bez wywłaszczania i z wywłaszczaniem1
T-W-4Projektowanie maszyn stanów z wykorzystaniem narządzi CASE. Wykorzystanie maszyn stanów w systemach operacyjnych.1
T-W-5Przerwania sprzętowe i programowe. Redukcja czasu obsługi. Stabilizacja czasu obsługi. Procesory deterministyczne a programowa realizacja układów wejścia-wyjścia.2
T-W-6Obsługa zdarzeń w systemach operacyjnych w tym czasu rzeczywistego. Akceleracja programowa i sprzętowa obsługi zdarzeń.1
T-W-7Procesy i wątki. Programowe i sprzętowe zarządzenie procesami i wątkami. Statyczne i dynamiczne planowanie przydziału procesora.2
T-W-8Komunikacja międzyprocesowa (flagi, sygnały, kolejki komunikatów, itp.).2
T-W-9Synchronizacja, blokowanie i głodzenie procesów.2
T-W-10Pamięć współdzielona (shared memory). Synchronizacja dostępu. Potokowe przetwarzanie bloków pamięci współdzielonej.1
T-W-11Budowa procesora. Model programowy i model sprzętowy. Ścieżki przetwarzania procesora.1
T-W-12Projektowanie układów System on Chip (SoC) w strukturach FPGA z wykorzystaniem soft procesorów i hard procesorów. Heterogeniczne architektury SoC.1
T-W-13Projektowanie i testowanie procesorów ASIP (Application-Specific Instruction set Processors).1
T-W-14Hierarchia pamięci fizycznej i logicznej, segmentacja pamięci, optymalizacja dostępu do pamięci.1
T-W-15Architektura i programowanie sterowników urządzeń znakowych i blokowych w systemie Linux.1
T-W-16Synteza asemblera dla procesora ASIP.1
T-W-17Koprocesory. Inteligentne układy wejścia-wyjścia. Projektowanie inteligentnych układów wejścia-wyjścia dla SoC1
T-W-18Zarządzanie pamięcią - bloki MMU i MPU.1
T-W-19Tryby adresowania pamięci i układów wejścia/wyjścia procesorów. Wpływ listy rozkazowej na wydajność.1
T-W-20Magistrale komputerów. Magistrala PCIe. Programowanie mostka PCIe.1
T-W-21Procesory superskalarne. Procesory sygnałowe (DSP) i VLIW.1
T-W-22Pamięci podręczne (cache) i ich hierarchia.1
T-W-23Układy DMA do komunikacji międzyprocesowej i międzyprocesorowej.1
T-W-24Arytmetyka stałopozycyjna i zmiennopozycyjna. Optymalizacja obliczeń pod kątem wydajności.1
T-W-25Techniki debugowania systemów komputerowych z wykorzystaniem narzędzi programowych i sprzętowych.1
30

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

KODForma aktywnościGodziny
laboratoria
A-L-1Przygotowanie się do zajęć laboratoryjnych45
A-L-2Uczestnictwo w zajęciach45
90
wykłady
A-W-1Przygotowanie się do egzaminu z przedmiotu w formie testu15
A-W-2Czytanie wskazanej literatury45
A-W-3Uczestnictwo w zajęciach30
90

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Metoda podająca / wykład informacyjny
M-2Metoda praktyczna / ćwiczenia laboratoryjne

Sposoby oceny

KODSposób oceny
S-1Ocena formująca: Zaliczenie wszystkich ćwiczeń ujętych planem
S-2Ocena podsumowująca: Egzamin w formie testu wyboru

Zamierzone efekty kształcenia - wiedza

Zamierzone efekty kształceniaOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
TI_1A_C11_W01
Student zna podstawowe metody komunikacji z systemach komputerowych z wykorzystaniem systemów operacyjnych. Student zna budowę procesora i systemu komputerowego, niezbędną do realizacji komunikacji, w zakresie podstawowym.
TI_1A_W12, TI_1A_W16C-1, C-2T-W-15, T-W-7, T-W-12, T-W-6, T-W-5, T-W-1, T-W-22, T-W-8, T-W-4, T-W-19, T-W-23, T-W-21, T-W-20, T-W-13, T-W-10, T-W-3, T-W-14, T-W-2, T-W-11, T-W-24, T-W-25, T-W-9, T-W-17, T-W-16, T-W-18M-2, M-1S-2

Zamierzone efekty kształcenia - umiejętności

Zamierzone efekty kształceniaOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
TI_1A_C11_U01
Student potrafi realizować proste zadania komunikacji w systemach komputerowych z wykorzystaniem systemów operacyjnych.
TI_1A_U03, TI_1A_U07C-1, C-2T-L-6, T-L-1, T-L-3, T-L-5, T-L-4, T-L-2M-2, M-1S-1

Kryterium oceny - wiedza

Efekt kształceniaOcenaKryterium oceny
TI_1A_C11_W01
Student zna podstawowe metody komunikacji z systemach komputerowych z wykorzystaniem systemów operacyjnych. Student zna budowę procesora i systemu komputerowego, niezbędną do realizacji komunikacji, w zakresie podstawowym.
2,0
3,0Student zna podstawowe metody komunikacji z systemach komputerowych z wykorzystaniem systemów operacyjnych. Student zna budowę procesora i systemu komputerowego, niezbędną do realizacji komunikacji, w zakresie podstawowym.
3,5
4,0
4,5
5,0

Kryterium oceny - umiejętności

Efekt kształceniaOcenaKryterium oceny
TI_1A_C11_U01
Student potrafi realizować proste zadania komunikacji w systemach komputerowych z wykorzystaniem systemów operacyjnych.
2,0
3,0Student potrafi realizować proste zadania komunikacji w systemach komputerowych z wykorzystaniem systemów operacyjnych.
3,5
4,0
4,5
5,0

Literatura podstawowa

  1. J.S. Gray, Komunikacja międzyprocesowa w Uniksie, RM, 1997
  2. A. Silberschatz, J.L. Peterson, P.B. Galvin, Podstawy systemów operacyjnych, WNT, 2011
  3. D.A. Patterson, J.L. Hennesey, Computer Organization and Design, 2010
  4. W. Stallings, Computer Organization and Architecture, 2010
  5. W.R. Stevens, Unix programowanie usług sieciowych t.1, WNT, 2000

Literatura dodatkowa

  1. D.P. Bovet, M. Cesati, Understanding the Linux Kernel, O'Reilly, 2005
  2. A. Rubini, J. Corbet, G. Kroah-Hartman, Linux Device Drivers, O'Reilly, 2011

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1Projektowanie maszyn stanów2
T-L-2Programowanie sterowników urządzeń7
T-L-3Wykorzystanie metod komunikacji międzyprocesowej14
T-L-4Obsługa zdarzeń czasu rzeczywistego metodami programowymi i sprzętowymi10
T-L-5Projektowanie układów ASIP10
T-L-6Obliczenia stałoprzecinkowe i zmiennoprzecinkowe2
45

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Budowa systemów operacyjnych z wywłaszczaniem i bez wywłaszczania. Systemy operacyjne zagnieżdżone oraz systemy operacyjne czasu rzeczywistego (RTOS).2
T-W-2Architektura jądra Linux oraz jąder systemów operacyjnych czasu rzeczywistego. Jądra monolityczne, mikrojądra, jądra modułowe.1
T-W-3Zasada działania systemów operacyjnych bez wywłaszczania i z wywłaszczaniem1
T-W-4Projektowanie maszyn stanów z wykorzystaniem narządzi CASE. Wykorzystanie maszyn stanów w systemach operacyjnych.1
T-W-5Przerwania sprzętowe i programowe. Redukcja czasu obsługi. Stabilizacja czasu obsługi. Procesory deterministyczne a programowa realizacja układów wejścia-wyjścia.2
T-W-6Obsługa zdarzeń w systemach operacyjnych w tym czasu rzeczywistego. Akceleracja programowa i sprzętowa obsługi zdarzeń.1
T-W-7Procesy i wątki. Programowe i sprzętowe zarządzenie procesami i wątkami. Statyczne i dynamiczne planowanie przydziału procesora.2
T-W-8Komunikacja międzyprocesowa (flagi, sygnały, kolejki komunikatów, itp.).2
T-W-9Synchronizacja, blokowanie i głodzenie procesów.2
T-W-10Pamięć współdzielona (shared memory). Synchronizacja dostępu. Potokowe przetwarzanie bloków pamięci współdzielonej.1
T-W-11Budowa procesora. Model programowy i model sprzętowy. Ścieżki przetwarzania procesora.1
T-W-12Projektowanie układów System on Chip (SoC) w strukturach FPGA z wykorzystaniem soft procesorów i hard procesorów. Heterogeniczne architektury SoC.1
T-W-13Projektowanie i testowanie procesorów ASIP (Application-Specific Instruction set Processors).1
T-W-14Hierarchia pamięci fizycznej i logicznej, segmentacja pamięci, optymalizacja dostępu do pamięci.1
T-W-15Architektura i programowanie sterowników urządzeń znakowych i blokowych w systemie Linux.1
T-W-16Synteza asemblera dla procesora ASIP.1
T-W-17Koprocesory. Inteligentne układy wejścia-wyjścia. Projektowanie inteligentnych układów wejścia-wyjścia dla SoC1
T-W-18Zarządzanie pamięcią - bloki MMU i MPU.1
T-W-19Tryby adresowania pamięci i układów wejścia/wyjścia procesorów. Wpływ listy rozkazowej na wydajność.1
T-W-20Magistrale komputerów. Magistrala PCIe. Programowanie mostka PCIe.1
T-W-21Procesory superskalarne. Procesory sygnałowe (DSP) i VLIW.1
T-W-22Pamięci podręczne (cache) i ich hierarchia.1
T-W-23Układy DMA do komunikacji międzyprocesowej i międzyprocesorowej.1
T-W-24Arytmetyka stałopozycyjna i zmiennopozycyjna. Optymalizacja obliczeń pod kątem wydajności.1
T-W-25Techniki debugowania systemów komputerowych z wykorzystaniem narzędzi programowych i sprzętowych.1
30

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1Przygotowanie się do zajęć laboratoryjnych45
A-L-2Uczestnictwo w zajęciach45
90
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1Przygotowanie się do egzaminu z przedmiotu w formie testu15
A-W-2Czytanie wskazanej literatury45
A-W-3Uczestnictwo w zajęciach30
90
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaTI_1A_C11_W01Student zna podstawowe metody komunikacji z systemach komputerowych z wykorzystaniem systemów operacyjnych. Student zna budowę procesora i systemu komputerowego, niezbędną do realizacji komunikacji, w zakresie podstawowym.
Odniesienie do efektów kształcenia dla kierunku studiówTI_1A_W12Ma uporządkowaną wiedzę w zakresie systemów operacyjnych, wirtualizacji, systemów czasu rzeczywistego oraz systemów wbudowanych i architektury systemów komputerowych, w szczególności warstwy sprzętowej, oraz urządzeń mobilnych i możliwości transmisji danych z wykorzystaniem tych urządzeń.
TI_1A_W16Ma uporządkowaną wiedzę z zakresu elektroniki, w tym elementów optoelektronicznych, programowalnych i rekonfigurowalnych układów scalonych, systemów mikroprocesorowych w zakresie pozwalającym na zrozumienie sposobu działania elektronicznych urządzeń wykorzystywanych w systemach transmisji i przetwarzania danych.
Cel przedmiotuC-1Zapoznanie studentów z metodami programowania systemów komputerowych z wykorzystaniem systemów operacyjnych
C-2Zapoznanie studentów z architekturami komputerów
Treści programoweT-W-15Architektura i programowanie sterowników urządzeń znakowych i blokowych w systemie Linux.
T-W-7Procesy i wątki. Programowe i sprzętowe zarządzenie procesami i wątkami. Statyczne i dynamiczne planowanie przydziału procesora.
T-W-12Projektowanie układów System on Chip (SoC) w strukturach FPGA z wykorzystaniem soft procesorów i hard procesorów. Heterogeniczne architektury SoC.
T-W-6Obsługa zdarzeń w systemach operacyjnych w tym czasu rzeczywistego. Akceleracja programowa i sprzętowa obsługi zdarzeń.
T-W-5Przerwania sprzętowe i programowe. Redukcja czasu obsługi. Stabilizacja czasu obsługi. Procesory deterministyczne a programowa realizacja układów wejścia-wyjścia.
T-W-1Budowa systemów operacyjnych z wywłaszczaniem i bez wywłaszczania. Systemy operacyjne zagnieżdżone oraz systemy operacyjne czasu rzeczywistego (RTOS).
T-W-22Pamięci podręczne (cache) i ich hierarchia.
T-W-8Komunikacja międzyprocesowa (flagi, sygnały, kolejki komunikatów, itp.).
T-W-4Projektowanie maszyn stanów z wykorzystaniem narządzi CASE. Wykorzystanie maszyn stanów w systemach operacyjnych.
T-W-19Tryby adresowania pamięci i układów wejścia/wyjścia procesorów. Wpływ listy rozkazowej na wydajność.
T-W-23Układy DMA do komunikacji międzyprocesowej i międzyprocesorowej.
T-W-21Procesory superskalarne. Procesory sygnałowe (DSP) i VLIW.
T-W-20Magistrale komputerów. Magistrala PCIe. Programowanie mostka PCIe.
T-W-13Projektowanie i testowanie procesorów ASIP (Application-Specific Instruction set Processors).
T-W-10Pamięć współdzielona (shared memory). Synchronizacja dostępu. Potokowe przetwarzanie bloków pamięci współdzielonej.
T-W-3Zasada działania systemów operacyjnych bez wywłaszczania i z wywłaszczaniem
T-W-14Hierarchia pamięci fizycznej i logicznej, segmentacja pamięci, optymalizacja dostępu do pamięci.
T-W-2Architektura jądra Linux oraz jąder systemów operacyjnych czasu rzeczywistego. Jądra monolityczne, mikrojądra, jądra modułowe.
T-W-11Budowa procesora. Model programowy i model sprzętowy. Ścieżki przetwarzania procesora.
T-W-24Arytmetyka stałopozycyjna i zmiennopozycyjna. Optymalizacja obliczeń pod kątem wydajności.
T-W-25Techniki debugowania systemów komputerowych z wykorzystaniem narzędzi programowych i sprzętowych.
T-W-9Synchronizacja, blokowanie i głodzenie procesów.
T-W-17Koprocesory. Inteligentne układy wejścia-wyjścia. Projektowanie inteligentnych układów wejścia-wyjścia dla SoC
T-W-16Synteza asemblera dla procesora ASIP.
T-W-18Zarządzanie pamięcią - bloki MMU i MPU.
Metody nauczaniaM-2Metoda praktyczna / ćwiczenia laboratoryjne
M-1Metoda podająca / wykład informacyjny
Sposób ocenyS-2Ocena podsumowująca: Egzamin w formie testu wyboru
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Student zna podstawowe metody komunikacji z systemach komputerowych z wykorzystaniem systemów operacyjnych. Student zna budowę procesora i systemu komputerowego, niezbędną do realizacji komunikacji, w zakresie podstawowym.
3,5
4,0
4,5
5,0
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaTI_1A_C11_U01Student potrafi realizować proste zadania komunikacji w systemach komputerowych z wykorzystaniem systemów operacyjnych.
Odniesienie do efektów kształcenia dla kierunku studiówTI_1A_U03Potrafi: - dobrać sposób przesyłania, przetwarzania i gromadzenia informacji, - wykorzystać pozyskaną wiedzę do analizy i projektowania systemów przewodowej i bezprzewodowej transmisji danych.
TI_1A_U07Potrafi zastosować w praktyce wiedzę z zakresu inżynierii oprogramowania oraz dobre praktyki programistyczne stosując wybrane narzędzia i środowiska deweloperskie.
Cel przedmiotuC-1Zapoznanie studentów z metodami programowania systemów komputerowych z wykorzystaniem systemów operacyjnych
C-2Zapoznanie studentów z architekturami komputerów
Treści programoweT-L-6Obliczenia stałoprzecinkowe i zmiennoprzecinkowe
T-L-1Projektowanie maszyn stanów
T-L-3Wykorzystanie metod komunikacji międzyprocesowej
T-L-5Projektowanie układów ASIP
T-L-4Obsługa zdarzeń czasu rzeczywistego metodami programowymi i sprzętowymi
T-L-2Programowanie sterowników urządzeń
Metody nauczaniaM-2Metoda praktyczna / ćwiczenia laboratoryjne
M-1Metoda podająca / wykład informacyjny
Sposób ocenyS-1Ocena formująca: Zaliczenie wszystkich ćwiczeń ujętych planem
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Student potrafi realizować proste zadania komunikacji w systemach komputerowych z wykorzystaniem systemów operacyjnych.
3,5
4,0
4,5
5,0