Systemy operacyjne - Przerwania, procesy, wątki
1. Przerwania systemowe:
- mogą być generowane przez urządzenia (zdarzenia synchroniczne)
- mogą być programowe (zdarzenia synchroniczne)
- po wykryciu przerwania i zakończeniu cyklu aktualnie wykonywanego rozkazu sprzęt zapamiętuje na stosie powrotu i wykonuje procedurę obsługi przerwania
- po zakończeniu obsługi przerwania sprzęt odtwarza adres powrotu ze stosu i ładuje go to licznika rozkazu.
2. Proces definiowany jest jako egzemplarz wykonywanego
programu. Każdy powstały proces otrzymuje unikalny numer, który go jednoznacznie
identyfikuje. W celu wykonania programu system operacyjny przydziela
procesowi zasoby (tj. pamięć czy czas procesora). Za zarządzanie procesami
odpowiada jądro systemu operacyjnego.
W skład procesu wchodzi: kod programu, stos, licznik rozkazu
i sekcja danych.
Każdemu procesowi przydzielone zostają zasoby tj. procesor,
pamięć, dostęp do urządzeń wejścia-wyjścia czy pliki.
Wykonanie procesu musi przebiegać sekwencyjnie. Może
przyjmować kilka stanów.
1. Aktualnie wykonywany przez procesor
2. Czekający na udostępnienie przez system operacyjny
zasobów
3. Uśpiony
4. Przeznaczony do zniszczenia
5. Proces "ZOMBIE"
6. Właśnie tworzony
3. Wątek to część programu wykonywana współbieżnie w obrębie
jednego procesu; w jednym procesie może istnieć wiele wątków.
W skład wątku wchodzi: licznik rozkazu, zbiór rejestrów i
obszaru stosu.
Wątek dzieli z innymi równorzędnymi wątkami przestrzeń adresową
procesu, a w szczególności jego kod i dane, otwarte pliki i sygnały.
4. Wielowątkowość to organizacja systemu operacyjnego, która
umożliwia wielozadaniowość procesu wewnątrz pojedynczego programu, czyli
równolegle.
Cechy wielowątkowości:
- wszystkie wątki wykonują się w ramach tylko jednego programu
- wątki zostały wprowadzone, aby umożliwić tzw. przetwarzanie współbieżne np.gdy zachodzi potrzeba wykonania wielu zadań jednocześnie
- wszystkie wątki procesu współdzielą tę samą wirtualną przestrzeń, czyli korzystają z tych samych zasobów systemowych.
5. Wielozadaniowość w środowisku Windows oznacza, że wiele
aplikacji działa jednocześnie. Sposób wykorzystania wielozadaniowości przez
program stanowi o jego poprawnym lub błędnym działaniu, a nawet może decydować
o poprawności pracy całego systemu.
6. Wywłaszczenie to metoda zapobiegania blokadom systemu
operacyjnego. Jest to możliwość zawieszenia jednego wątku w celu wykonania
innego. W systemach bez wywłaszczenia jedynie proces posiadający prawa do
zasobu może je zwolnić.
Wątek nie działa bez procesu, ponieważ nie ma własnej
pamięci!