この章と、デバイスドライバのデバッグ、テスト、およびチューニングおよび推奨されるコーディング方法の 2 つの章では、デバイスドライバの開発について詳しく説明します。
デバイスドライバを構築するには、次の手順に従います。
新しいコードを記述、コンパイル、リンクします。
ファイルの命名規則については、ドライバコードの配置を参照してください。C コンパイラを使用してドライバをコンパイルします。ld(1) を使用してドライバをリンクします。ドライバのコンパイルとリンクとモジュールの依存関係を参照してください。
必要なハードウェア構成ファイルを作成します。
デバイスに固有の、xx .conf という名前のハードウェア構成ファイルを作成します (xx にはデバイスの接頭辞が入ります)。このファイルはdriver.conf(4) ファイルを更新するために使用されます。ハードウェア構成ファイルの記述を参照してください。擬似デバイスドライバの場合は、pseudo(4) ファイルを作成します。
適切なモジュールディレクトリにドライバをコピーします。
モジュールディレクトリへのドライバのコピーを参照してください。
add_drv(1M) を使用してデバイスドライバをインストールします。
add_drv を使用したドライバのインストールを参照してください。update_drv(1M) コマンドを使用して、ドライバに変更を加えます。ドライバ情報の更新を参照してください。
ドライバをロードします。
デバイスにアクセスすることでドライバを自動的にロードできます。ドライバのロードとアンロードを参照してください。ドライバはmodload(1M) コマンドを使用してもロードできます。modload コマンドはモジュール内のどのルーチンも実行しないので、テストの際に役立ちます。テストモジュールのロードとアンロードを参照してください。
ドライバをテストします。
ドライバは次の領域で厳しくテストする必要があります。
ドライバ固有のその他のテストについては、特定の種類のドライバのテストを参照してください。
必要に応じてドライバを削除します。
rem_drv(1M) コマンドを使用してデバイスドライバを削除します。ドライバの削除を参照してください。