Computer architecture and operating systems
General data
Course ID: | 1000-212bAKSO |
Erasmus code / ISCED: |
11.3
|
Course title: | Computer architecture and operating systems |
Name in Polish: | Architektura komputerów i systemy operacyjne |
Organizational unit: | Faculty of Mathematics, Informatics, and Mechanics |
Course groups: |
Obligatory courses for 1st grade JSIM Obligatory courses for 1st year Computer Science |
ECTS credit allocation (and other scores): |
6.00
|
Language: | Polish |
Type of course: | obligatory courses |
Requirements: | Introductory programming 1000-211bWPI |
Short description: |
Construction and principles of operation of modern computers, low-level programming, application binary interface, the role and tasks of the operating system, techniques for managing basic computer hardware resources: processor, main memory and input-output devices. |
Full description: |
(in Polish) Wykład • Architektura komputera: ◦ architektura a organizacja komputera ◦ model von Neumanna ◦ architektury Harward i Princeton ◦ architektury wspierające zrównoleglanie: superskalarna, wektorowa ◦ zrównoleglanie a dostęp do pamięci, architektury wieloprocesorowe i wielordzeniowe, modele SMP i NUMA • Mikroprocesor od wewnątrz: ◦ rejestry ◦ asembler, kod maszynowy, lista rozkazów ◦ tryby adresowania ◦ CISC a RISC ◦ przetwarzanie potokowe • Mikroprocesor w interakcji ze światem zewnętrznym: ◦ system przerwań, wyjątki ◦ sprzętowe wsparcie dla systemów operacyjnych ◦ poziomy ochrony, wywoływanie usług systemowych, segmentacja i stronicowanie ◦ interfejs binarny aplikacji (ABI) ◦ obsługa wejścia-wyjścia ◦ DMA • Hierarchia pamięci: ◦ pamięć operacyjna ◦ pamięci podręczne ◦ pamięci masowe ◦ macierze dyskowe • Wprowadzenie do systemów operacyjnych: ◦ zadania systemu operacyjnego ◦ budowa systemu operacyjnego ◦ funkcje systemowe • Procesy i zarządzanie nimi: ◦ pojęcie procesu ◦ stany procesu i przejścia między nimi ◦ podział czasu, wieloprogramowość ◦ synchronizacja na poziomie jądra ◦ szeregowanie procesów • Zarządzanie pamięcią: ◦ przestrzeń adresowa procesu ◦ strategie przydziału pamięci ◦ translacja adresów ◦ pamięć wirtualna • Systemy plików: ◦ koncepcja pliku ◦ realizacja systemu plików warstwy logicznej i fizycznej ◦ przykłady konkretnych implementacji • System wejścia-wyjścia: ◦ urządzenia blokowe i znakowe ◦ tablice rozdzielcze ◦ pliki specjalne ◦ struktura dysku • Wirtualizacja
Laboratorium • Interpreter poleceń: ◦ podstawowe polecenia: diff, grep, find, ps, wc, sort, cut, tail, head itp. ◦ potoki, strumienie, przekierowania ◦ skrypty bash (instrukcje if, for itp.), argumenty wywołania ◦ skrypty do testowania programów • Podstawy administracji systemem i maszyna wirtualna: ◦ maszyna wirtualna ◦ zarządzanie użytkownikami ◦ prawa dostępu do plików i katalogów ◦ instalowanie pakietów oprogramowania ◦ pliki konfiguracyjne .bash_profile, .profile, .bashrc itp. ◦ katalogi /etc, /usr, /home itp. ◦ logi systemowe • Język C ◦ pliki nagłówkowe, preprocesor, kompilator, linker, program make ◦ wskaźniki, sterta, alokacja pamięci, tablica dynamiczna ◦ dynamiczne struktury danych, BST, wskaźniki do wskaźników, valgrind ◦ obsługa plików • funkcje systemowe: open, close, read, write itp. • funkcje z biblioteki standardowej: fopen, fclose, fread, fwrite itp. • pliki specjalne: /dev/null, /dev/zero, /dev/random, /dev/urandom itp. • Programowanie niskopoziomowe ◦ asemblacja, dezasemblacja, łączenie ◦ podstawowe rozkazy asemblera x86 ◦ ABI – integracja z programem w C ◦ współpraca z systemem operacyjnym ◦ debuger |
Bibliography: |
(in Polish) A. Silberschatz, P. B. Galvin, Podstawy systemów operacyjnych W. Stallings, Organizacja i architektura systemu komputerowego |
Learning outcomes: |
(in Polish) Wiedza - absolwent zna i rozumie: - teoretyczne podstawy z zakresu architektury systemów komputerowych i systemów operacyjnych (K_W02), - architekturę współczesnych systemów (reprezentacja danych, architektura procesora, podsystemy wejścia-wyjścia, pamięć, architektury wieloprocesorowe (K_W06), - zasady działania systemów operacyjnych ze szczególnym uwzględnieniem procesów, współbieżności, szeregowania zadań i zarządzania pamięcią (K_W07). Umiejętności - absolwent potrafi: - pozyskiwać informacje z literatury, baz wiedzy, Internetu oraz innych wiarygodnych źródeł, integrować je, dokonywać ich interpretacji oraz wyciągać wnioski i formułować opinie (K_U02), - samodzielnie planować i realizować własne uczenie się przez całe życie (K_U09). Kompetencje społeczne - absolwent jest gotów do: - krytycznej oceny posiadanej wiedzy i odbieranych treści (K_K01), - pracy z poszanowaniem uczciwości intelektualnej w działaniach własnych i innych osób; przestrzegania zasad etyki zawodowej i wymagania tego od innych oraz dbałości o dorobek i tradycje zawodu informatyka (K_K02), - uznawania znaczenia wiedzy w rozwiązywaniu problemów poznawczych i praktycznych oraz wyszukiwania informacji w literaturze oraz zasięgania opinii ekspertów (K_K03). |
Assessment methods and assessment criteria: |
(in Polish) Ocena końcowa z przedmiotu ustalana jest na podstawie łącznej liczby punktów z laboratorium i egzaminu. Szczegółowe zasady oceniania opisane są w kursie przedmiotu na platformie moodle. |
Classes in period "Summer semester 2023/24" (in progress)
Time span: | 2024-02-19 - 2024-06-16 |
Navigate to timetable
MO LAB
LAB
LAB
TU LAB
LAB
LAB
W WYK
LAB
TH LAB
LAB
LAB
FR LAB
LAB
|
Type of class: |
Lab, 30 hours
Lecture, 30 hours
|
|
Coordinators: | Marcin Engel, Marcin Peczarski | |
Group instructors: | Jacek Chrząszcz, Marcin Engel, Janusz Jabłonowski, Marcin Peczarski, Wojciech Przytuła, Inga Rüb, Przemysław Rutka, Marek Sokołowski, Marcin Wrochna, Artur Zaroda | |
Students list: | (inaccessible to you) | |
Examination: | Examination |
Classes in period "Summer semester 2024/25" (future)
Time span: | 2025-02-17 - 2025-06-08 |
Navigate to timetable
MO TU W TH FR |
Type of class: |
Lab, 30 hours
Lecture, 30 hours
|
|
Coordinators: | Marcin Engel | |
Group instructors: | Jacek Chrząszcz, Marcin Engel, Janusz Jabłonowski, Marcin Peczarski, Wojciech Przytuła, Przemysław Rutka, Marcin Wrochna, Artur Zaroda | |
Students list: | (inaccessible to you) | |
Examination: | Examination |
Copyright by University of Warsaw.