Systemy operacyjne 2
Strona z materiałami dydaktycznymi do przedmiotu Systemy operacyjne 2.
Uwaga: Zamieszczone tu materiały nie mają charakteru podręczników akademickich. Stanowią jedynie uzupełnienie wykładu i literatury podanej na stronie.
Wykład
- Wstęp --- wersja do notowania
- Zarządzanie procesami --- wersja do notowania
- Szeregowanie procesów, część 1 --- wersja do notowania
- Szeregowanie procesów, część 2 --- wersja do notowania
- Wywołania systemowe --- wersja do notowania
- Obsługa przerwań --- wersja do notowania
- Dolne połówki --- wersja do notowania
- Mechanizmy synchronizacji --- wersja do notowania
Laboratorium
- Moduły jądra systemu Linux
- Dynamiczny przydział pamięci w przestrzeni jądra Linuksa
- Struktury danych jądra Linuksa
- Systemy plików procfs i sysfs
- Wątki jądra i mechanizmy synchronizacji
Literatura i inne materiały
Literatura podstawowa:
- Robert Love, „Jądro Linuksa, przewodnik programisty”, Helion, Gliwice 2014
- Jonathan Corbet, Alessandro Rubini, Greg Kroah-Hartman, "Linux Device Drivers"
- Wolfgang Mauerer, "Professional Linux Kernel Architecture", Wiley Publishing, Inc., Indianapolis, 2008
- Sreekrishnan Venkateswaran, "Essential Linux Device Drivers", Prentice Hall, Upper Saddle River, 2008
- Kaiwan N. Billimoria, "Linux Kernel Programming", Packt Publishing, Birmingham, 2024
- Daniel P. Bovet, Marco Cesati, "Understanding the Linux Kernel, 3rd Edition", O'Reilly Media, Sebastopol 2005
Literatura uzupełniająca:
- Robert Love, „Kernel Linux, przewodnik programisty”, Helion, Gliwice 2004
- Mel Gorman, "Understanding the Linux Virtual Memory Manager"
- Maurice J.Bach, „Budowa systemu operacyjnego UNIX”, WNT, Warszawa 1995
Kody źródłowe przykładowych modułów jądra:
- Kody źródłowe przykładowych modułów jądra z pierwszej instrukcji (moduły jądra systemu Linux)
- Kody źródłowe przykładowych modułów jądra z drugiej instrukcji (dynamiczny przydział pamięci w przestrzeni jądra Linuksa)
- Kody źródłowe przykładowych modułów jądra z trzeciej instrukcji (struktury danych jądra Linuksa)
- Kody źródłowe przykładowych modułów jądra z czwartej instrukcji (systemy plików procfs i sysfs)
- Kody źródłowe przykładowych modułów jądra z piątej instrukcji (wątki jądra i mechanizmy synchronizacji)