Analyse af flowflow - Control flow analysis

I datalogi er kontrol-flow analyse ( CFA ) en statisk-kode-analyse teknik til bestemmelse af styringsflowet for et program. Kontrolstrømmen udtrykkes som en kontrolflowgraf (CFG). For både funktionelle programmeringssprog og objektorienterede programmeringssprog henviser udtrykket CFA og udførelser såsom k- CFA til specifikke algoritmer, der beregner kontrolflow.

For mange vigtige programmeringssprog er kontrolprogrammet for et program eksplicit i et programs kildekode. Som et resultat henviser interprocedurel kontrol-flow-analyse implicit normalt til en statisk analyseteknik til bestemmelse af modtageren (e) af funktions- eller metodeopkald i computerprogrammer skrevet i et højere ordens programmeringssprog . For eksempel i et programmeringssprog med højere ordensfunktioner som skema er målet for et funktionsopkald muligvis ikke eksplicit: i det isolerede udtryk

(lambda (f) (f x))

det er uklart, hvilken procedure der f kan henvise til. En kontrol-flow-analyse skal overveje, hvor dette udtryk kan påberåbes, og hvilket argument det kan modtage for at bestemme de mulige mål.

Teknikker som abstrakt fortolkning , begrænsningsløsning og typesystemer kan bruges til kontrol-flow-analyse.

Se også

Referencer

eksterne links