Analýza toku řízení - Control flow analysis

V počítačové vědě je analýza toku řízení ( CFA ) technikou analýzy statického kódu pro určování toku řízení programu. Regulační tok je vyjádřen jako graf regulačního toku (CFG). U funkčních programovacích jazyků i objektově orientovaných programovacích jazyků se termín CFA a zpracování typu k- CFA odkazují na konkrétní algoritmy, které počítají tok řízení.

U mnoha imperativních programovacích jazyků je tok řízení programu ve zdrojovém kódu programu explicitní. Výsledkem je, že meziprocedurální analýza toku řízení implicitně obvykle odkazuje na techniku statické analýzy pro určování přijímače volání funkcí nebo metod v počítačových programech napsaných v programovacím jazyce vyššího řádu . Například v programovacím jazyce s funkcemi vyššího řádu, jako je Scheme , nemusí být cíl volání funkce explicitní: v izolovaném výrazu

(lambda (f) (f x))

není jasné, na který postup se f může odkazovat. Analýza toku řízení musí vzít v úvahu, kde lze tento výraz vyvolat a jaký argument může obdržet, aby určil možné cíle.

Pro analýzu řídicího toku lze použít techniky, jako je abstraktní interpretace , řešení omezení a systémy typů .

Viz také

Reference

externí odkazy