Karta Przedmiotu
| Politechnika Białostocka | Wydział Informatyki | ||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Kierunek studiów | Cyberbezpieczeństwo |
Poziom i forma studiów |
pierwszego stopnia stacjonarne |
||||||||||||||||||||||||
| Grupa przedmiotów / specjalność |
Profil kształcenia | ogólnoakademicki | |||||||||||||||||||||||||
| Nazwa przedmiotu | Architektura komputerów i systemy operacyjne | E | Kod przedmiotu | CYB1SOP | |||||||||||||||||||||||
| Rodzaj zajęć | obowiązkowy | ||||||||||||||||||||||||||
| Formy zajęć i liczba godzin | W | Ć | L | P | Ps | T | S | Semestr | 3 | ||||||||||||||||||
| 30 | 30 | Punkty ECTS | 4 | ||||||||||||||||||||||||
| Program obowiązuje od | 2026/2027 | ||||||||||||||||||||||||||
| Przedmioty wprowadzające | Podstawy cyberbezpieczeństwa (CYB1PCY), Sieci komputerowe I (CYB1SKO1), Sieci komputerowe II (CYB1SKO2), | ||||||||||||||||||||||||||
| Cele przedmiotu |
Zapoznanie z mechanizmami architektury sprzętowej istotnymi z punktu widzenia cyberbezpieczeństwa, w tym trybami uprzywilejowania, ochroną pamięci, izolacją procesów oraz mechanizmami kontroli dostępu. Zapoznanie z podstawami budowy systemów operacyjnych oraz nabycie umiejętności programowania systemowego (z wykorzystaniem API systemu operacyjnego) w tym rozpoznanie podstawowych zagrożeń związanych z naruszeniami bezpieczeństwa w systemie operacyjnym. Odniesienia do frameworka edukacyjnego mikrokompetencji SFIA: Administracja bezpieczeństwem informacji SCTY - poziom 2 Bezpieczeństwo systemów i projektowanie zabezpieczeń DESN - poziom 2 Administracja oprogramowaniem systemowym SYSP - poziom 2 Programowanie / rozwój oprogramowania PROG - poziom 2 |
||||||||||||||||||||||||||
| Ramowe treści programowe | Zagadnienia architektury komputerów i systemów operacyjnych w kontekście cyberbezpieczeństwa, w tym modele architektury, tryby uprzywilejowania, ochronę pamięci oraz mechanizmy secure boot i zabezpieczenia sprzętowe mikrokontrolerów. Podstawowe mechanizmy systemów operacyjnych, takie jak procesy i wątki, współbieżność, synchronizacja, zarządzanie pamięcią, systemy plików oraz ochrona i bezpieczeństwo systemu operacyjnego. Podatności architektury sprzętowej, bezpieczeństwo magistral, interfejsów debug oraz wykorzystanie sprzętowych mechanizmów kryptograficznych. | ||||||||||||||||||||||||||
| Inne informacje o przedmiocie | przedmiot ma związek z prowadzoną na Uczelni działalnością naukową | ||||||||||||||||||||||||||
| przedmiot kształtuje umiejętności praktyczne | |||||||||||||||||||||||||||
| Wyliczenie: | Nakład pracy studenta związany z: | Godzin ogółem |
W tym kontaktowych |
W tym praktycznych |
|||||||||||||||||||||||
| udziałem w wykładach | 30 | 30 | |||||||||||||||||||||||||
| udziałem w innych formach zajęć | 30 | 30 | 30 | ||||||||||||||||||||||||
| przygotowywaniem sprawozdań, wykonaniem projektu | 24 | 24 | |||||||||||||||||||||||||
| przygotowaniem do egzaminu | 16 | ||||||||||||||||||||||||||
| Razem godzin: | 100 | 60 | 54 | ||||||||||||||||||||||||
| Razem punktów ECTS: | 4 | 2.4 | 2.2 | ||||||||||||||||||||||||
| Zakładane kierunkowe efekty uczenia się | Wiedza | Umiejętności | Kompetencje społeczne |
||||||||||||||||||||||||
| CYB1_W02 | CYB1_U02 | ||||||||||||||||||||||||||
| CYB1_W03 | CYB1_U03 | ||||||||||||||||||||||||||
| CYB1_W05 | |||||||||||||||||||||||||||
| CYB1_W06 | |||||||||||||||||||||||||||
| Cele i treści ramowe sformułował(a) | dr hab. inż. Wojciech Kwedlo, dr inż. Mirosław Omieljanowicz | Data: | 08/04/2026 | ||||||||||||||||||||||||
| Realizacja w roku akademickim | 2027/2028 | ||||||||||||||||||||||||||
| Treści programowe | |||||||||||||||||||||||||||
| Wykład | |||||||||||||||||||||||||||
| 1. | Modele architektury komputerów a bezpieczeństwo systemów – Harvard, von Neumanna, SoC, MCU | ||||||||||||||||||||||||||
| 2. | Tryby uprzywilejowania procesora i izolacja kodu – user mode, privileged mode, TrustZone, MPU | ||||||||||||||||||||||||||
| 3. | Ochrona pamięci, segmentacja, ochrona stosu i sterty | ||||||||||||||||||||||||||
| 4. | Mechanizmy startu systemu i secure boot | ||||||||||||||||||||||||||
| 5. | Ataki na architekturę sprzętową – buffer overflow, fault injection, side-channel attacks | ||||||||||||||||||||||||||
| 6. | Bezpieczeństwo magistral i peryferiów – DMA, debug interface (SWD/JTAG), ochrona dostępu | ||||||||||||||||||||||||||
| 7. | Sprzętowe mechanizmy kryptograficzne i bezpieczne przechowywanie kluczy | ||||||||||||||||||||||||||
| 8. | Komunikacja systemu operacyjnego z urządzeniami zewnętrznymi | ||||||||||||||||||||||||||
| 9. | Procesy i wątki | ||||||||||||||||||||||||||
| 10. | Współbieżność. Podstawowe problemy synchronizacji. Semafory | ||||||||||||||||||||||||||
| 11. | Stronicowanie i pamięć wirtualna | ||||||||||||||||||||||||||
| 12. | Pamięci masowe. Szeregowanie dysku | ||||||||||||||||||||||||||
| 13. | Systemy plików | ||||||||||||||||||||||||||
| 14. | Ochrona systemu operacyjnego | ||||||||||||||||||||||||||
| 15. | Bezpieczeństwo systemu operacyjnego | ||||||||||||||||||||||||||
| Pracownia specjalistyczna | |||||||||||||||||||||||||||
| 1. | Analiza architektury mikrokontrolera STM32 na module NUCLEO-64 i identyfikacja zasobów bezpieczeństwa | ||||||||||||||||||||||||||
| 2. | Konfiguracja trybów uprzywilejowania i test izolacji kodu użytkownika | ||||||||||||||||||||||||||
| 3. | Konfiguracja MPU i implementacja ochrony pamięci przed nieautoryzowanym dostępem | ||||||||||||||||||||||||||
| 4. | Implementacja ochrony stosu i demonstracja ataku buffer overflow na STM32 | ||||||||||||||||||||||||||
| 5. | Konfiguracja zabezpieczeń debug (SWD/JTAG) i test blokady odczytu pamięci Flash | ||||||||||||||||||||||||||
| 6. | Implementacja bezpiecznego bootowania i weryfikacji integralności firmware | ||||||||||||||||||||||||||
| 7. | Wykorzystanie sprzętowego akceleratora kryptograficznego w STM32 | ||||||||||||||||||||||||||
| 8. | Kompilacja przykładowego programu w systemie Linux | ||||||||||||||||||||||||||
| 9. | Program wykonujący kopie plików w systemie Linux | ||||||||||||||||||||||||||
| 10. | Program kopiujący pliki c.d. Wydanie tematów projektu nr 1 | ||||||||||||||||||||||||||
| 11. | Realizacja projektu (programowanie w Linux API) | ||||||||||||||||||||||||||
| 12. | Realizacja projektu (programowanie w Linux API) | ||||||||||||||||||||||||||
| 13. | Realizacja projektu (programowanie w Linux API) | ||||||||||||||||||||||||||
| 14. | Realizacja projektu (programowanie w Linux API) | ||||||||||||||||||||||||||
| 15. | Prezentacja projektów, wystawienie ocen | ||||||||||||||||||||||||||
| Metody dydaktyczne (realizacja stacjonarna) |
|||||||||||||||||||||||||||
| W | wykład z prezentacją multimedialną | ||||||||||||||||||||||||||
| Ps | programowanie z użyciem komputera, metoda projektów, ćwiczenia z użyciem specjalistycznego sprzętu | ||||||||||||||||||||||||||
| Metody dydaktyczne (realizacja zdalna) |
|||||||||||||||||||||||||||
| - | |||||||||||||||||||||||||||
| - | |||||||||||||||||||||||||||
| Forma zaliczenia | |||||||||||||||||||||||||||
| W | egzamin pisemny | ||||||||||||||||||||||||||
| Ps | sprawozdania, przygotowanie i obrona projektu programistycznego | ||||||||||||||||||||||||||
| Warunki zaliczenia | |||||||||||||||||||||||||||
| W | Uzyskanie min. 30% punktów z każdego efektu uczenia się z zakresu wiedzy, a po spełnieniu tego warunku ostateczna ocena wynika z sumy uzyskanych punktów Skala ocen: [ 0 – 50]% punktów – 2.0 (50 – 60]% punktów – 3.0 (60 – 70]% punktów – 3.5 (70 – 80]% punktów – 4.0 (80 – 90]% punktów – 4.5 (90 – 100]% punktów – 5.0 |
||||||||||||||||||||||||||
| Ps | Minimalne wymagania dotyczące poszczególnych efektów uczenia się z zakresu umiejętności: E3 - oddanie sprawozdania z konfiguracji mechanizmów ochrony pamięci i izolacji kodu na platformie mikrokontrolerowej STM32 E4 - oddanie sprawozdania z implementacji mechanizmów systemowych w systemie Linux Zaliczenie całości po spełnieniu powyższych warunków oraz zsumowaniu uzyskanych punktów wg. skali: [ 0 – 50]% punktów – 2.0 (50 – 60]% punktów – 3.0 (60 – 70]% punktów – 3.5 (70 – 80]% punktów – 4.0 (80 – 90]% punktów – 4.5 (90 – 100]% punktów – 5.0 |
||||||||||||||||||||||||||
| Symbol efektu | Zakładane efekty uczenia się | Odniesienie do efektów uczenia się zdefiniowanych dla kierunku studiów | |||||||||||||||||||||||||
| Wiedza | Umiejętności | Kompetencje społeczne |
|||||||||||||||||||||||||
| Wiedza: student zna i rozumie | |||||||||||||||||||||||||||
| E1 | mechanizmy architektury komputerów istotne z punktu widzenia cyberbezpieczeństwa | ||||||||||||||||||||||||||
| E2 | mechanizmy bezpieczeństwa systemów operacyjnych, zarządzanie procesami i pamięcią, oraz metody ochrony systemu i systemów plików. | ||||||||||||||||||||||||||
| Umiejętności: student potrafi | |||||||||||||||||||||||||||
| E3 | konfigurować mechanizmy ochrony pamięci, izolacji kodu oraz zabezpieczeń debug i secure boot na platformie mikrokontrolerowej STM32. | ||||||||||||||||||||||||||
| E4 | implementować programy w systemie Linux wykorzystujące mechanizmy systemowe, operacje na plikach oraz podstawowe elementy synchronizacji procesów. | ||||||||||||||||||||||||||
| Symbol efektu | Sposób weryfikacji efektu uczenia się | Forma zajęć na której zachodzi weryfikacja | |||||||||||||||||||||||||
| E1 | egzamin pisemny | W | |||||||||||||||||||||||||
| E2 | egzamin pisemny | W | |||||||||||||||||||||||||
| E3 | ocena sprawozdań z wykonanych zadań, ocena projektu | Ps | |||||||||||||||||||||||||
| E4 | ocena sprawozdań z wykonanych zadań, ocena projektu | Ps | |||||||||||||||||||||||||
| Literatura podstawowa | |||||||||||||||||||||||||||
| 1. | A. Silberschatz, P. B. Galvin, G. Gagne, Podstawy systemów operacyjnych, wydanie X, PWN, Warszawa, 2021 | ||||||||||||||||||||||||||
| 2. | W. Stallings, Organizacja i architektura systemu komputerowego Tom 1, wyd. XI (I w PWN), Warszawa, 2022 | ||||||||||||||||||||||||||
| 3. | W. Stallings, Organizacja i architektura systemu komputerowego Tom 2, wyd. XI (I w PWN), Warszawa, 2022 | ||||||||||||||||||||||||||
| 4. | Definitive Guide to Arm Cortex-M3 and Cortex-M4 Processors, Newnes (Elsevier), 2014 | ||||||||||||||||||||||||||
| Literatura uzupełniająca | |||||||||||||||||||||||||||
| 1. | R. Love, Linux. Programowanie systemowe. Wydanie II, Helion, 2014 | ||||||||||||||||||||||||||
| 2. | D.A. Patterson , Computer organization and design : the hardware/software interface, Elsevier, Amsterdam, 2005 | ||||||||||||||||||||||||||
| 3. | STM32 Nucleo-64 boards user manual, STMicroelectronics, 2023 | ||||||||||||||||||||||||||
| Koordynator przedmiotu: | dr hab. inż. Wojciech Kwedlo, dr inż. Mirosław Omieljanowicz | Data: | 08/04/2026 | ||||||||||||||||||||||||