Intel, mənbə kodundakı anomaliyaları aşkar etmək üçün alət olan ControlFlag 1.2-ni nəşr edir

Intel, böyük həcmdə mövcud kod üzərində təlim keçmiş maşın öyrənmə sistemindən istifadə edərək mənbə kodundakı səhvləri və anomaliyaları müəyyən etməyə imkan verən alətlər dəsti olan ControlFlag 1.2-nin buraxılışını nəşr etdi. Ənənəvi statik analizatorlardan fərqli olaraq ControlFlag bütün mümkün variantları təmin etmək çətin olan hazır qaydaları tətbiq etmir, lakin çoxlu sayda mövcud layihələrdə müxtəlif dil konstruksiyalarından istifadə statistikasına əsaslanır. ControlFlag kodu C++ dilində yazılmışdır və MIT lisenziyası altında açıq mənbəlidir.

Yeni buraxılış C++ dili üçün ümumi kod nümunələri əsasında anomaliyaların aşkarlanması və öyrənilməsi üçün tam dəstəyin həyata keçirilməsi ilə diqqət çəkir. Əvvəlki versiyalarda oxşar dəstək C və PHP dilləri üçün təmin edilmişdir. Sistem hərf və tip uyğunsuzluqlarını müəyyən etməkdən tutmuş if ifadələrindəki anomaliyaları və göstəricilərdə çatışmayan NULL yoxlamalarına qədər koddakı müxtəlif problemləri müəyyən etmək üçün uyğundur. Sistem, GitHub və oxşar ictimai depolarda dərc edilmiş C, C++ və PHP dillərində açıq mənbə layihələrinin mövcud kod massivinin statistik modelini qurmaqla öyrədilir.

Təlim mərhələsində sistem kodda strukturların qurulması üçün tipik nümunələri müəyyən edir və proqramda kodun icrası axınını əks etdirən bu nümunələr arasında əlaqələrin sintaktik ağacını qurur. Nəticədə, bütün təhlil edilən mənbə kodlarının inkişaf təcrübəsini birləşdirən istinad qərar vermə ağacı formalaşır. Nəzərdən keçirilən kod istinad qərar ağacına qarşı yoxlanılan nümunələri müəyyən etmək üçün oxşar prosesdən keçir. Qonşu filiallarla böyük uyğunsuzluqlar yoxlanılan nümunədə anomaliya varlığını göstərir.

Intel, mənbə kodundakı anomaliyaları aşkar etmək üçün alət olan ControlFlag 1.2-ni nəşr edir


Mənbə: opennet.ru

Добавить комментарий