Многозадачность

Многозадачные опции, точки входа, критические разделы, эксклюзивные задачи

Чтобы настроить верификацию нескольких задач или потоков, которые выполняются одновременно, используйте опции многозадачности. Polyspace® интерпретирует определенные семейства многозадачных функций. Если вы не используете эти функции, необходимо явным образом указать, какие функции в коде указывают на точки входа, циклические задачи или прерывания. Необходимо также задать механизмы защиты для общих переменных. Bug Finder использует эти спецификации, чтобы обнаружить гонки данных, тупики, двойные блокировки и другие проблемы параллелизма.

Опции анализа

External multitasking configurationВключите настройку многозадачных строений из определений внешних файлов
OIL files selection (-osek-multitasking)Настройте строение многозадачности из определения файла OIL
ARXML files selection (-autosar-multitasking)Настройте строение многозадачности из определений файлов ARXML
Configure multitasking manuallyДопустим, что код предназначен для многозадачности
Tasks (-entry-points)Задайте функции, которые служат задачами для вашего многозадачного приложения
Cyclic tasks (-cyclic-tasks)Задайте функции, которые представляют циклические задачи
Interrupts (-interrupts)Задайте функции, которые представляют непередаваемые прерывания
Disabling all interrupts (-routine-disable-interrupts -routine-enable-interrupts)Задайте стандартные программы, которые отключают и повторяют прерывания.
Critical section details (-critical-section-begin -critical-section-end)Задайте функции, которые начинают и заканчивают критические сечения
Temporally exclusive tasks (-temporal-exclusions-file)Задайте функции точки входа, которые не могут выполняться одновременно

Темы

Задайте опции анализа Polyspace

Задайте опции анализа Polyspace в пользовательском интерфейсе Polyspace, других IDE-s или скриптах.

Анализируйте многозадачные программы в Polyspace

Обнаружите гонки данных или взаимоблокировки или см. Комплексный анализ общего использования переменных.

Защиты для общих переменных в многозадачном коде

Защитите общие переменные с помощью критического раздела, временного исключения, приоритетов или отключения прерывания.

Связанная информация