Systemy Operacyjne

Ćwiczenia

Maciej Smoleński

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License.

Visit http://creativecommons.org/licenses/by-nc-sa/3.0/us/ for more details.

Revision History
Revision 12010-10-04M. Smolenski
Dodana sekcja atomowe operacje czytania i pisania.
Revision 22010-10-08M. Smolenski
Dodana sekcja komunikacja asynchroniczna.
Revision 32010-10-18M. Smolenski
Dodana sekcja semafory.
Revision 42010-10-20M. Smolenski
Dodane rozwiązania 1.komunikacja asynchroniczna: czytelnicy_i_pisarze i zasoby_alubb 2.semafory: dzielenie łącza, implementacja semafora uogólnionego, grupowanie.
Revision 52010-10-27M. Smolenski
Dodane zadania wraz z rozwiązaniami: obliczenia w grupach wyłącznych, obliczenia w grupach współbieżnych.
Revision 62010-11-04M. Smolenski
Dodane zadania wraz z rozwiązaniami(semafory i monitory): stolik dwuosobowy, grupy zasobów, implementacja monitora.
Revision 72010-11-10M. Smolenski
Dodane zadania wraz z rozwiązaniami(monitory): przetwarzanie, ładowanie cegieł.
Revision 82010-11-15M. Smolenski
Dodane zadania wraz z rozwiązaniami(monitory): biuro, zasoby.
Revision 92010-11-25M. Smolenski
Dodane zadania z kolokwium 2008 wraz z rozwiązaniami.
Revision 102010-11-30M. Smolenski
Dodane zadania z kolokwium 2009 wraz z rozwiązaniami.
Revision 112010-12-08M. Smolenski
Dodany rozdział wielozadaniowość.

Table of Contents

I. Współbieżność
1. Atomowe operacje czytania i pisania
Dostęp do pamięci bez synchronizacji
Synchronizacja dostępu
Wzajemne wykluczanie (Algorytm Petersona)
2. Komunikacja asynchroniczna
Wzajemne wykluczanie
Producenci i konsumenci
Czytelnicy i pisarze
Metoda Pojedynczego Przetwarzania Żądań
Rozwiązanie klasyczne
Zasoby
Tylko zasób A
Rozwiązanie
3. Semafory
Dzielenie pasma łącza
Rozwiązanie poprawne
Rozwiązanie niepoprawne
Rozwiązanie poprawne korzystające z metody Przekazywania (Dziedziczenia) Sekcji Krytycznej
Semafor uogólniony
Grupowanie uczestników
Czytelnicy i pisarze
Obliczenia w wyłącznych grupach
Obliczenia we współbieżnych grupach
4. Monitory
Stolik dwuosobowy
Semafory
Monitory
Grupy zasobów
Semafory
Monitory
Implementacja monitora
Przetwarzanie
Jeden klient i jeden pracownik
Wielu klientów i wielu pracowników
Ładowanie cegieł
Rozwiązanie
Biuro
Zasoby
5. Zadania z kolokwiów
Wycieczki
Dyskoteka
Gracze
Grupy Procesów
II. Systemy Operacyjne
6. Wielozadaniowość
Wprowadzenie
Architektura Komputera
Zadanie (Task)
Architektura systemu wielozadaniowego
Przełączanie zadań
Reprezentacja zadania
Przerwania
Przykład
Obsługa Przerwania
Zmiana zadania
Zmiana zadania przykład
Atomowe operacje
Atomowe operacje Read i Write
Atomowe operacje Read-Modify-Write
Blokada typu spinlock
Przełączanie zadań
Zadanie
Kolejki
Current
Kontekst przełączania zadań
Procedura scheduler
Procedura scheduler (interrupts)
Procedura scheduler (spinlock)
Procedura scheduler (interrupts i spinlock)
Procedura scheduler (interrupts i spinlock i bit busy)
Semafor
Semafor (interrupts)
Semafor (spinlock)
Semafor (interrupts i spinlock)
Podsumowanie