СПОСОБ ПОСТРОЕНИЯ ДИНАМИЧЕСКИХ ГРАФОВ ВЫЗОВОВ ФУНКЦИЙ

1. Способ построения динамических графов вызовов функций, отличающийся
тем, что разбивают весь период наблюдения за работой программы на периоды выбора образцов, при этом для каждого периода выбора образцов определяют страницы памяти с кодом программы, которые были доступны приложению, определяют части кода программы, которые были доступны, на основании информации о доступных страницах памяти с кодом программы, определяют набор функций, которые расположены в доступных частях кода программы, строят возможные динамические графы вызовов функций, определяют правильные динамические графы вызовов функций, при этом удаляют ошибочные динамические графы вызовов функций из набора возможных динамических графов вызовов функций на основании анализа исходного кода, строят возможные динамические графы вызовов функций для всего периода наблюдения, при этом соединяют правильные динамические графы вызовов функций для периодов выбора образцов, определяют возможные динамические графы вызовов функций для всего периода наблюдения, при этом удаляют ошибочные динамические графы вызовов функций для всего периода наблюдения из набора возможных динамические графов вызовов функций для всего периода наблюдения на основании анализа исходного кода.
2. Способ по п.1, отличающийся тем, что объектом анализа является бинарный код.
3. Способ по п.1, отличающийся тем, что определяют страницы памяти с кодом программы, которые были доступны приложению за определенный период времени, при этом используют возможности операционной системы.
4. Способ по п.1, отличающийся тем, что строят динамические графы вызовов функций, при этом применяют генетический алгоритм.
5. Способ по п.1, отличающийся тем, что строят динамические графы вызовов функций, при этом генерируют последовательности из набора возможных вызванных функций.
6. Способ по п.1, отличающийся тем, что удаляют ошибочные динамические графы вызовов функций, при этом анализируют исходный код программы.
7. Способ по п.1, отличающийся тем, что удаляют ошибочные динамические графы вызовов функций, при этом анализируют бинарный код.