Можно экспортировать список глобальных переменных в коде в текстовый файл с разделителем вкладок или MATLAB® таблица. Текстовый файл или таблица содержат ту же информацию, что и панель Variable Access в Polyspace® пользовательский интерфейс.
Используя текстовый файл, можно:
Сгенерируйте графики или статистику о глобальных переменных. Например, вы можете увидеть процент общих глобальных переменных, которые не защищены от параллельного доступа.
Используйте информацию о области значений для создания внешних ограничений для глобальных переменных. Например, вы можете сообщить, что ваш код свободен от определенных ошибок времени выполнения только для извлечённой области значений глобальных переменных.
Можно также использовать область значений для определения внешних ограничений на последующие проверки или верификации других модулей. См. «Задание внешних ограничений».
Можно экспортировать результаты из пользовательского интерфейса или командной строки.
Пользовательский интерфейс | Командная строка |
---|---|
| Используйте соответствующие опции с Доступны следующие опции:
|
Вместо текстового файла можно считать результаты анализа Polyspace в таблицу MATLAB. Посмотрите variableAccess
.
Текстовый файл или таблица содержат информацию о результатах, доступную на панели Variable Access в пользовательском интерфейсе.
Например, предположим, что на Variable Access панели показана переменная SHR
с этой информацией.
Если вы экспортируете эту информацию в текстовый файл с разделителями табуляции и откроете файл в Excel®, вы видите ту же информацию. Некоторые сведения показаны ниже.
Переменные | Тип данных | Доступ | Значения | # Чтение | # Запись | Написано задачей | Чтение по задаче | Защита | Линия | Полковник | Файл | Функция | Расширение |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
SHR | int32 | Совокупность | 0 или 22 | 1 | 2 | server1 server2 | tregulate | Критический разрез | 30 | 11 | tasks1.c | c | |
SHR | Написать | 0 | 30 | 11 | tasks1.c | _init_globals () | c | ||||||
SHR | Написать | 22 | 81 | 8 | tasks1.c | Цервер () | c | ||||||
SHR | Читать | 0 или 22 | 53 | 14 | tasks1.c | initregulate () | c |
См. также раздел «Переменный доступ».
Ниже перечислены некоторые различия в представлении между панелью Variable Access и текстовым файлом (или таблицей MATLAB).
Столбец Access в текстовом файле указывает, отображается ли в строке информация о переменной (Aggregate) или информация об операциях с переменной (Write или Read).
В Function столбце текстового файла показаны функции, где переменная читается или записывается (и на панели Variable Access).
Нет строк, соответствующих операциям чтения и записи из задач (и на панели Variable Access). Эта информация доступна в Written by task и Read by task столбцах в текстовом файле (Tasks_Write
и Tasks_Read
столбцы в таблице MATLAB).
Цвета на панели Variable Access представлены через столбцы Unreachable и Protected:
Если доступ к общей переменной осуществляется в нескольких задачах без общей защиты, она окрашена в оранжевый цвет на панели Variable Access. В текстовом файле в Protected столбце показаны Unprotected.
Если доступ к общей переменной осуществляется в нескольких задачах, но с общей защитой, она окрашена в зеленый цвет на панели Variable Access. В текстовом файле в Protected столбце показаны Protected.
Если к общей переменной вообще нет доступа, она окрашена в серый цвет на Variable Access панели. В текстовом файле в Unreachable столбце показаны Is unreachable.
В столбце Potential в текстовом файле показаны операции чтения или записи с помощью указателей (или на панели Variable Access). Для операций с помощью указателей в столбце показаны Potential access.