Intel бастапқы кодтағы аномалияларды анықтау құралы болып табылатын ControlFlag 1.2 нұсқасын шығарады

Intel ControlFlag 1.2 шығарылымын шығарды, ол бар кодтың үлкен көлеміне үйретілген машиналық оқыту жүйесін пайдалана отырып, бастапқы кодтағы қателер мен ауытқуларды анықтауға мүмкіндік беретін құралдар жинағы. Дәстүрлі статикалық анализаторлардан айырмашылығы, ControlFlag дайын ережелерді қолданбайды, онда барлық мүмкін нұсқаларды қамтамасыз ету қиын, бірақ бар жобалардың үлкен санында әртүрлі тілдік құрылымдарды пайдалану статистикасына негізделген. ControlFlag коды C++ тілінде жазылған және MIT лицензиясы бойынша ашық көзі болып табылады.

Жаңа шығарылым аномалияларды анықтауға және C++ тіліне арналған жалпы код үлгілеріне негізделген оқуға толық қолдау көрсетуді жүзеге асыруымен ерекшеленеді. Алдыңғы нұсқаларда C және PHP тілдеріне ұқсас қолдау көрсетілді. Жүйе қателер мен түр сәйкессіздіктерін анықтаудан бастап, if мәлімдемелеріндегі ауытқуларды және көрсеткіштердегі NULL тексерулерінің жоқтығын анықтауға дейін кодтағы мәселелердің әртүрлі түрлерін анықтауға жарамды. Жүйе GitHub және ұқсас жалпыға қолжетімді репозиторийлерде жарияланған C, C++ және PHP тілдеріндегі ашық бастапқы жобалардың қолданыстағы код массивінің статистикалық моделін құру арқылы оқытылады.

Жаттығу сатысында жүйе кодта құрылымдарды құрудың типтік үлгілерін анықтайды және бағдарламада кодтың орындалу ағынын көрсететін осы үлгілер арасындағы байланыстардың синтаксистік ағашын құрастырады. Нәтижесінде барлық талданатын бастапқы кодтарды әзірлеу тәжірибесін біріктіретін анықтамалық шешім қабылдау ағашы қалыптасады. Қаралып отырған код анықтамалық шешім ағашымен тексерілетін үлгілерді анықтаудың ұқсас процесінен өтеді. Көршілес тармақтармен үлкен сәйкессіздіктер тексерілетін үлгіде аномалия бар екенін көрсетеді.

Intel бастапқы кодтағы аномалияларды анықтау құралы болып табылатын ControlFlag 1.2 нұсқасын шығарады


Ақпарат көзі: opennet.ru

пікір қалдыру