OldComp.cz

Komunitní diskuzní fórum pro fanoušky historických počítačů


Právě je 28.03.2024, 16:38

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvek: 1 ] 
Autor Zpráva
 Předmět příspěvku: Interaktivní paralelní pohádka
PříspěvekNapsal: 19.11.2018, 13:22 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 08.07.2013, 00:28
Příspěvky: 1554
Has thanked: 485 times
Been thanked: 634 times
Škola hrou, tak by se dal nazvat interaktivní kurz paralelního programování, jehož úkoly jsou syntakticky napsány v C#, ale pochopí je i javista, delphista nebo céčkař. Na rozdíl od ostatních kurzů není cílem napsat funkční kousek kódu, ale dokázat, že stávající kousek je napsán děravě a existuje aspoň jedna konstelace, při které dojde k uvíznuzí, vstoupení dvou vláken do kritické sekce nebo jakékoliv jiné botě. Jak? Zahrajete si na mocný plánovač (scheduler) a pokusíte se tu botu najít!

Začíná se od primitivních úkolů a postupuje ke složitejším, sofistikovanějším konceptům synchronizace. Např. úvodní druhá cvičná úloha "Non-Atomic Instructions" má za cíl jednoduše nechat obě vlákna synchronně vstoupit do kritické sekce, pěkně jedno po druhém, pokud víme, že proměnná a=0.

Kód:
Thread 0                          Thread 0
--------                          --------
a = a + 1;                        a = a + 1;               // neatomická operace ...
( temp = a + 1;                   ( temp = a + 1;          // ... a její dvě atomické instrukce
  a = temp; )                       a = temp; )
if (a == 1) {                     if (a == 1) {
  critical_section();               critical_section();    // obě vlákna musí synchronně projít kritickou sekcí
}                                 }


A proč pohádka? Musíte porazit zlého Paralelního čaroděje (zlejšího než čaroděj Zaks...), sídlícího v Deadlockovém císařství, jehož brány se právě otevřely a poslušní čarodějovi služebníci se na vás řítí!

Sync a enjoy :-)

_________________
より良い競争相手からソフトウェアを購入する (。◕‿‿◕。)
Ďábel se skrývá v detailu (staré technické rčení)


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvek: 1 ] 

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 4 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
cron
Založeno na phpBB® Forum Software © phpBB Group
Český překlad – phpBB.cz