このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
ルート レベル I/O のゼロ初期化を削除
ゼロに設定されたルート レベル Inport と Outport の初期化コードの生成を制御する
モデル コンフィギュレーション ペイン: [コード生成] / [最適化]
説明
[ルート レベル I/O のゼロ初期化を削除] パラメーターは、ゼロに設定されたルート レベル Inport と Outport の初期化コードを生成するかどうかを指定します。
このパラメーターは、以下にマッピングするルート レベル Inport と Outport には適用されません。
実行中または実行外の通信方法を使用するサービス インターフェイス。
カスタム ストレージ クラス デザイナーを使用して作成された TLC ベースのストレージ クラス。
設定
on
| off
- オン
ゼロに設定されたルート レベル Inport と Outport の初期化コードを生成しません。
起動時に、規格に準拠した C および C++ コンパイラは、グローバル データをゼロに初期化するため、このデータのゼロ初期化コードを生成コードに含める必要はありません。規格に準拠したコンパイラは、動的に割り当てられたデータおよびローカル変数を必ずしもゼロに初期化するわけではありません。[ルート レベル I/O のゼロ初期化を削除] パラメーターを選択したままにする前に、モデルが次の条件を満たすことを確認してください。
コンパイラが規格に準拠したものでない場合、グローバル データがゼロに初期化されることを確認します。
[コード インターフェイスのパッケージ化] パラメーターを
[再利用可能な関数]
に設定している場合、データが静的に割り当てられているか、動的に割り当てられたデータがゼロに初期化されることを確認します。
このパラメーターを選択した場合でも、生成コードはInitialize Functionブロックで指定したデータを初期化します。
- オフ
ルート レベル Inport と Outport の初期化コードを生成します。
生成コードは、データをInitialize Functionブロックで指定した場合を除き、インポートされたスコープをもつストレージ クラスのデータを初期化しません。生成コードは、Initialize Function ブロックに接続した Inport を初期化しません。生成コードは、実行外または実行中のデータ通信方法を使用するサービス インターフェイスにマッピングされるデータを初期化しません。
[コード インターフェイスのパッケージ化] モデル コンフィギュレーション パラメーターを [再利用できない関数]
に設定した場合、既定では、[ルート レベル I/O のゼロ初期化を削除] チェック ボックスがオンになります。コマンド ラインで、ZeroExternalMemoryAtStartup
は off
に設定されます。
[コード インターフェイスのパッケージ化] パラメーターを [再利用可能な関数]
に設定した場合、既定では、[ルート レベル I/O のゼロ初期化を削除] チェック ボックスがオフになります。コマンド ラインで、ZeroExternalMemoryAtStartup
は on
に設定されます。
[コード インターフェイスのパッケージ化] パラメーターを [C++ クラス]
に設定した場合、[ルート レベル I/O のゼロ初期化を削除] チェック ボックスがオンになり、変更できません。コマンド ラインで、ZeroExternalMemoryAtStartup
は off
に設定されます。
[コード インターフェイスのパッケージ化] パラメーターを Reusable function
に設定して、モデルの初期化に動的メモリ割り当てを使用パラメーターを選択した場合、[ルート レベル I/O のゼロ初期化を削除] チェック ボックスがオフになり、ZeroExternalMemoryAtStartup
が on
に設定されます。
推奨設定
アプリケーション | 設定 |
---|---|
デバッグ | 影響なし |
トレーサビリティ | 影響なし |
効率性 | オン (GUI)、off (コマンド ライン) (実行、ROM)、影響なし (RAM) |
安全対策 | 推奨なし |
プログラムでの使用
パラメーター: ZeroExternalMemoryAtStartup |
型: 文字ベクトル |
値: 'off' (UI 設定オン) | 'on' (UI 設定オフ) |
既定: 'off' |
バージョン履歴
R2007a で導入