Intel julkaisee ControlFlag 1.2:n, työkalun lähdekoodin poikkeavuuksien havaitsemiseen

Intel on julkaissut ControlFlag 1.2 -työkalusarjan, jonka avulla voit tunnistaa lähdekoodin virheet ja poikkeamat käyttämällä koneoppimisjärjestelmää, joka on koulutettu suurelle määrälle olemassa olevaa koodia. Toisin kuin perinteiset staattiset analysaattorit, ControlFlag ei ​​käytä valmiita sääntöjä, joissa on vaikea tarjota kaikkia mahdollisia vaihtoehtoja, vaan se perustuu tilastoihin erilaisten kielirakenteiden käytöstä useissa olemassa olevissa projekteissa. ControlFlag-koodi on kirjoitettu C++-kielellä ja se on avoimen lähdekoodin MIT-lisenssillä.

Uusi julkaisu on huomionarvoinen C++-kielen yleisiin koodimalleihin perustuvan poikkeamien havaitsemisen ja oppimisen täyden tuen toteuttamisesta. Aiemmissa versioissa samanlainen tuki tarjottiin C- ja PHP-kielille. Järjestelmä soveltuu tunnistamaan erilaisia ​​koodin ongelmia kirjoitusvirheiden ja tyyppivirheiden tunnistamiseen if-lauseiden poikkeavuuksien ja osoittimien puuttuvien NULL-tarkistusten tunnistamiseen. Järjestelmää koulutetaan rakentamalla tilastollinen malli olemassa olevasta avoimen lähdekoodin C-, C++- ja PHP-projektien koodijoukosta, joka on julkaistu GitHubissa ja vastaavissa julkisissa arkistoissa.

Koulutusvaiheessa järjestelmä määrittää tyypilliset mallit koodin rakenteiden rakentamiseksi ja rakentaa syntaktisen yhteyksien puun näiden mallien välille, mikä heijastaa koodin suorittamisen kulkua ohjelmassa. Tuloksena muodostuu referenssipäätöksentekopuu, joka yhdistää kaikkien analysoitujen lähdekoodien kehityskokemuksen. Tarkastelun kohteena oleva koodi käy läpi samanlaisen prosessin, jossa tunnistetaan kuvioita, joita verrataan viitepäätöspuuhun. Suuret erot naapurihaarojen kanssa osoittavat poikkeaman olemassaolosta tarkistettavassa kuviossa.

Intel julkaisee ControlFlag 1.2:n, työkalun lähdekoodin poikkeavuuksien havaitsemiseen


Lähde: opennet.ru

Lisää kommentti