-entry-points
)Задайте функции, которые служат задачами для вашего многозадачного приложения
Эта опция недоступна для кода, сгенерированного из MATLAB® код или Simulink® модели.
Задайте функции, которые служат задачами вашему коду. Если функция не существует, верификация предупреждает вас и продолжает верификацию.
Пользовательский интерфейс (только для настольных продуктов): В строении проекта опция доступна на узле Multitasking. Смотрите Зависимости для других опций, которые вы также должны включить.
Командная строка и файл опций: Используйте опцию -entry-points
. См. «Информация о командной строке».
Используйте эту опцию, когда ваш код предназначен для многозадачности.
Чтобы задать циклические задачи и прерывания, используйте опции Cyclic tasks (-cyclic-tasks)
и Interrupts (-interrupts)
. Используйте эту опцию для задания других задач.
Анализ Code Prover использует ваши спецификации, чтобы определить:
Является ли глобальная переменная общей.
Может ли возникнуть ошибка времени выполнения.
Для образца, если операция var++
происходит в теле циклической задачи, и вы не накладываете предел на var
операция может переполниться. Анализ обнаруживает возможное переполнение.
Анализ Bug Finder использует ваши спецификации для поиска дефектов параллелизма. Для получения дополнительной информации см. «Дефекты параллелизма».
По умолчанию нет
Введите имена функции или выберите из списка.
Щелкните, чтобы добавить поле и ввести имя функции.
Щелкните, чтобы отобразить функции в коде. Выберите функции из списка.
Чтобы включить эту опцию в пользовательском интерфейсе продуктов для настольных ПК, сначала выберите опцию Configure multitasking manually
.
В Code Prover функции, представляющие точки входа, должны иметь форму
void functionName (void)
Если функция func
принимает аргументы или возвращает значение, вы не можете использовать его непосредственно как точку входа. Как использовать func
в качестве точки входа:, вызов func
от обертки void
- void
и укажите оболочку как точку входа. Смотрите Настройку многозадачного анализа Polyspace вручную.
Если вы задаете функцию как задачу, необходимо предоставить ее определение. В противном случае верификация Code Prover останавливается с сообщением об ошибке:
task func_name must be a userdef function without parameters
Анализ Bug Finder продолжается, но не рассматривает функцию как точку входа.
Если вы запускаете файл по верификации файла в Code Prover, ваши опции многозадачности игнорируются. См. Verify files independently (-unit-by-unit)
.
Polyspace® многозадачный анализ принимает, что задача не может прервать себя.
Параметр:
-entry-points
|
По умолчанию нет |
Значение:
function1
|
Пример (Bug Finder):
Polyspace Bug Finder -sources file_name |
Пример (Code Prover):
Polyspace Code Prover -sources file_name |
Пример (Bug Finder Server): polyspace-bug-finder-server -sources |
Пример (Код Prover Server):
Полипространство -code-prover-server -sources file_name |