Przeplot. Synchronizacja procesów. Cel i metody synchronizacji procesów. Wątki współbieżne

Wielkość: px
Rozpocząć pokaz od strony:

Download "Przeplot. Synchronizacja procesów. Cel i metody synchronizacji procesów. Wątki współbieżne"

Transkrypt

1 Synchronizacja procesów Przeplot Przeplot wątków współbieżnych Cel i metody synchronizacji procesów Problem sekcji krytycznej Semafory Blokady Wątki współbieżne Cel i metody synchronizacji procesów

2 Problem sekcji krytycznej Rozwiązania problemu sekcji krytycznej n procesów konkuruje od dostęp do zasobów dzielonych Wkażdym procesie jest segment kodu programu, zwany sekcją krytyczną (critical section), w której ma miejsce dostęp dowspółdzielonego zasobu. Problem jak zapewnić, aby w czasie gdy jeden proces wykonuje się swojej sekcji krytycznej, żaden inny proces nie miał zgody na wykonanie swojej sekcji krytycznej (dotyczącej danego zasobu). 1. Wzajemne wykluczanie (mutual exclusion). Jeśli proces P i wykonuje sekcję krytyczną, żaden inny proces nie może wykonywać sekcji krytycznych. 2. Postęp. Jeśli żaden proces nie działa w sekcji krytycznej oraz istnieją procesy, które chcą wejść do sekcji krytycznych, to tylko procesy nie wykonujące swoich reszt mogą kandydować do wejścia; wybór nie może być odwlekany w nieskończoność. 3. Ograniczone czekanie. Musi istnieć wartość graniczna liczby wejść innych procesów do ich sekcji krytycznych, po tym gdy dany proces zgłosił chęć do sekcji krytycznej i zanim dostał pozwolenie Sekcja krytyczna Pierwsza próba rozwiązania wymuszona naprzemienność zajmowania sekcji krytycznej przez dwa procesy nie jest spełniony warunek postępu, gdyż proces Pi, wychodząc z sekcji krytycznej, nie może zająć jej ponownie, zanim nie zrobi tego proces Pj jeśli z programu procesu Pj wynika, że nie będzie on już wchodził do sekcji krytycznej, proces Pi nie wejdzie tam nigdy

3 Próba druga Algorytm piekarni Bakery Algorithm Przed wejściem do sekcji krytycznej proces otrzymuje numerek. Obsługa w kolejności ustalonej przez numerki. Jeśli proces P i oraz P j otrzyma ten sam numerek, lecz i < j, to P i jest obsługiwany jako pierwszy. proces sygnalizuje zamiar lub docelowo fakt wejściadosekcji krytycznej, ustawiając znacznik na swojej pozycji na true własność postępu nie jest spełniona, gdyż mogą nastąpić podstawienia true pod odpowiednie pozycje znacznika obu procesów Algorytm Petersona Semafory (semaphores) Narzędzie synchronizacji nie wymagające aktywnego oczekiwania. Semafor S zmienna całkowita Dostęp do zmiennej S tylko za pomocą operacji: wait (S): while S 0 do no-op; S--; signal (S): S++; znacznik informuje, że proces chce wejść do sekcji krytycznej numer daje prawo innemu, wskazanemu procesowi proces, który później ustawi numer rywala, musi w konsekwencji poczekać, aż rywal wyjdzie z sekcji krytycznej

4 Semafor na poziomie systemu Sekcja krytyczna z udziałem n procesów Dane współdzielone: semaphore mutex; //initially mutex = 1 Proces Pi: do { wait(mutex); critical section signal(mutex); remainder section } while (1); eliminacja aktywnego czekania w pętli stan procesu zmieniany jest na oczekujący, więc planista przydziału procesora nie uwzględnia go, wybierając proces do wykonania liczba procesów oczekujących jest równa wartości bezwzględnej pola wartość Semafor na poziomie systemu Zastosowanie semafora Wykonaj B w P j dopiero wtedy gdy A zostanie wykonane w P i Wartość początkowa semafora flag = 0 Kod: P i P j M M A wait(flag) signal(flag) B gdy wartość ujemna, to znaczy, że są procesy czekające w kolejce z kolejki wybierany jest jeden z procesów, a jego stan ustawiany jest na gotowy

