..
Možemo definirati proces statičke analize izvornog koda kao postupak kojim se dijelovi su identificirani nesigurno kod bez stvarne izvršenje programa.
'S statička analiza može se izvoditi automatski, koji je, po vlastitom specifične alate korisne za podršku procesa testiranja. Promatrajte kako u fazi testiranja softvera, u cijelosti, je vrlo složen proces i obično obavlja programera koji se odluče specijalizirati u ovom području. Softverski alati posvećena "statička analiza koda na taj način pomoći smanjiti vrijeme i troškove, pod uvjetom da prvi nagovještaj o tome što dijelove koda da će biti potrebni kako bi provjerili više pažljivo.
Vrste pogrešaka otkriti instrumenata spominje se više i kontinuirano ažuriranje, razvoj poslovanja, u stvari, ove vrste softvera odlazi u veliki ritam za dugo vremena sada.
Važno je u tom smislu povijesne vrijednosti program kao Lint , objavljen u 1979, koji radi na Linux i posvećena programskom jeziku C . Lint je pravi orijentir za statička softverski kod provjere, ponekad identificiran kao "krpu poput alata" ili "vlakna poput alata."
Moderne statički analizatori su također u mogućnosti provjeriti kod dizajniran je da radi paralelno, pod uvjetom da konkretnih prijedloga za takve aplikacije.
U ovom članku, mi se fokusirati na ovu vrstu instrumenta, pokušava ponuditi kratki pregled mogućnosti u statičkim kod za programe paralelno jeziku C + + (najpopularniji i svestran u prirodi). Za početak, neka je ispitati generički softver i fleksibilan kao PC-Lint .
PC-Lint je dizajniran za pružanje optimalne performanse u analizi programa koji koriste POSIX niti , ali može se učinkovito koristiti u slučaju općenito. Ne želim reći da je analiza koju je softver u svakom pogledu automatski.
Čini se potrebno ručno odrediti funkcije koje program će se izvoditi paralelno (ili čak istovremeno), tako da se PC-Lint mogu nastaviti da "statička analiza pravičnosti (da da, automatski), samo u tim dijelovima. Da bi to postigli, morate koristiti opciju-uvijek o izvršenju PC-Lint komandne linije. Na primjer, izjavu:
krpom SEM (funkcija, konac)komunicira s PC-Lint je potrebno analizirati funkciju funkcioniranje, kao što će se izvoditi istovremeno. Sada ćete dobiti poruku o pogrešci u vezi s funkcije imajući na umu da morate nositi paralelno izvršavanje istih, a zatim ističe, na primjer, ako zajednička varijabla koristi ili promjene bez odgovarajuće definiranje kritične sekcije.
Bilo je u tom smislu, ako se međusobno isključivanje i sinkronizacija primitivaca implementiran pomoću POSIX niti tipičan formalizam, ili, na primjer, pthread_mutex_lock i pthread_mutex_unlock, nećete morati navesti ništa o tome iz naredbenog retka. Inače, smjernice će se koristiti:
-Sem (pristup, thread_lock) -Sem (release, thread_unlock)naznačiti da je pristup kritičnim dio je kroz funkciju naziva pristup i puštanje tog odjeljka koristi izdanje funkciju.
Ako je, statička analiza našeg koda, ali smo htjeli imati nešto više moćne alate i neovisno od PC-lint, VivaMP može biti dobar izbor.
| |
ASP i Access (Ebook)
Upravljanje bazom podataka MS Access s ASP. Na samo 29 €. |
| |
E-commerce sa ASP (Ebook)
ECommerce Košarica sa ASP. Samo 35 €. |
| |
Flash MX ActionScript i (naravno)
Postanite developer web stranice od 29 €. |