Polyspace® Bug Finder™ идентифицирует ошибки времени выполнения, проблемы параллелизма, уязвимости системы обеспечения безопасности и другие дефекты во встроенном программном обеспечении C++ и C. Используя статический анализ, включая семантический анализ, Средство поиска Ошибки анализирует поток управления, поток данных и межпроцедурное поведение. Путем выделения дефектов, как только они обнаруживаются, Средство поиска Ошибки позволяет вам сортировать и исправить ошибки рано в процессе разработки.
Можно запустить Средство поиска Ошибки на коде C/C++ от пользовательского интерфейса Polyspace в поддерживаемой среде разработки (IDE), такой как скрипты использования или Eclipse™. См.:
Чтобы выполнить шаги в этом примере, скопируйте файлы от |
Дважды кликните исполняемый файл polyspace
в
. Здесь, polyspaceroot\polyspace\bin
является папкой установки Polyspace, например, polyspaceroot
C:\Program Files\Polyspace\R2019a
.
Если вы настраиваете ярлык Polyspace на вашем рабочем столе или меню Start в Windows®, дважды кликаете ярлык.
Чтобы запустить анализ, необходимо создать новый проект Polyspace. Проект Polyspace указывает, чтобы получить и включать папки в вашей файловой системе.
Слева от панели Start Page нажмите Start a new project. Также выберите File> New Project.
После того, как вы обеспечиваете название проекта на следующих экранах, добавьте свой источник и включайте папки (обе папки могут быть тем же самым). В этом примере добавьте путь к папке, в которую вы сохраненный источник и включают файлы.
После того, как вы закончите добавлять свой источник и включать папки, вы видите новый проект на панели Project Browser. Ваши исходные папки копируются в первый модуль в проекте. Можно щелкнуть правой кнопкой по проекту добавить больше папок позже. Если вы добавляете папки позже, необходимо явным образом скопировать их в модуль.
Можно изменить опции по умолчанию, сопоставленные с анализом Polyspace.
Кликните по узлу Configuration в своем модуле проекта. На панели Configuration измените опции по мере необходимости. Например, на узле Coding Rules & Code Metrics, выберите Check MISRA C:2004.
Для получения дополнительной информации смотрите подсказку на каждой опции. Щелкните по ссылке More help для контекстно-зависимой справки на опциях.
Чтобы запустить анализ, нажмите Run Bug Finder на главной панели инструментов. Если кнопка указывает на Программу автоматического доказательства Кода, кликните по стрелке около кнопки, чтобы переключиться на Средство поиска Ошибки.
Следуйте за прогрессом анализа окна Output Summary. После анализа результаты открываются автоматически.
См.:
Можно запустить Средство поиска Ошибки от Windows или командной строки Linux® с пакетом (.bat
) файлы или интерпретатор (.sh
) скрипты.
Чтобы запустить анализ Средства поиска Ошибки, используйте команду polyspace-bug-finder
.
Чтобы сохранить ввод полного пути в команду, добавьте путь
в переменную окружения polyspaceroot\polyspace\bin
Path
на вашей операционной системе. Здесь,
является папкой установки Polyspace, например, polyspaceroot
C:\Program Files\Polyspace\R2019a
.
Перейдите к папке, где вы сохранили файлы (использующий cd
). Введите следующее:
polyspace-bug-finder -sources numerical.c,dataflow.c -I . -results-dir .
.
указывает на текущую папку. Используемые опции:
-sources
: Задайте разделенные от запятой исходные файлы.
i:
Задайте путь, чтобы включать папку. Используйте флаг -I
каждый раз, когда вы хотите добавить, что отдельное включает папку.
-results-dir
: Задайте путь, где результаты Polyspace Bug Finder будут сохранены.
После анализа результаты сохранены в файле ps_results.psbf
. Можно открыть этот файл от пользовательского интерфейса Polyspace. Например, введите следующее:
polyspace ps_results.psbf
Вместо того, чтобы задать разделенные от запятой источники непосредственно на командной строке, можно перечислить источники в текстовом файле (один файл на строку). Используйте опцию -sources-list-file
, чтобы задать этот текстовый файл.
См.:
Если вы разрабатываете код в Eclipse или основанном на Eclipse IDE, можно запустить Программу автоматического доказательства Кода непосредственно от IDE.
После установки плагина Eclipse можно запустить Polyspace непосредственно на файлах в проектах Eclipse.
В панели Project Explorer в Eclipse выберите свой проект. Чтобы использовать Средство поиска Ошибки для анализа, выберите Polyspace> Bug Finder. Чтобы запустить анализ, выберите Polyspace> Run (Ctrl + R
).
После анализа результаты открываются автоматически в Eclipse.
Смотрите запущенный анализ Polyspace в Eclipse.
Прежде чем вы запустите Polyspace от MATLAB®, необходимо соединить Polyspace и установки MATLAB. Смотрите Интегрируют Polyspace с MATLAB и Simulink.
Чтобы запустить анализ, используйте объект polyspace.Project
. Объект имеет два свойства:
Configuration
: Задайте аналитические опции, такие как источники, включает, компилятор и папка результатов с помощью этого свойства.
Results
: После анализа считайте результаты анализа в таблицу MATLAB с помощью этого свойства.
Чтобы запустить анализ, используйте метод run
этого объекта.
Чтобы запустить Polyspace на файле в качестве примера numerical.c
в
, введите следующее в подсказке команды MATLAB.polyspaceroot\polyspace\examples\cxx\Bug_Finder_Examples\sources
proj = polyspace.Project % Configure analysis proj.Configuration.Sources = {fullfile(polyspaceroot, 'polyspace', ... 'examples', 'cxx', 'Bug_Finder_Example', 'sources', 'numerical.c')}; proj.Configuration.TargetCompiler.Compiler = 'gnu4.9'; proj.Configuration.EnvironmentSettings.IncludeFolders = {fullfile(polyspaceroot, ... 'polyspace', 'examples', 'cxx', 'Bug_Finder_Example', 'sources')} proj.Configuration.ResultsDir = fullfile(pwd,'results'); % Run analysis bfStatus = proj.run('bugFinder'); % Read results bfSummary = proj.Results.getSummary('defects'); bfResults = proj.Results.getResults('readable');
После анализа результаты сохранены в файле ps_results.psbf
. Можно открыть этот файл от пользовательского интерфейса Polyspace. Например, введите следующее:
resultsFile = fullfile(proj.Configuration.ResultsDir,'ps_results.psbf');
polyspaceBugFinder(resultsFile)
См.: