Portal Dydaktyczny Katedry Informatyki

Personal tools
Document Actions

Systemy Operacyjne 2

by Arkadiusz Chrobot last modified 2017-06-20 17:01

Strona z materiałami dydaktycznymi do Systemów Operacyjnych 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

Warunki zaliczenia

  1. Wstęp
  2. Zarządzanie procesami
  3. Szeregowanie procesów (planista O(1))
  4. Szeregowanie procesów (planista CFS)
  5. Wywołania systemowe
  6. Obsługa przerwań
  7. Dolne połówki
  8. Mechanizmy synchronizacji
  9. Pomiar czasu
  10. Zarządzanie pamięcią
  11. Wirtualny System Plików
  12. Obsługa urządzeń znakowych i blokowych
  13. Warstwa Operacji Blokowych
  14. Przestrzeń adresowa procesu
  15. Obsługa sieci

 
 

Laboratorium

Warunki zaliczenia

Materiały wprowadzające

  1.  Moduły jądra systemu Linux
  2. Dynamiczny przydział pamięci w przestrzeni jądra Linuksa
  3. Struktury danych jądra Linuksa
  4. Systemy plików procfs i sysfs
  5. Wątki jądra i mechanizmy synchronizacji
  6. Tasklety i kolejki prac
  7. Liczniki czasu
  8. Sterowniki urządzeń znakowych
  9. Sterowniki urządzeń blokowych
  10. Gniazda sieciowe Netlink i Genetlink

 

 

Literatura i inne materiały

 

Literatura podstawowa:

 

  1. Robert Love, "Kernel Linux, przewodnik programisty", Helion, Gliwice 2014

  2. Jonathan Corbet, Alessandro Rubini, Greg Kroah-Hartman, "Linux Device Drivers"

  3. Wolfgang Mauerer, "Professional Linux Kernel Architecture", Wiley Publishing, Inc., Indianapolis, 2008

  4. Sreekrishnan Venkateswaran, "Essential Linux Device Drivers", Prentice Hall, Upper Saddle River, 2008

  5. Daniel P. Bovet, Marco Cesati, "Understanding the Linux Kernel, 3rd Edition", O'Reilly Media, Sebastopol 2005

 

Literatura uzupełniająca:

 

  1. Robert Love, "Kernel Linux, przewodnik programisty", Helion, Gliwice 2004

  2. Mel Gorman, "Understanding the Linux Virtual Memory Manager"

  3. Maurice J.Bach, "Budowa systemu operacyjnego UNIX", WNT, Warszawa 1995

 

Kody źródłowe przykładowych modułów jądra:

  1. Laboratorium pierwsze
  2. Laboratorium drugie
  3. Laboratorium trzecie
  4. Laboratorium czwarte
  5. Laboratorium piąte
  6. Laboratorium szóste
  7. Laboratorium siódme
  8. Laboratorium ósme
  9. Laboratorium dziewiąte
  10. Laboratorium dziesiąte

 

Strony internetowe:


  1. Linux Weekly News
  2. Linux Kernel Newbies
  3. Linux Cross Reference
  4. Kurs tworzenia sterowników dla platformy BeagleBone Black (język angielski)

  5. Build own USB device on linux-based board! [en] - Krzysztof Opasiak

  6. Linux Kernel Documentation (język angielski)