Kontrol akışı analizi - Control flow analysis

İçinde bilgisayar Bilimi, kontrol akışı analizi (CFA) bir statik kod analizi belirlemek için teknik kontrol akışı bir programın. Kontrol akışı şu şekilde ifade edilir: kontrol akış grafiği (CFG). İkisi için fonksiyonel programlama dilleri ve nesne yönelimli programlama dilleri, CFA terimi ve aşağıdaki gibi detaylandırmalar k-CFA, kontrol akışını hesaplayan belirli algoritmaları ifade eder.[şüpheli ]

Birçok zorunlu programlama dilleri, bir programın kontrol akışı, bir programın kaynak kodunda belirgindir.[şüpheli ] Sonuç olarak, prosedürler arası kontrol akışı analizi örtük olarak genellikle bir statik analiz bilgisayar programlarında işlev veya yöntem çağrılarının alıcı (lar) ını belirleme tekniği üst düzey programlama dili.[şüpheli ] Örneğin, bir programlama dilinde üst düzey işlevler sevmek Şema, bir işlev çağrısının hedefi açık olmayabilir: yalıtılmış ifadede

(lambda (f) (f x))

hangi prosedürün uygulandığı belli değil f başvurabilir. Olası hedefleri belirlemek için, bir kontrol akışı analizi, bu ifadenin nerede çağrılabileceğini ve hangi argümanı alabileceğini dikkate almalıdır.

Gibi teknikler soyut yorumlama, kısıt çözme, ve tip sistemler kontrol akışı analizi için kullanılabilir.[1][sayfa gerekli ]

Ayrıca bakınız

Referanslar

  1. ^ Nielson, Flemming; Nielson, Hanne Riis; Hankin, Chris (2005). Program Analizinin İlkeleri. Springer Science + Business Media.

Dış bağlantılar