..


Sponzorované odkazy

Statické kód v C + +

Článok napísal Damian Verde
Strana 1 z 2

Môžeme definovať proces statickú analýzu zdrojového kódu ako postup, ktorý umožňuje identifikovať časti nebezpečného kódu, bez skutočného vyhotovenia tohto programu.

"Statické analýzy môže byť vykonaná automaticky, to znamená, že jeho vlastné špecifické nástroje užitočné pre podporu procesu testovania. Pozorujte, ako sa testovacie fázy tohto softvéru, ako celok, je veľmi zložitý proces a typicky hotové programátorov, ktorí sa rozhodnú sa špecializovať v tejto oblasti. Softvérové ​​nástroje určené pre "statickú analýzu kódu a tým prispieť k zníženiu času a nákladov tým, že prvý náznak toho, čo časti kódu je potrebné kontrolovať starostlivejšie.

Typy chýb zistených nástroje uvedené sú početné a neustáleho dopĺňania, takýto vývoj softvéru podnikania, pokračuje vo veľkej rýchlosti na dlhú dobu.

Dôležité v tomto ohľade historickú hodnotu programu ako Lint , vydané v roku 1979, ktorý beží na Linuxe a sú určené na programovací jazyk C . Lint je skutočným medzníkom pre statické softvérového kódu overenie, niekedy identifikoval ako "mäkkú ako nástroj", alebo "vlákna ako nástroja."

Moderné statické analyzátory sú tiež schopní overiť kód navrhnutý tak, aby paralelne, poskytuje konkrétne návrhy pre tieto aplikácie.

V nasledujúcom článku sa zameriavame na tento typ prístroja, sa snaží ponúknuť stručný prehľad možností statické kód programy bežia paralelne jazyk C + + (z najpopulárnejších a univerzálne v prírode). Ak chcete začať, budeme skúmať všeobecné softvér a flexibilné ako PC-Lint .

PC-Lint

PC-Lint je určený pre optimálny výkon pri analýze programy, ktoré používajú POSIX vlákna , ale možno efektívne využiť v všeobecný prípad. Nemožno povedať, že analýzy, ktoré software je plne automatické a všetkých.

Sa zdá byť nevyhnutné ručne zadať funkcie, ktoré program pobeží paralelne (alebo aj konkurencia), takže PC-Lint môže pokračovať do "statickej analýzy spravodlivosti (to znamená, automatické) práve v týchto sekciách. Na dosiahnutie tohto cieľa, je potrebné použiť voľbu, vždy v prevedení PC-Lint príkazového riadku. Napríklad tvrdenie:

 



 hladkým sem (Func, závit)

 
komunikuje s PC-Lint, je potrebné analyzovať funkciu Func, ako bude prebiehať súčasne. Teraz sa zobrazujú chybové správy vzťahujúce sa k tejto funkcii s vedomím, že je potrebné spracovať aj paralelný prevedenie rovnaké, takže, ktoré napríklad uvádzajú, v prípade zdieľanej premennej sa používa alebo zmenená bez riadneho vymedzenie kritickej sekcie.

To bolo v tomto ohľade, ak je vzájomné vylúčenie a synchronizačný primitíva sú implementované pomocou formalizmu typické POSIX, alebo napríklad, pthread_mutex_lock a pthread_mutex_unlock, nebudete musieť zadať niečo z príkazového riadku. V opačnom prípade by mal byť hlavné smery:






 -SEM (prístup, thread_lock)







 -SEM (uvoľnenie, thread_unlock)



uviesť, že prístup do kritickej sekcie sa vykonáva cez funkciu nazvanú prístup a uvoľnenie tejto časti je pomocou funkcie uvoľneniu.

Ak sa pre statické analýzy nášho kódu, ale chceli sme mať o niečo silnejšie nástroje a nezávisle na PC-Lint, VivaMP by mohla byť dobrou voľbou.

V rovnakej kategórii ...
E-Learning
ASP.NET (kurz) ASP.NET (kurz)
Celý kurz pre tvorbu webových aplikácií od 49 €.
Flash MX (kurz) Flash MX (kurz)
Staňte sa stránky Web Designer od 29 €.
Linux (kurz) Linux (kurz)
Kompletný sprievodca pre open-source systém. Od 49 €.
Sponzorované odkazy