Удалите внутреннюю нулевую инициализацию данных

Описание

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

Оптимизация Category:

Настройки

Значение по умолчанию: Когда параметр Code interface packaging устанавливается на Nonreusable function, флажок Remove internal data zero initialization устанавливается и в командной строке, ZeroInternalMemoryAtStartup установлен в 'off'. Когда параметр Code interface packaging устанавливается на Reusable function или C++ Class, флажок Remove internal data zero initialization снимается и ZeroInternalMemoryAtStartup установлен в 'on'.

On

Не генерирует код, который инициализирует внутренние структуры работы, чтобы обнулить.

Во время запуска совместимый стандартами C и компиляторы C++ инициализируют глобальные данные, чтобы обнулить избавление от необходимости включать нулевой код инициализации для этих данных в сгенерированном коде. Стандарты совместимые компиляторы не обязательно инициализируют динамически выделенные данные и локальные переменные, чтобы обнулить. Прежде, чем оставить параметр Remove internal data zero initialization выбранным, подтвердите, что ваша модель отвечает следующим условиям:

  • Если ваш компилятор не совместим стандартами, подтвердите, что он инициализирует глобальные данные, чтобы обнулить.

  • Если вы устанавливаете Code Interface packaging на Reusable function или C++ class, подтвердите, что данные или статически выделяются или что динамически выделенные данные инициализируются, чтобы обнулить.

Off

Генерирует код, который инициализирует внутренние структуры работы, чтобы обнулить.

Флажок Remove internal data zero initialization снимается и ZeroInternalMemoryAtStartup установлен в 'on' и только для чтения для модели, в которой параметр Code interface packaging устанавливается на C++ class и динамическое выделение памяти Использования для параметра инициализации модели выбрано.

Если вы устанавливаете параметр Code interface packaging на Reusable function и выберите динамическое выделение памяти Использования для параметра инстанцирования блока модели, флажок Remove internal data zero initialization снимается и ZeroInternalMemoryAtStartup установлен в 'on'.

Примечание

Сгенерированный код не инициализирует данные, класс памяти которых импортировал осциллограф.

Зависимости

  • Этот параметр появляется только для основанных на ERT целей.

  • Этот параметр требует Embedded Coder® лицензия при генерации кода.

Информация о командной строке

Параметр: ZeroInternalMemoryAtStartup
Значение: 'off' | 'on'
Значение по умолчанию: 'off'

Примечание

Значения командной строки являются реверсом значений настроек. Поэтому 'on' в командной строке соответствует описанию “Прочь” в разделе настроек. 'off' в командной строке соответствует описанию “На” в разделе настроек.

Рекомендуемые настройки

ПриложениеУстановка
ОтладкаНикакой удар
ТрассируемостьНикакой удар
ЭффективностьНа (графический интерфейсе пользователя), off (командная строка), (выполнение, ROM), Никакой удар (RAM)
Меры безопасностиНикакая рекомендация

Похожие темы