Procesy, wątki Program a proces Proces: Przestrzeń adresowa, kod, dane, stos (część pamięci do przechowania zmiennych lokalnych i niektórych adresów) Otwarte.

Slides:



Advertisements
Podobne prezentacje
Tryby adresowania Prawie każda operacja wykonywana przez mikroprocesor wykonywana jest na pewnych argumentach (lub argumencie). Sposoby wskazywania argumentów.
Advertisements

Zerowanie mikroprocesorów Cel: wprowadzenie mikroprocesora w określony stan początkowy Zwykle realizowany poprzez: inicjalizację licznika rozkazów (PC)
Wirtualizacja zasobów w systemach operacyjnych
Podstawowe pojęcia programowania współbieżnego
Mechanizmy pracy równoległej
Wykład nr 8: Zakleszczenia
Wykonał : Marcin Sparniuk
Podstawy Informatyki (4)
SYSTEMY OPERACYJNE WSTĘP
SYSTEMY OPERACYJNE ·       SO : zestaw programów zarządzających zasobami komputera i wspomagających jego użytkowanie zarządzanie zasobami.
Semafory Autorzy : Michał Winciorek Łukasz Jackowicz.
PROGRAMOWANIE STRUKTURALNE
SYSTEMY OPERACYJNE PROCESY I WĄTKI
SYSTEMY OPERACYJNE PROCESY I WĄTKI
SYSTEMY OPERACYJNE PROCESY I WĄTKI
Wykład 5 Przerwania w systemie SAB80C537 dr inż. Andrzej Przybył
SEMAFORY Dominik Niewiadomy Łukasz Dąbrowski.
Wykład nr 7: Synchronizacja procesów
Systemy operacyjne Wykład nr 5: Wątki Piotr Bilski.
Systemy operacyjne Wykład nr 4: Procesy Piotr Bilski.
Wykład nr 2: Struktura systemu komputerowego a system operacyjny
Systemy operacyjne.
Komputer, procesor, rozkaz.
Temat nr 10: System przerwań
Budowa systemów operacyjnych czasu rzeczywistego
Temat : Części komputera
ZARZĄDZANIE PROCESAMI
Problem rozbieżności czasów jednym z wielu problemów pojawiających się w systemach rozproszonych jest rozbieżność wartości zegarów na poszczególnych węzłach-maszynach.
Język Java Wielowątkowość.
Semafory według normy POSIX
Wieloprocesowy system operacyjny dla komputerów ATARI XL/XE
Wątki.
Układy wejścia-wyjścia
Zdzisław Stryła Instytut Fizyki UAM
ogólne pojęcia struktury
Podstawy programowania II
Systemy Rozproszone Synchronizacja 2
Opracowanie: Maria W ą sik. Pierwsze komputery budowano w celu rozwi ą zywania konkretnych problemów. Gdy pojawiało si ę nowe zadanie, nale ż ało przebudowa.
Opracowanie: Maria Wąsik
Wielozadaniowowść systemu operacyjnego Linux
Systemy operacyjne.
Zasada działania komputera
Budowa systemu komputerowego
Urządzenia wewnętrzne komputera
Współbieżność w informatyce i nie tylko
Automatyka i Robotyka Systemy czasu rzeczywistego Wykład 4.
Podstawowe usługi systemów operacyjnych
Architektura komputerów
Mikroprocesory.
Mikroprocesory mgr inż. Sylwia Glińska.
Problem sekcji krytycznej
Koncepcja procesu Zadanie i proces. Definicja procesu Process – to program w trakcie wykonywania; wykonanie procesu musi przebiegać w sposób sekwencyjny.
M i k r o j ą d r o D e f i n i c j a. M i k r o j ą d r o to rodzaj jądra systemu operacyjnego, które zawiera tylko najbardziej niezbędne elementy, takie.
POŚREDNIK Jak reprezentowana jest informacja w komputerze? liczby – komputer został wymyślony jako zaawansowane urządzenie służące do wykonywania.
Spis treści Architektura systemu windows Pamięć wirtualna Plik wymiany
Elementy zestawu komputerowego
Wykład 7 Synchronizacja procesów i wątków
W ą t e k (lekki proces) thread.
Planowanie przydziału procesora
SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE
Systemy rozproszone  Rozdzielenie obliczeń między wiele fizycznych procesorów.  Systemy luźno powiązane – każdy procesor ma lokalną pamięć; procesory.
Procesor, pamięć, przerwania, WE/WY, …
Rodzaje systemów operacyjnych
Tryby adresowania i formaty rozkazów mikroprocesora
Portal edukacyjny J A V A S C R I P T JĘZYK PROGRAMOWANIA STRON HTML Opracowała: Anna Śmigielska.
Wstęp do programowania Wykład 7
Systemy operacyjne Wykład 6 Procesy dr inż. Wojciech Bieniecki Instytut Nauk Ekonomicznych i Informatyki 1.
POLITECHNIKA POZNAŃSKA
Wątki, programowanie współbieżne
Podział mikroprocesorów
Zapis prezentacji:

Procesy, wątki Program a proces Proces: Przestrzeń adresowa, kod, dane, stos (część pamięci do przechowania zmiennych lokalnych i niektórych adresów) Otwarte pliki urządzenia ProgramProces Pliki wykonywalne (na dysku) ze zdefiniowanym algorytmem (rozkazy) i danymi Wykonywany program, umieszczony w pamięci Pojęcie statycznePojęcie dynamiczne (zmiana np. licznika rozkazów)