5 Blokada i zagłodzenie Blokada (deadlock) dwa lub więcej procesów czeka na zdarzenie, które może być spowodowane jedynie przez jeden z oczekujących procesów. Niech S i Q to dwa semafory o wartościach początkowych 1 P 0 P 1 wait(s); wait(q); wait(q); wait(s); M M signal(s); signal(q); signal(q) signal(s); Zagłodzenie (starvation) blokowanie nieskończone. Proces może nigdy nie być usunięty z kolejki pod semaforem. Problem filozofów Philosopher(int i) { while(1) { Think(); TakeLeftFork(i); TakeRightFork(i); Eat(); PutLeftFork(i); PutRightFork(i); } } Może się zdarzyć, każdy z filozofów weźmie do lewej ręki widelec, ale wszyscy będą czekali, aby można było wziąć drugi widelec do prawej ręki Problem filozofów Postępowanie z blokadą Ignorowanie (metoda strusia): możliwa jeśli rzadko się zdarzają Wykrywanie i wychodzenie z blokady: drastyczne przerwanie zakleszczenia Stałe unikanie blokady: zachować ostrożność przy przydzielaniu zasobów. Zapobieganie blokadom: taka organizacja systemu, aby blokada nie mogła nastąpić

6 Warunki konieczne blokady (koniunkcja) Blokada Wzajemne wyłączanie (mutual exclusion): istnieją zasoby niepodzielne. Przetrzymywanie i oczekiwanie (hold and wait): musi istnieć proces mający przydzielony przynajmniej jeden zasób i oczekujący na przydział dodatkowego zasobu, który jest przetrzymywany przez inny proces. Brak wywłaszczeń (no preemption): zasoby nie podlegają wywłaszczaniu. Czekanie cykliczne: zamknięty łańcuch oczekiwania procesów na zasób przetrzymywany przez proces kolejny w łańcuchu. Blokada nie zajdzie jeśli którykolwiek warunek nie jest spełniony Blokada 3.22

* Wymień typowe standardy sygnałów procesowych: - analogowy - dwustanowe

* Wymień typowe standardy sygnałów procesowych: - analogowy - dwustanowe * Zaznaczyć wszystkie zadania charakteryzujące system czasu rzeczywistego o ostrych ograniczeniach czasowych: - ograniczenia czasowe zależą od techniki realizacji systemu - przekroczenie ograniczeń czasowych

Bardziej szczegółowo

System plików warstwa fizyczna. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

System plików warstwa fizyczna. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak System plików warstwa fizyczna Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak System plików warstwa fizyczna Celem wykładu jest prezentacja różnych podejść do implementacji systemu plików. Podejścia

Bardziej szczegółowo

Czas wirtualny, złożoność algorytmów

Czas wirtualny, złożoność algorytmów Czas wirtualny, złożoność algorytmów Plan wykładu Celem wykładu jest zaznajomienie studenta z pojęciem zegara logicznego, scharakteryzowanie różnych rodzajów kanałów komunikacyjnych, a także przedstawienie

Bardziej szczegółowo

Konstrukcja spójnego obrazu stanu globalnego algorytmy

Konstrukcja spójnego obrazu stanu globalnego algorytmy Konstrukcja spójnego obrazu stanu globalnego algorytmy Plan wykładu Celem wykładu jest przedstawienie niektórych algorytmów służących do konstrukcji obrazu spójnego stanu globalnego. Wykład obejmie przedstawienie

Bardziej szczegółowo

Sigma 12 12-Liniowa 2-Strefowa Centrala Alarmowa Dla Twojego biura i domu

