Nios® V プロセッサー・ソフトウェア開発者ハンドブック

ID 743810
日付 7/08/2024
Public
ドキュメント目次

7.12.2.2. デフォルトの実装手順

HAL は、alt_main() 関数のデフォルト実装を提供しています。この関数は、次のステップを実行します。
  • alt_sys_init.c にある alt_irq_init() 関数を呼び出します。alt_irq_init() は、ハードウェア割り込みコントローラーを初期化します。 Nios® Vプロセッサー・ツール は各 HAL BSP に対してファイル alt_sys_init.c を作成します。
  • ALT_OS_INIT() を呼び出して、必要なオペレーティング・システムに固有の初期化を実行します。オペレーティング・システム (OS) スケジューラーを含まないシステムの場合、このマクロは効果がありません。
  • オペレーティング・システムで HAL を使用している場合は、HAL ファイルへのアクセスを制御する alt_fd_list_lock セマフォーを初期化します。
  • 割り込みを有効にします。
  • alt_sys_init.c. にある alt_sys_init() 関数を呼び出します。alt_sys_init() は、システム内のすべてのデバイスドライバーとソフトウェア・パッケージを初期化します。
  • 適切なデバイスを使用するように C 標準 I/O チャネル (stdinstdout、および stderr) をリダイレクトします。
  • _do_ctors() 関数を使用して、C++ グローバル・コンストラクターを呼び出します。
  • システムのシャットダウン時に呼び出される C++ グローバル・デストラクターを登録します。
  • main() を呼び出します。
  • exit() を呼び出し、main() のリターンコードを exit() の入力引数として渡します。

alt_main.c はこのデフォルトの実装を提供します。 Nios® Vプロセッサー・ツールalt_main.c を BSP ディレクトリーにコピーします。