..
Vi kan definere prosessen med statisk analyse av kildekoden som en prosedyre der deler er identifisert usikre kode uten at den faktiske gjennomføring av programmet.
'S statisk analyse kan utføres automatisk, det vil si av sine egne spesifikke verktøy nyttig å støtte testprosessen. Observere hvordan den fasen av software testing, i sin helhet, er en svært komplisert prosess, og vanligvis gjort av programmerere som velger å spesialisere seg i dette området. Programvareverktøy dedikert til 'statisk kode analyse og dermed bidra til å redusere tid og kostnader, og gir et første hint om hvilke deler av koden til å være nødvendig å kontrollere mer nøye.
De typer feil oppdaget av instrumentene nevnt er flere og kontinuerlig oppdatering, forretningsutvikling, faktisk går denne typen programvare til stor rytmen i lang tid nå.
Viktig i denne sammenheng den historiske verdien av et program som Lint , utgitt i 1979, som kjører på Linux og dedikert til programmeringsspråket C . Lint er en reell landemerke for statisk kode verifisering programvare, noen ganger identifisert som "lo-lignende verktøy", eller "lo som verktøy."
Den moderne statiske analysatorer er også i stand til å bekrefte koden laget for å kjøres parallelt, og gir konkrete forslag til slike søknader.
I denne artikkelen fokuserer vi på denne type instrument, prøver å gi en kortfattet oversikt over mulighetene i det statiske koden for programmer som kjører parallelt språk C + + (den mest populære og allsidige i naturen). Til å begynne, la oss undersøke en generisk programvare og fleksibel som en PC-Lint .
PC-Lint er utformet for å gi optimal ytelse i analysen av programmer som bruker POSIX tråder , men kan være effektivt brukes i en generisk tilfelle. Ønsker ikke å si at analysen gjort av programvaren er på alle måter automatisk.
Det synes nødvendig å manuelt spesifisere funksjoner som programmet vil kjøre i parallell (eller samtidig), slik at PC-Lint kan fortsette å "statisk analyse av rettferdighet (at ja, automatisk) bare i disse delene. For å oppnå dette, må du bruke opsjonen-alltid på gjennomføring av PC-Lint kommandolinjen. For eksempel uttalelsen:
lo-sem (funksjoner, tråd)kommuniserer med PC-Lint er nødvendig å analysere funksjonen funksjoner, som det vil kjøre samtidig. Du vil nå motta feilmeldinger relatert til funksjonen husk at du må også håndtere parallell gjennomføring av det samme, så peker ut, for eksempel hvis en delt variabel er brukt eller endret uten riktig definisjon av et kritisk punkt.
Det var i denne forbindelse, hvis gjensidig utelukkelse og synkronisering primitiver er implementert ved hjelp POSIX tråder typisk for formalisme, eller for eksempel, pthread_mutex_lock og pthread_mutex_unlock, trenger du ikke å angi noe om det fra kommandolinjen. Ellers vil retningslinjene bli brukt:
-Sem (tilgang, thread_lock) -Sem (release, thread_unlock)å indikere at tilgang til den kritiske delen er gjort gjennom en funksjon kalt tilgang og frigjøring av at seksjonen bruker utgivelsen funksjon.
Hvis du for en statisk analyse av koden vår, men vi ønsket å ha et litt kraftigere verktøy og uavhengig av PC-Lint, VivaMP kan være et godt valg.
| |
Flash MX og ActionScript (Course)
Bli en utvikler av nettsteder fra 29 €. |
| |
Java (Course)
OOP Programmering i Java Søn Fra 49 €. |
| |
Photoshop (Course)
Web grafikk og foto redigering med den populære Adobe Photoshop. Fra 49 €. |