Sigma 12 12-Liniowa 2-Strefowa Centrala Alarmowa Dla Twojego biura i domu Sigma 12 12-Liniowa 2-Strefowa Centrala Alarmowa Dla Twojego biura i domu Instrukcja użytkownika Wyłączny importer ul. Płomyka 2, 02-490 Warszawa tel.: 022 863-63-53 fax: 022 863-74-23 http://www.janexint.com.pl

Bardziej szczegółowo

POMOC DO PROGRAMU. Merco s.c. - Programy dla resturacji i hoteli www.merco.pl

POMOC DO PROGRAMU. Merco s.c. - Programy dla resturacji i hoteli www.merco.pl POMOC DO PROGRAMU Merco s.c. - Programy dla resturacji i hoteli www.merco.pl 2. Instalacja systemu 1. Spis treści 2. Instalacja systemu... 3 3. System - konfiguracja... 4 3.1. Parametry programu... 4 3.1.1.

Bardziej szczegółowo

PORADNIK UŻYTKOWNIKA. PowerMaster-10 G2. W pełni nadzorowany bezprzewodowy system alarmowy. www.visonic.com

PORADNIK UŻYTKOWNIKA. PowerMaster-10 G2. W pełni nadzorowany bezprzewodowy system alarmowy. www.visonic.com PORADNIK UŻYTKOWNIKA PowerMaster-10 G2 W pełni nadzorowany bezprzewodowy system alarmowy www.visonic.com Instrukcja obsługi urządzenia PowerMaster-10/30 G2 Spis treści 1. Wprowadzenie... 3 Przedmowa...

Bardziej szczegółowo

Praca dyplomowa inżynierska

Praca dyplomowa inżynierska POLITECHNIKA WARSZAWSKA Rok akademicki: Wydział Elektroniki i Technik Informacyjnych 2003/2004 Instytut Automatyki i Informatyki Stosowanej Praca dyplomowa inżynierska Krzysztof Ślusarczyk Opracowanie,

Bardziej szczegółowo

CA-10 Wersja programowa 5.11

CA-10 Wersja programowa 5.11 Centrala alarmowa CA-10 Wersja programowa 5.11 INSTRUKCJA INSTALATORA GDAŃSK ca10i_pl 05/09 OSTRZEŻENIA Ze względów bezpieczeństwa system alarmowy powinien być instalowany przez wykwalifikowanych specjalistów.

Bardziej szczegółowo

Programowanie aplikacji WWW w technologii.net

Programowanie aplikacji WWW w technologii.net Programowanie aplikacji WWW w technologii.net Pracownia specjalistyczna, studia niestacjonarne, stopień I, rok 2014/2015 Każdy z projektów oceniany będzie również w zakresie wyglądu maksymalna ilość punktów:

Bardziej szczegółowo

Dz.U. 1992 Nr 97 poz. 486 UCHWAŁA. TRYBUNAŁU KONSTYTUCYJNEGO z dnia 9 grudnia 1992 r. (W. 13/91)

Dz.U. 1992 Nr 97 poz. 486 UCHWAŁA. TRYBUNAŁU KONSTYTUCYJNEGO z dnia 9 grudnia 1992 r. (W. 13/91) Kancelaria Sejmu s. 1/15 Dz.U. 1992 Nr 97 poz. 486 UCHWAŁA TRYBUNAŁU KONSTYTUCYJNEGO z dnia 9 grudnia 1992 r. (W. 13/91) w sprawie wykładni art. 5 ust. 1 ustawy z dnia 10 maja 1990 r. - Przepisy wprowadzające

Bardziej szczegółowo

Partition Manager 12 Home

Partition Manager 12 Home Paragon Software Poland Sp. z o.o ul. Śląska 22/21 42 217 Częstochowa, Polska Tel. +48 (34) 343 81 81 Internet: www.paragon software.pl Email: kontakt@paragon software.pl Partition Manager 12 Home Podręcznik

