Kontext (informatika)
Author
Albert FloresV 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, mohou 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 mohou, 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). +more 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): 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
Související články
Přepnutí kontextu * Preempce (informatika) * Přerušení * Obsluha přerušení