Systemy Operacyjne 07 12 2010 Kontekst i jego połączenie
SYSTEMY OPERACYJNE 07.12.2010 Kontekst i jego połączenie cd. P1 P1 Kontekst P2 P3 współbieżna realizacja procesów / wątków Kontekst zbiór danych określających aktualny stan procesów lub wątków. Kontekst: " sprzętowy zbiór danych związanych z procesorem ć% stan licznika rozkazów PC (adres rozkazu) IMG ć% rejestry robocze procesora TSS Task State Segment 104B " programowy np.: stan otwartych plików Połączenie kontekstu P1 P1 zapamiętanie w pamięci operacyjnej kontekstu procesu / wątku operacje sprzętowe P2 odczytanie z pamięci operacyjnej kontekstu procesu / wątku P2 Procesy zależne i niezależne " niezależne są to procesy i wątki które nie korzystają ze wspólnych danych i nie komunikują się ze sobą. P1 P2 DANE 1 DANE 2 " zależne są to takie procesy i wątki które korzystają ze wspólnych danych lub komunikują się ze sobą P1 P2 różne P2 wyniki P1 DANE DANE Hazard " niezależne wyniki deterministyczne " zależne hazard wyniki niedeterministyczne Usunięcie niedeterminizmu programista Mechanizmy systemowe " semafory ć% semafory binarne Mutex (ang.: Mutual Exclusion) P2 P1 1 sekcja 3 krytyczna 2 sekcja krytyczna programowanie współbieżne sekcja krytyczna fragment programu modyfikujący wspólne dane