-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!news.supermedia.pl!news.nask.pl!news.nask.org.pl!news.internetia.pl!no
t-for-mail
From: Michoo <m...@v...pl>
Newsgroups: pl.comp.programming
Subject: Re: pytanie z mutexów
Date: Mon, 01 Jul 2013 00:26:42 +0200
Organization: Netia S.A.
Lines: 53
Message-ID: <kqqbud$j5h$1@mx1.internetia.pl>
References: <5...@g...com>
<51c56394$0$28103$c3e8da3$91613603@news.astraweb.com>
<f...@4...com>
<kq70gf$ngh$1@mx1.internetia.pl>
<3...@4...com>
<kq7g4r$a05$1@mx1.internetia.pl>
<f...@4...com>
<kqi854$v85$1@mx1.internetia.pl>
<u...@4...com>
<kqk43i$sfo$1@mx1.internetia.pl>
<a...@4...com>
NNTP-Posting-Host: 83.238.197.12
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: mx1.internetia.pl 1372631821 19633 83.238.197.12 (30 Jun 2013 22:37:01 GMT)
X-Complaints-To: a...@i...pl
NNTP-Posting-Date: Sun, 30 Jun 2013 22:37:01 +0000 (UTC)
In-Reply-To: <a...@4...com>
X-Tech-Contact: u...@i...pl
User-Agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:10.0.11) Gecko/20121123
Icedove/10.0.11
X-Server-Info: http://www.internetia.pl/
Xref: news-archive.icm.edu.pl pl.comp.programming:203920
[ ukryj nagłówki ]On 28.06.2013 22:12, A.L. wrote:
> On Fri, 28 Jun 2013 15:36:11 +0200, Michoo<m...@v...pl> wrote:
>>> P.S. Zadam to samo zadanko co kiedys: procesy a, b, c, d, e, f
>>>
>>> Wzajemne wykluczanie: (a,c), (c,f), (a,b), (b,e), (b,d), (c,d), (e,f)
>>>
>>> Zaprojeltowac rozwiazanie bez deadlocku i starvation free
>>
>> Ale już Ci na nie odpowiadałem:
>> - tworzysz 6 muteksów (A-F)
>> - sporządzasz dla każdego procesu listę z którymi się wyklucza
>> - sortujesz te listy w kolejności a-f
>>
>> Każdy proces wchodząc do sekcji krytycznej pobiera potrzebne mu blokady
>> w kolejności A-F. Rozwiązuje to problem wzajemnego wykluczania([*]).
>> Problem zagłodzenia nie wystąpi na pewno gdy muteksy budzą w kolejności
>> FIFO, przy braku tej gwarancji do zagłodzenia może dojść[**] więc
>> najlepiej chyba ją zapewnić przez kombinację mutex+lista+condition
>> variable (dopóki !pierwszy na liście).
>>
>>
>> [*] Czyim imieniem nazywamy ten algorytm - nie pamiętam. Jest to daleka
>> wariacja Lamporta.
>> [**] Choćby a i b "wymieniające się" muteksem A mogą zagłodzić c.
>
> Niezupelnie o to chodzi, bo wejscie w proces a powinno blokowac
> procesy b i c ale nie powinno blokowac procesow d, e, f
Nie znam (a przynajmniej nie przypominam sobie) innego "standardowego"
algorytmu rozwiązującego ten problem w sposób przejrzysty a jednocześnie
optymalny pod względem wydajnościowym.
Jakbym miał to zrealizować i powyższe rozwiązanie byłoby
niewystarczające zrobił bym to za pomocą monitora z porównaniem maski
aktualnie działających procesów z wymaganą maską jako warunkiem.
Kwestie zagłodzenia w takim wypadku trzeba rozwiązywać osobno już
zależnie od tego co rozumiemy przez "zagłodzenie"[*] i jakie są schematy
współpracy między wątkami.
Być może statyczny przydział, być może wstrzymywanie procesów które
wybijają się poza zakładany histogram - za mało danych aby odpowiedzieć.
[*] Czy mamy ograniczenia typu "minimum 1 wywołanie na k jednostek
czasu", czy raczej "od a1 do a2 % czasu wykonania w k jednostkach", czy
też kombinację z ewentualnymi dodatkowymi warunkami. Ogólnie wchodzimy
opuszczamy już tutaj problem synchronizacji a wchodzimy w sferę
szeregowania zadań.
--
Pozdrawiam
Michoo
Następne wpisy z tego wątku
- 01.07.13 01:47 Edek
- 01.07.13 02:31 A.L.
- 01.07.13 11:32 Michoo
- 01.07.13 12:05 Michoo
- 01.07.13 13:02 Edek
- 01.07.13 13:54 Edek
- 01.07.13 14:14 Edek
- 01.07.13 15:10 Edek
- 01.07.13 15:53 A.L.
- 01.07.13 18:24 Michoo
- 01.07.13 18:30 Michoo
- 01.07.13 18:36 Michoo
- 01.07.13 19:08 Edek
- 01.07.13 21:47 Edek
- 01.07.13 22:01 Edek
Najnowsze wątki z tej grupy
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
Najnowsze wątki
- 2025-05-19 Warszawa => Spedytor Międzynarodowy <=
- 2025-05-19 Lublin => Programista Delphi <=
- 2025-05-19 Szczecin => Key Account Manager IT <=
- 2025-05-19 Wrocław => Controlling systems Consultant <=
- 2025-05-19 Wrocław => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-05-19 Żerniki => Dyspozytor Międzynarodowy <=
- 2025-05-19 komedia pomyłek kjm
- 2025-05-18 Jak wyborca POWINIEN zareagować na wydanie karty do głosowania bez pieczęci komisji?
- 2025-05-18 Kto tak pięknie gra ?
- 2025-05-18 "Dobre obyczaje"? WTF?!
- 2025-05-18 Zgodnie z prawem, 11-letnia Patrycja może być przesłuchiwana jedynie w obecności matki, a nie psycholoszki
- 2025-05-18 MMSy
- 2025-05-18 Wiceminister "sprawiedliwości" A. Myrcha złamał ciszę wyborczą [rzepa]
- 2025-05-17 Głosowanie na prezydenta mDowód
- 2025-05-17 Karol i Patrycja - a może wielka miłość jak Romeo i Julia