Architektury systemów komputerowych 2019
Plan tygodniowy
-
-
Wykład bliźniaczy prowadzony w Carnegie Mellon University (pierwsze miejsce w rankingu uczelni US).
-
Wykład 0: Wprowadzenie
Ćwiczenia: 25 – 26 lutego 2019
-
Wykład 1: Reprezentacja danych (część I)
Ćwiczenia: 4 – 5 marca 2019
-
Wykład 2: Reprezentacja danych (część II)
Ćwiczenia: 11 – 12 marca 2019
-
On February 25, 1991, a Patriot missile defence system operating in Dhahran, Saudi Arabia, failed to engage an incoming Scud missile. The missile struck U.S. Army barracks killing 28 soldiers and injuring 98. The reason for the failure of the Patriot was a fixed-point round-off error in the range-gate algorithm of the Patriot radar unit’s tracking system. This paper reconstructs the events and explains, how the patriot system works. [...]
-
Wykład 3: Programowanie niskopoziomowe (część I)
Ćwiczenia: 18 – 19 marca 2019
-
Materiał dodatkowy do książki "Computer Architecture: A Quantitative Approach" przedstawiający algorytmy szybkiego mnożenia i dzielenia liczb całkowitych.
-
Wykład 4: Programowanie niskopoziomowe (część II)
Ćwiczenia: 25 – 26 marca 2019
-
Wykład 5: Programowanie niskopoziomowe (część III)
Ćwiczenia: 1 – 2 kwietnia 2019
-
Tylko dla grupy zaawansowanej.
-
Wykład 6: Programowanie niskopoziomowe (część IV)
Ćwiczenia: 8 – 9 kwietnia 2019
-
Tylko dla grupy zaawansowanej.
-
Wykład 7: Reprezentacja programów, konsolidacja i ładowanie
Ćwiczenia: 15 – 16 kwietnia 2019
-
Wykład 8: Podatność kodu na ataki
Ćwiczenia: 22 – 23 kwietnia 2019
-
Dwa proste przykłady:
- łączenie języka C z asemblerem,
- program w całości napisany w asemblerze bez użycia biblioteki standardowej.
-
Wykład 9: Pamięć operacyjna i dyskowa
Ćwiczenia: 29 – 30 kwietnia 2019
Na pierwszej godzinie rozwiązujemy zadania 1 – 4 z listy 9.
Na drugiej godzinie ochotnicy będą pokazywać:
- rozwiązania zadań 1 – 2 z programowania w asemblerze x86-64,
- przebieg rozbrajania bomb.
Za eleganckie wyjaśnienia / rozwiązania będą przyznawane punkty uznaniowe.
-
Brak wykładu: Dzień Flagi Rzeczypospolitej
Ćwiczenia: 6 – 7 maja 2019
Na pierwszej godzinie rozwiązujemy zadania 5 – 8 z listy 9.
Na drugiej godzinie ochotnicy będą pokazywać metody przeprowadzania ataku hakerskiego metodą wstrzyknięcia kodu.
Za eleganckie wyjaśnienia / rozwiązania będą przyznawane punkty uznaniowe.
-
-
Brak wykładu: Dzień rektorski
Ćwiczenia: 13 – 14 maja 2019
Na zajęciach ochotnicy będą pokazywać rozwiązania zadań 3 – 6 z programowania w asemblerze x86-64.
Za eleganckie rozwiązania będą przyznawane punkty uznaniowe.
-
Wykład 10: Pamięć podręczna
Ćwiczenia: 20 – 21 maja 2019
-
Wykład 11: Tłumaczenie adresów (cz. I)
Ćwiczenia: 27 – 28 maja 2019
-
Do wykonania zadania 6.36, 6.37, 6.41 i 6.42.
Wszystkie zadania warte są jeden punkt.
-
Podobno pomaga lepiej zrozumieć translację adresów i działanie TLB. Nadesłane przez p. Łukasza Kleczaja.
-
Wykład 12: Tłumaczenie adresów (cz. II)
Ćwiczenia: 3 – 4 czerwca 2019
-
Wykład 13: Optymalizacja kodu
Ćwiczenia: 10 – 11 czerwca 2019
-
Wykład 14: Przerwania i wyjątki
-
Egzamin: termin zasadniczy
Zostanie przeprowadzony w godzinach 10 – 13 w sali 13 i 25.
-
Egzamin: termin poprawkowy
Zostanie przeprowadzony w godzinach 10 – 13 w sali 25.