-osek-multitasking
)Настройте строение многозадачности из определения файла OIL
Эта опция недоступна для кода, сгенерированного из MATLAB® код или Simulink® модели.
Укажите файлы OIL, которые Polyspace® анализирует, чтобы настроить многозадачность строения вашего проекта OSEK.
Пользовательский интерфейс: На панели Configuration опция доступна на узле Multitasking. Смотрите Зависимости для других опций, которые вы также должны включить.
Командная строка: и файл опций Используйте опцию -osek-multitasking
. См. «Информация о командной строке».
Если ваш проект включает файлы OIL, Polyspace может проанализировать эти файлы, чтобы настроить задачи, прерывания, циклические задачи и критические разделы. Вы не должны настраивать их вручную.
Polyspace ищет и анализирует файлы OIL, чтобы настроить строение многозадачности.
auto
Ищите файлы OIL в исходном коде проекта и включайте папки, но не в их подпапки.
custom
Найдите файлы OIL в указанном пути и подпапках пути. Можно задать путь к файлам OIL или к папке, содержащей файлы.
Когда вы выбираете эту опцию, в вашем исходном коде Polyspace поддерживает следующие ключевые слова многозадачности OSEK:
TASK
DeclareTask
ActivateTask
DeclareResource
GetResource
ReleaseResource
ISR
DeclareEvent
DeclareAlarm
Polyspace анализирует файлы OIL, которые вы обеспечиваете TASK
, ISR
, RESOURCE
, и ALARM
определения. Анализ использует эти определения и поддерживаемые многозадачные ключевые слова для настройки задач, прерываний, циклических задач и критических разделов.
Пример: Анализируйте свой проект OSEK в многозадачном режиме
Чтобы увидеть, как Polyspace моделирует TASK
, ISR
, и RESOURCE
определения из файлов OIL, откройте Concurrency window из панели Dashboard.
Polyspace не настраивает многозадачное строение для вашего проекта OSEK.
Убедитесь, что вы объявляете все задачи при помощи DeclareTask
или TASK
ключевые слова перед передачей этих задач в качестве параметров функциям или макросам, которые ожидают задачи. Например, если вы передаете задачу foo
на ActivateTask
без использования DeclareTask(foo);
во-первых, Polyspace рассматривает foo задачи
undefined, что приводит к ошибке компиляции.
Анализ игнорирует TerminateTask()
объявления в исходном коде и учитывает, что последующий код выполняется.
Polyspace игнорирует синтаксические элементы ваших файлов OIL, которые не следуют синтаксису, заданному здесь.
Чтобы включить эту опцию в пользовательском интерфейсе продуктов для настольных ПК, сначала выберите опцию External multitasking configuration
.
Параметр:
-osek-multitasking |
Значение:
auto | custom = |
По умолчанию: Off |
Пример (Bug Finder):
Polyspace Bug Finder -sources source_path |
Пример (Code Prover):
Polyspace Code Prover -sources source_path |
Пример (Bug Finder Server):
polyspace-bug-finder-server -sources source_path |
Пример (Код Prover Server):
Полипространство -code-prover-server -sources source_path |