Задайте, нужно ли сгенерировать код инициализации для внутренних рабочих структур, таких как состояния блока и выходы блоков, в нуле.
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'
.
Не генерирует код, который инициализирует внутренние рабочие структуры до нуля.
Во время запуска совместимые со стандартом компиляторы C и C++ инициализируют глобальные данные до нуля, устраняя необходимость включать нулевой код инициализации для этих данных в сгенерированный код. Совместимые со стандартами компиляторы не обязательно инициализируют динамически выделенные данные и локальные переменные в нуле. Прежде чем оставить выбранный параметр Remove internal data zero initialization, подтвердите, что ваша модель соответствует следующим условиям:
Если ваш компилятор не соответствует стандартам, подтвердите, что он инициализирует глобальные данные в нуле.
Если вы устанавливаете Code Interface packaging равной Reusable function
или C++ class
, подтвердите, что данные выделены статически или что динамически выделенные данные инициализированы в нуль.
Генерирует код, который инициализирует внутренние рабочие структуры до нуля.
Флажок 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'
в командной строке соответствует описанию «On» в разделе настроек.
Приложение | Настройка |
---|---|
Отладка | Никакого влияния |
Трассируемость | Никакого влияния |
Эффективность | On (GUI), off (командная строка), (выполнение, ПЗУ), без влияния (ОЗУ) |
Меры безопасности | Нет рекомендации |