Kontext (informatika)

V informatice je kontext, také kontext úlohy, minimální množství údajů (dat) používaný úlohou (procesem nebo vláknem), které se musí uchovat – uložit, aby bylo možné zpracování úlohy přerušit a později pokračovat ze stejného místa, kde bylo zpracování úlohy přerušeno.

Koncept kontextu nabývá na významu v případě přerušitelných (preemptivních) úloh, kdy po přerušení procesor – také centrální procesorová jednotka (anglicky central processing unit; CPU) – uloží – také změní, neboli přepne – kontext, a pokračuje v obsluze rutiny obsluhy přerušení. Čím je tedy kontext menší, tím menší je také reakční čas – latence.

Kontextová data – údaje patřící do kontextu úlohy, můžou být uložena v registrech procesoru, v paměti RAM používané úlohou, nebo v řídicích registrech používaných některými operačními systémy pro správu (řízení) úlohy, viz Unix.

Datové úložiště (soubory používané úlohou) se v případě přepnutí (změny) kontextu úlohy za její kontextová data nepovažují, přestože se pro některé případy ukládat můžou, jako je tomu v případě použití tzv. kontrolního bodu (anglicky checkpointing).

Typy kontextu

V počítačových jazycích jako je C# existuje koncept tzv. zabezpečného kontextu (anglicky safe/secure context). Například, je-li potřeba mít uvnitř struktury pole, lze ho do ní od verze 2.0 přidat, ale pouze v tzv. nezabezpečném kontextu (anglicky unsafe/unsecure context):[1]

struct ParameterRepresentation
{
    char target;
    char taskStart;
    char taskType;
    fixed byte traceValues[m_MAX_BYTES];
};

Klíčové slovo fixed zabraňuje tomu, aby garbage collector tuto proměnnou přemístil. Přístup k poli je podobný jako v C++, tedy pomocí aritmetiky ukazatelů, také ukazatelová aritmetika (anglicky pointer arithmetic), kdy lze k jednotlivým prvkům daného pole přistupovat přes jeho indexy.

Odkazy

Reference

V tomto článku byl použit překlad textu z článku Context (computing) na anglické Wikipedii.

  1. C# Programming/Classes - Wikibooks, open books for an open world. en.wikibooks.org [online]. [cit. 2021-12-19]. Dostupné online. (anglicky)

Související články

Externí odkazy

  • Context [online]. S-Cube: European Network of Excellence [cit. 2021-12-19]. Dostupné online.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.