Projekt: System operacyjny Mimiker

Język wykładowy Polski
Semestr Nieokreślony
Status W ofercie
Opiekun Krystian Bacławski
Liczba godzin 60 (prac.)
Rodzaj Projekt
ECTS 6
Polecany dla I roku Nie
Egzamin Nie

Opis przedmiotu:

Na zajęciach będziemy kontynuować rozwój uniksopodobnego systemu operacyjnego [Mimiker](https://github.com/cahirwpz/mimiker) dla platformy [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi). Postępy prac będą dokumentowane i publicznie udostępniane z pomocą rzutnika w holu koło sali 119 i na stronie internetowej [mimiker.ii.uni.wroc.pl](https://mimiker.ii.uni.wroc.pl/). Ogólnie celem zajęć jest dodanie do jądra funkcji, które pozwolą na uruchomienie szerszego zestawu oprogramowania o otwartych źródłach, np. popularnych bibliotek, interpreterów języków programowania, gier. Będziemy się zajmować różnymi aspektami systemu w tym: * komunikacją międzyprocesową, * zarządzaniem procesami, * planowaniem procesów, * zarządzaniem pamięcią wirtualną, * wirtualnym systemem plików, * stosem sieciowym TCP/IP, * sterownikami urządzeń, * systemami plików. Celem na najbliższy semestr jest wprowadzenie do Mimikera: * plików wykonywalnych konsolidowanych dynamicznie, * warstw buforujących dla wirtualnego systemu plików, * trwałych systemów plików z dziennikowaniem, * lepszej infrastruktury do testowania jądra, * warstwy uruchomieniowej dla platformy RISC-V. Zadania będą dobierane indywidualnie, w zależności od stopnia wdrożenia studenta w projekt. Po przydziale zadania studenci mają się zapoznać z kodem i dokumentacją jądra systemu NetBSD i pochodnych. Po rozpoznaniu i zreferowaniu problemu należy przystąpić do projektowania rozwiązania. W trakcie implementacji studenci muszą przeprowadzić inspekcję kodu (ang. _code review_). Kluczowym kryterium oceny wprowadzanych zmian jest poprawność i czytelność kodu. **Dla nowych członków:** Szacowana liczba godzin pracy własnej studenta na tydzień wynosi około 8h. Spodziewam się umiejętności samodzielnego rozwiązywania problemów i dobrej komunikacji. Ocena będzie wypadkową: nakładu pracy, osiągniętych efektów oraz uczestnictwa w _code review_ lub pisaniu dokumentacji. W poniedziałki robimy podsumowanie zeszłego tygodnia i piszemy krótkie sprawozdania. Przydzielenie tematu pracy dyplomowej następuje po wdrożeniu w projekt, które trwa jeden semestr.