Bardziej szczegółowo

Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich właścicieli.

Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich właścicieli. Podręcznik dopuszczony do użytku szkolnego przez ministra właściwego do spraw oświaty i wychowania i wpisany do wykazu podręczników przeznaczonych do kształcenia ogólnego do nauczania informatyki na podstawie

Bardziej szczegółowo

Różne reprezentacje mapy feromonowej w problemie plecakowym

Różne reprezentacje mapy feromonowej w problemie plecakowym Wydział Informatyki i Nauki o Materiałach Jarosław Dąbrowski 193207 Praca magisterska Różne reprezentacje mapy feromonowej w problemie plecakowym Promotor: dr inż. Mariusz Boryczka Sosnowiec, 2008 Spis

Bardziej szczegółowo

Acronis i Acronis Secure Zone są zastrzeżonymi znakami towarowymi firmy Acronis, Inc.

Acronis i Acronis Secure Zone są zastrzeżonymi znakami towarowymi firmy Acronis, Inc. Copyright Acronis, Inc., 2000 2011. Wszelkie prawa zastrzeżone. Acronis i Acronis Secure Zone są zastrzeżonymi znakami towarowymi firmy Acronis, Inc. Acronis Compute with Confidence, Acronis Startup Recovery

Bardziej szczegółowo

RAPORT DLA DEPARTAMENTU ZARZĄDZANIA EUROPEJSKIM FUNDUSZEM SPOŁECZNYM

RAPORT DLA DEPARTAMENTU ZARZĄDZANIA EUROPEJSKIM FUNDUSZEM SPOŁECZNYM BADANIE PODSYTEMU INFORMATYCZNEGO EUROPEJSKIEGO FUNDUSZU SPOŁECZNEGO W CELU ZWIĘKSZENIA JEGO PRZYDATNOŚCI DO EWALUACJI SEKTOROWEGO PROGRAMU OPERACYJNEGO ROZWÓJ ZASOBÓW LUDZKICH RAPORT DLA DEPARTAMENTU

Bardziej szczegółowo

Dr Tomasz Rostkowski 2008 r.

Dr Tomasz Rostkowski 2008 r. WARTOŚCIOWANIE STANOWISK PRACY, A SYSTEM WYNAGRODZEŃ ZASADNICZYCH W KORPUSIE SŁUŻBY CYWILNEJ opracowanie wykonane na zamówienie Kancelarii Prezesa Rady Ministrów Dr Tomasz Rostkowski 2008 r. Spis treści

Bardziej szczegółowo

AutoCAD -- kurs podstawowy

AutoCAD -- kurs podstawowy AutoCAD -- kurs podstawowy I. Podstawy podstaw. 1. Lekcja 1 -- Podstawy podstaw Filozofia pracy z programem AutoCAD Wygląd głównego okna aplikacji Dopasowanie programu do własnych potrzeb zmiana wyglądu

Bardziej szczegółowo

USOS: System raportowania i analiz statystycznych

USOS: System raportowania i analiz statystycznych Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki Filip Grotkowski Nr albumu: 235984 USOS: System raportowania i analiz statystycznych Praca magisterska na kierunku INFORMATYKA Praca wykonana

Bardziej szczegółowo

Podręcznik użytkownika

Podręcznik użytkownika Podręcznik użytkownika 1 Streamsoft Podręcznik użytkownika programów z serii PCBIZNES (Ala, Ewa, Aga, Iza) jest stale aktualizowany. Najnowsze wersje podręcznika są dostępne na stronie internetowej produktu:

Bardziej szczegółowo

INSTRUKCJA OBSŁUGI PANELU ADMINISTRACYJNEGO SYSTEMU CMS

INSTRUKCJA OBSŁUGI PANELU ADMINISTRACYJNEGO SYSTEMU CMS INSTRUKCJA OBSŁUGI PANELU ADMINISTRACYJNEGO SYSTEMU CMS System CMS (Content Managment System) jest to aplikacja internetowa pozwalająca na łatwą aktualizację i rozbudowę strony internetowej. Osoba aktualizująca

