Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

内部データのゼロ初期化を削除

説明

ブロック状態やブロック出力などの内部の作業構造体の初期化コードをゼロとして生成するかどうかを指定します。

カテゴリ: 最適化

設定

既定の設定: [コード インターフェイスのパッケージ化] パラメーターが [Nonreusable function] に設定されている場合、[内部データのゼロ初期化を削除] チェック ボックスはオン、コマンド ラインの ZeroInternalMemoryAtStartup の設定は 'off' になります。[コード インターフェイスのパッケージ化] パラメーターが [Reusable function] または [C++ Class] に設定されている場合、[内部データのゼロ初期化を削除] チェック ボックスはオフ、ZeroInternalMemoryAtStartup の設定は 'on' になります。

オン

内部の作業構造体をゼロに初期化するコードを生成しません。

グローバル データについては、起動時に規格準拠の C および C++ コンパイラでゼロに初期化されるため、このデータのゼロ初期化コードを生成コードに含める必要はありません。動的に割り当てられるデータやローカル変数については、必ずしも規格準拠のコンパイラでゼロに初期化されるとは限りません。[内部データのゼロ初期化を削除] パラメーターをオンのままにする場合は、モデルが次の条件を満たしていることを確認してください。

  • コンパイラが規格準拠でない場合、グローバル データがゼロに初期化されることを確認します。

  • [コード インターフェイスのパッケージ化][再利用可能な関数] または [C++ クラス] に設定する場合、データが静的に割り当てられていることを確認し、動的に割り当てられる場合はデータがゼロに初期化されることを確認します。

オフ

内部の作業構造体をゼロに初期化するコードを生成します。

[コード インターフェイスのパッケージ化] パラメーターが [C++ クラス] に設定され、モデルの初期化に動的メモリ割り当てを使用パラメーターが選択されたモデルでは、[内部データのゼロ初期化を削除] チェック ボックスはオフになり、ZeroInternalMemoryAtStartup'on' に設定されて読み取り専用になります。

[コード インターフェイスのパッケージ化] パラメーターを [再利用可能な関数] に設定し、Use dynamic memory allocation for model block instantiationパラメーターを選択すると、[内部データのゼロ初期化を削除] チェック ボックスはオフになり、ZeroInternalMemoryAtStartup'on' に設定されます。

メモ

ストレージ クラスがインポートされたスコープをもつデータは生成コードで初期化されません。

依存関係

  • このパラメーターは ERT ベースのターゲットの場合にのみ表示されます。

  • このパラメーターには、コード生成時に Embedded Coder® のライセンスが必要です。

コマンド ライン情報

パラメーター: ZeroInternalMemoryAtStartup
値: 'off' | 'on'
既定の設定: 'off'

メモ

コマンド ライン値は設定値の逆です。したがって、コマンド ラインの 'on' は設定セクションの "オフ" の説明に対応します。コマンド ラインの 'off' は設定セクションの "オン" の説明に対応します。

推奨設定

アプリケーション設定
デバッグ影響なし
トレーサビリティ影響なし
効率性オン (GUI)、off (コマンド ライン)、(実行、ROM)、影響なし (RAM)
安全対策推奨なし

関連するトピック