Procesy, wątki Stany procesu, model sześciostanowy Stan nowo utworzonego procesu przed dołączeniem do zadań gotowych do uruchomienia NowyGotowyDziałającyZakończony ZawieszonyZablokowany Nowy Gotowy Może być natychmiast uruchomiony Działający Aktywny; na jednym procesorze w danej chwili działać może tylko jeden proces

Procesy, wątki Stany procesu, model sześciostanowy oczekujący, będzie można go uruchomić dopiero po wystąpieniu zdarzenia, np. zakończeniu operacji WE / WY NowyGotowyDziałającyZakończony ZawieszonyZablokowany Zakończony Ukończył zadania, bądź został wyłączony (bo np. błąd) Zawieszony Przeniesiony do pamięci niższego rzędu, długo oczekuje na zdarzenie (np. zwolnienie WE/WY przez inny proces)

Procesy, wątki Przejścia pomiędzy stanami procesu System przekazuje proces do kolejki procesów gotowych, umieszczenie w pamięci. Ograniczenie liczby procesów gotowych (nowe czekają) NowyGotowy Działający Proces otrzymuje przydział procesora; planista - algorytm szeregowania (scheduler), priorytety; wywłaszczenie DziałającyGotowy koniec limitu czasu; wywłaszczenie przez proces o wyższym priorytecie, który skończył czekanie, w systemach bez wywłaszczania – proces „sam” może oddać procesor; trzeba zapamiętać stan rejestrów – kontekst procesu

Procesy, wątki Przejścia pomiędzy stanami procesu Proces oczekuje np. na operację WE/WY, na dane od innego procesu (lub wątku), dane z chwilowo niedostępnego obszaru pamięci DziałającyZablokowany Gotowy Wystąpiło oczekiwane zdarzenie, proces może być kontynuowany ZablokowanyZawieszony Oczekuje na jakieś zdarzenie, przeniesiony do pamięci niższego poziomu (dysk) w celu zwolnienia pamięci na inne procesy

Procesy, wątki Przejścia pomiędzy stanami procesu Nastąpiło oczekiwane zdarzenie, jest dość wolnej pamięci ZawieszonyGotowyDziałającyZakończony Zadanie zostało ukończone, lub w trakcie wykonywania pojawił się błąd uniemożliwiający dalszą pracę (np. naruszenie ochrony pamięci) Na danej jednostce (procesorze jednordzeniowym lub rdzeniu procesora wielordzeniowego) w danym momencie tylko jeden proces może być w stanie „działający”!

Procesy, wątki Wielowątkowość Proces: Jednowątkowy – poszczególne zadania przetwarzane są sekwencyjnie, jedno po drugim Wielowątkowy – proces zawiera niezależne od siebie zadania, które mogą być wykonywane jednocześnie Proces Przestrzeń adresowa, pliki, zmienne globalne Wątek 1Wątek 2Wątek 3 Licznik rozkazów Rejestry Stos stan Licznik rozkazów Rejestry Stos stan Licznik rozkazów Rejestry Stos stan

Procesy, wątki Wielowątkowość Wątki: Wymagają mniej zasobów niż procesy, krótszy jest ich czas tworzenia Wątki należą do przestrzeni adresowej jednego procesu, mogą szybko się komunikować (wymiana danych pomiędzy wątkami szybsza niż pomiędzy procesami, procesy są od siebie izolowane – ochrona pamięci) Wielowątkowość, wieloprocesorowość: przyspieszenie wykonywania programów

Procesy, wątki Wielowątkowość System operacyjny Przechowuje informacje (ślady) o działaniu różnych procesów Przydziela i odbiera zasoby: czas procesora, pamięć, pliki, urządzenia WE / WY Chroni dane i zasoby każdego procesu przed działaniem innych procesów (pamięć, pliki, WE / WY) Wynik działania procesu nie może zależeć od tempa przetwarzania innych procesów

Procesy, wątki Współbieżność procesów lub wątków Wielozadaniowy system operacyjny posiada narzędzia dotyczące pojęć: Wykluczanie wzajemne: w danym czasie tylko jedno zadanie ma dostęp do wspólnych zasobów; sekcja krytyczna: fragment procesu, w którym wykorzystywane są wspólne zmienne, pliki itd. Synchronizacja: koordynacja działania różnych procesów, zapewniająca właściwą wymianę informacji między nimi Zakleszczenie: wzajemne blokowanie się procesów, Proces A czeka na efekty procesu B, B na C, a C nie może zacząć, bo czeka na informację od A. Metody zapobiegania, unikania i wykrywania Zagłodzenie: proces ma niski priorytet i może nigdy nie doczekać się dostępu do zasobów; może być efektem unikania zakleszczeń, niewłaściwego algorytmu szeregowania, zbyt duże liczby zadań

Procesy, wątki Współbieżność procesów lub wątków Wielozadaniowy system operacyjny posiada narzędzia dotyczące pojęć: Algorytm szeregujący, planista,  Planista krótkoterminowy: ustalanie kolejności wykonywania zadań gotowych, musi być szybki  długoterminowy: dołączanie procesów do listy gotowych Wywłaszczenie: wstrzymanie aktualnie wykonywanego zadania, by mogło się przetwarzać inne (istnieją rozwiązania bez wywłaszczania – zadania „same” oddają sterowanie)

Procesy, wątki Współczesne systemy operacyjne Wielozadaniowość, wielowątkowość z wywłaszczaniem (przerwania, planista) Symetryczne przetwarzanie wieloprocesorowe