Linda, ADA a ostatní jazyky
Zkouškový pattern
Linda se objevuje jako práce s tuple space nad jednoduchou datovou strukturou, často seznamem. ADA se objevuje spíš jako krátká teorie: task, entry, rendezvous a accept.
Oficiální slidy
- Komunikace, str. 42 až str. 46 - ADA, rendezvous,
accept,selecta bounded buffer. - Komunikace, str. 49 až str. 52 - Linda tuple space a operace
out,in,rd,eval. - Komunikace, str. 53 až str. 55 - synchronizační primitiva, kanály a příklad se seznamem v Lindě.
Linda
Linda pracuje s tuple space.
Typické operace:
out(tuple): vložení n-tice.in(pattern): vyzvednutí odpovídající n-tice, blokuje.rd(pattern): přečtení odpovídající n-tice bez odebrání.eval(...): spuštění procesu / vyhodnocení.
Typické úlohy:
- operace nad spojovým seznamem;
- reverse/delete/search;
- koordinace procesů přes n-tice.
ADA
Zkouškově spíš okrajové. Držet se pojmů:
- task;
- entry;
- rendezvous;
- accept.
Vyřešené příklady z termínů
Linda: reverz seznamu
Zdroj: student-doc-digest
Zadání: Linda, reverz seznamu.
Řešení:
- Uzel seznamu reprezentuj n-ticí, například
(node, id, value, next). rdpoužij pro čtení bez odebrání,inpro destruktivní změnu vazby.- Reverz typicky přepíše odkazy
next; hlídej, aby současně neběžely dvě destruktivní změny stejné n-tice.
Linda: vyhledávání v lineárním seznamu
Zdroj: term-3-druhy-opravny
Zadání: Linda, vyhledávání v lineárním seznamu.
Řešení:
- Proces iteruje přes n-tice uzlů podle odkazu
next. - Pro čisté hledání používej
rd, aby se seznam nerozbil. inpoužij až u operací typu delete nebo update.
ADA: popsat a uvést příkazy
Zdroj: term-3-druhy-opravny
Zadání: ADA, popsat a uvést konkrétní příkazy.
Řešení:
- Základ je
task,entry, volání entry aaccept. - Rendezvous znamená, že volající i přijímající task se synchronizují na komunikačním bodě.
- Uveď, že
acceptmůže obsahovat tělo obsluhy požadavku.
Kde se to objevuje
Podle sjednocených termínových souborů v archivu:
- term-3-druhy-opravny
- term-3-druhy-opravny
- term-3-druhy-opravny
- term-2-prvni-opravny
- term-2-prvni-opravny
- term-1-radny-b
Chyby
- Zaměnit
rdain. - Zapomenout, že
inje destruktivní. - U rendezvous neuvažovat blokování obou stran do spárování.