Systemy operacyjne 3.4.KRK.12SX.SOPR
A. Problematyka wykładu
Pojecie systemu operacyjnego. Przegląd systemów operacyjnych. Składniki, rola i zadania systemu operacyjnego. Pojęcia procesu i wątku. Współbieżność. Procesy jednowątkowe i wielowątkowe. Zarządzanie procesami i wątkami. Procesy i wątki w konkretnych systemach operacyjnych. Procesy niezależne i procesy kooperujące. Pamięć współdzielona. Komunikacja międzyprocesowa bezpośrednia i pośrednia. Szeregowanie zadań. Specyfika i problemy planowania w czasie rzeczywistym. Przegląd i porównanie podstawowych algorytmów planowania (szeregowania) zadań. Synchronizacja procesów. Klasyczne problemy synchronizacji. Mechanizmy synchronizacji procesów dostarczane przez powszechnie użytkowane systemy operacyjne. Zakleszczenia. Zarządzanie pamięcią: logiczna i fizyczna przestrzeń adresowa; stronicowanie, segmentacja i wymiana; pamięć wirtualna; ochrona obszarów pamięci. Systemy plików. Ochrona systemu operacyjnego: domeny ochrony, modele ochrony. Struktury rozproszonych systemów operacyjnych. Analiza porównawcza wybranych systemów operacyjnych. Tendencje rozwojowe.
B. Problematyka laboratorium
Instalacja, konfigurowanie i pielęgnacja systemów operacyjnych. Procesy i wątki: budowanie diagramów kolejek procesów dla systemów pracujących na sprzęcie o zadanej konfiguracji modelowej; dyskusja klas problemów programistycznych o natural-nych rozwiązaniach implementowanych jako jedno- i wieloprocesowe względnie jedno- i wielowątkowe (kooperujące lub nieza-leżne). Programowanie współbieżne i programowanie systemowe. Podstawy programowania wielowątkowego. Podstawy pro-gramowania z wykorzystaniem mechanizmów komunikacji i synchronizacji dostępnych w wybranym systemie operacyjnym. Wielowątkowe symulacje zagadnień związanych z planowaniem przydziału procesora (projektowanie algorytmów planowania oraz ich testowanie i ocena) i problematyką zakleszczeń, dostępem do logicznych i fizycznych obiektów współdzielonych (w tym plików dyskowych).
Rodzaj przedmiotu
Wymagania
Koordynatorzy przedmiotu
Efekty kształcenia
Wiedza
Opisuje zasady działania systemów operacyjnych, wyjaśnia rolę i zadania ich składowych
Definiuje i wyjaśnia pojęcia procesu i wątku, przedstawia zagadnienia związane ze współbieżnością
Opisuje i wyjaśnia zagadnienie szeregowania zadań; klasyfikuje i demonstruje podstawowe algorytmy planowania
Opisuje i wyjaśnia idee, techniki i metody związane z zarządzaniem pamięcią
Umiejętności
Instaluje i konfiguruje wybrany system operacyjny; administruje nim; instaluje i uruchamia oprogramowanie
Rozpoznaje, analizuje i rozwiązuje problemy związane z wykonywaniem programów współbieżnych, korzysta przy tym z odpowiednich mechanizmów synchronizacji procesów
Porównuje wybrane schematy zarządzania pamięcią, dostrzegając idee hierarchiczności pamięci i pamięci wirtualnej
Pisze i uruchamia proste programy wykorzystujące mechanizmy komunikacji i synchronizacji dostępnye w wybranym systemie operacyjnym.
Systematyzuje i rozpoznaje w systemach operacyjnych implementacje ogólnych zasad związanych z bezpieczeństwem i ochroną
Kompetencje społeczne
Ma świadomość ciągłych zmian i innowacji dokonywanych w dziedzinie systemów operacyjnych, inspirowanych innymi dziedzinami wiedzy i inspirujących je, a w związku z tym krytycznie ocenia swoją wiedzę i umiejętności informatyczne, rozumiejąc potrzebę ciągłego ich doskonalenia w zakresie systemów operacyjnych na poziomie niezbędnym do wykonywania przyszłych czynności zawodowych
Kryteria oceniania
Metody dydaktyczne
• wykład / wykład z prezentacją multimedialną
• ćwiczenia laboratoryjne – rozwiązywanie zadań/realizacja projektów
Forma i sposób zaliczenia oraz podst. kryteria oceny lub wymagania egzaminacyjne
Na ogólnych zasadach określonych w programie kształcenia, a w szczególności:
A. Sposób zaliczenia
• egzamin na ocenę (wykład=W)
• zaliczenie z oceną (laboratorium=L)
B. Formy zaliczenia
• (W) egzamin pisemny/ustny
• (L) zaliczenie z oceną; ustalenie oceny zaliczeniowej na podstawie ocen cząstkowych otrzymywanych w trakcie trwania semestru za wystąpienia ustne i projekty
C. Podstawowe kryteria
• (W) uzyskanie pozytywnej oceny;
• (L) uzyskanie pozytywnej oceny końcowej.
Literatura
A. Literatura wymagana do ostatecznego zaliczenia zajęć (zdania egzaminu):
wykorzystywana podczas zajęć/ studiowana samodzielnie przez studenta
1. Frisch, A., Unix - administracja systemu, Oficyna Wydawnicza Read Me, 1996.
2. Silberschatz, A., Galvin, P. B., Podstawy systemów operacyjnych, WNT, 200x.
3. Stallings, William, Systemy operacyjne. Struktura i zasady budowy, PWN SA, 2006.
4. Stanek, William R., Windows 7. Vademecum administratora, Microsoft Press, 2009.
5. Welsh, M., Dalheimer, M., K., Kaufman, L., Linux, Oficyna Wydawnicza Read Me, 2000.
6. Aktualne materiały i specyfikacje dotyczące systemów operacyjnych, dostępne w sieci Internet.
B. Literatura uzupełniająca
1. Coulouris, G., Dollimore, J., Kindberg, T., Systemy rozproszone. Podstawy i projektowanie, WNT, 1999.
Więcej informacji
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: