インテルのみ表示可能 — GUID: dpf1642668286860
Ixiasoft
インテルのみ表示可能 — GUID: dpf1642668286860
Ixiasoft
7.12.1. ホステッド・アプリケーションとフリー・スタンディング・アプリケーション
ANSI C 標準では、ホストされたアプリケーションを、実行を開始するために main() を呼び出すアプリケーションとして定義します。main() の開始時に、ホストされたアプリケーションはランタイム環境を想定し、すべてのシステムサービスは初期化されており、すぐに使用することができます。これは、HAL 環境に当てはまります。 Nios® V プログラミングを初めて使用する場合、HAL のホスト環境を使用すると、システム内にどのようなデバイスが存在するか、または各デバイスを初期化する方法を考慮する必要がないため、より簡単に作業を進めることができます。HAL はシステム全体を初期化します。
ANSI C 標準では、自動初期化を回避する代替エントリーポイントも提供されており、 Nios® V プログラマーが必要なハードウェアを明示的に初期化することを前提としています。alt_main() 関数は独立した環境を提供し、システムの初期化を完全に制御できます。独立した環境では、プログラムで使用されるシステム機能を初期化する責任がプログラマーに課されます。たとえば、alt_main() が最初にキャラクター・モードのデバイスドライバーをインスタンス化し、stdout をデバイスにリダイレクトしない限り、printf() の呼び出しは自立環境では正しく機能しません。
コード・フットプリントを削減する方法の詳細については、エンベデッド・システムのコード・フットプリントの削減の章を参照してください。