Bardziej szczegółowo

Informatyczny System Zarządzania Budżetami Jednostek Samorządu Terytorialnego (BeSTi@)

Informatyczny System Zarządzania Budżetami Jednostek Samorządu Terytorialnego (BeSTi@) Informatyczny System Zarządzania Budżetami Jednostek Samorządu Terytorialnego (BeSTi@) System powstał w ramach projektu PHARE 2002/000-580.01.09 Zarządzanie Finansami Publicznymi Dokumentacja użytkownika

Bardziej szczegółowo

9. Protokoły sieciowe TCP/IP

9. Protokoły sieciowe TCP/IP 9. Protokoły sieciowe TCP/IP Urządzenia w sieci komputerowej komunikują się ze sobą i wymieniają informacje. Wymiana informacji musi przebiegać w ściśle określony sposób umożliwiający przesyłanie danych.

Bardziej szczegółowo

Reprezentacja dokumentów tekstowych w modelu przestrzeni wektorowej

Reprezentacja dokumentów tekstowych w modelu przestrzeni wektorowej POLITECHNIKA WARSZAWSKA WYDZIAŁ ELEKTRONIKI I TECHNIK INFORMACYJNYCH INSTYTUT INFORMATYKI Rok akademicki 2004/2005 PRACA DYPLOMOWA MAGISTERSKA Michał Kosmulski Reprezentacja dokumentów tekstowych w modelu

Bardziej szczegółowo

Pozycjonowanie stron dla początkujących!

Pozycjonowanie stron dla początkujących! Pozycjonowanie stron dla początkujących! SPIS TREŚCI Rozdział 1: Wprowadzenie Czym jest pozycjonowanie Podstawy pozycjonowania Rozdział 2: Podstawy pozycjonowania Dobór słów kluczowych i ocena konkurencji

Bardziej szczegółowo

Jak działa Internet i co z tego wynika dla prób jego regulacji?

Jak działa Internet i co z tego wynika dla prób jego regulacji? Michał Małyszko Jak działa Internet i co z tego wynika dla prób jego regulacji? 1. Wstęp Celem niniejszego dokumentu jest opisanie w przystępny i zrozumiały sposób zasad działania sieci Internet oraz proponowanych

Bardziej szczegółowo

Plan wyników i rozwoju oraz przegląd procesu oceny wyników na koniec roku

Plan wyników i rozwoju oraz przegląd procesu oceny wyników na koniec roku Plan wyników i rozwoju oraz przegląd procesu oceny wyników na koniec roku Przewodnik dla bezpośredniego przełożonego/ kierownika funkcyjnego Plan wyników i rozwoju (PLP) oraz procesy oceny wyników na koniec

Bardziej szczegółowo

JAK NIE ZOSTAĆ SPAMEREM

JAK NIE ZOSTAĆ SPAMEREM JAK NIE ZOSTAĆ SPAMEREM Czyli co robić, jak pisać i jak wysyłać e-maile by nie mieć na bakier z ustawą o świadczeniu usług drogą elektroniczną. Piotr Majewski, redaktor CzasNaE-Biznes () Majewski Business

Bardziej szczegółowo

Przewodnik metodyczny po serwisie praca-enter.pl

Przewodnik metodyczny po serwisie praca-enter.pl Przewodnik metodyczny po serwisie praca-enter.pl Warszawa 2013 Fundacja Inicjatyw Społeczno-Ekonomicznych 00-031 Warszawa, ul. Szpitalna 6 lok. 2/5 T: +48 (22) 537 02 00-02, F: +48 (22) 537 02 03 http:

Bardziej szczegółowo

Poradnik Badaj interaktywnie

Poradnik Badaj interaktywnie Poradnik Badaj interaktywnie Jak poprawnie przygotować ankietę internetową Poradnik Badaj interaktywnie Jak poprawnie przygotować ankietę internetową Wydawca: Autorzy: Bartłomiej Berbeć Karolina Ciećka

Bardziej szczegółowo