JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
デバイスドライバの記述     Oracle Solaris 10 8/11 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

パート I Solaris プラットフォーム用デバイスドライバの設計

1.  Solaris デバイスドライバの概要

2.  Solaris カーネルとデバイスツリー

3.  マルチスレッド

4.  プロパティー

5.  イベントの管理とタスクのキュー

6.  ドライバの自動設定

7.  デバイスアクセス: プログラム式入出力

8.  割り込みハンドラ

9.  ダイレクトメモリーアクセス (DMA)

10.  デバイスメモリーおよびカーネルメモリーのマッピング

11.  デバイスコンテキスト管理

12.  電源管理

13.  Solaris ドライバの強化

14.  階層化ドライバインタフェース (LDI)

パート II 特定の種類のデバイスドライバの設計

15.  文字デバイスのドライバ

16.  ブロックデバイスのドライバ

17.  SCSI ターゲットドライバ

18.  SCSI ホストバスアダプタドライバ

19.  ネットワークデバイスのドライバ

20.  USB ドライバ

パート III デバイスドライバの構築

21.  ドライバのコンパイル、ロード、パッケージ化、およびテスト

22.  デバイスドライバのデバッグ、テスト、およびチューニング

23.  推奨されるコーティング方法

パート IV 付録

A.  ハードウェアの概要

B.  Solaris DDI/DKI サービスの概要

C.  64 ビットデバイスドライバの準備

D.  コンソールフレームバッファードライバ

索引

はじめに

デバイスドライバの記述』では、Solaris オペレーティングシステム (Solaris OS) のための文字指向のデバイス、ブロック指向のデバイス、ネットワークデバイス、SCSI ターゲットと HBA デバイス、および USB デバイスのドライバの開発について説明します。このマニュアルでは、Solaris OS DDI/DKI (デバイスドライバインタフェース、ドライバカーネルインタフェース) に準拠するすべてのアーキテクチャーのためのマルチスレッド化された再入可能なデバイスドライバを開発する方法について説明します。エンディアンの種類やデータの順序付けなどのプラットフォーム固有の問題を気にすることなくドライバを記述できる、共通ドライバプログラミングアプローチについて説明します。

その他のトピックとして、Solaris ドライバの強化、電源管理、ドライバの自動設定、プログラム式入出力、ダイレクトメモリーアクセス (DMA)、デバイスコンテキスト管理、ドライバのコンパイル、インストール、およびテスト、ドライバのデバッグ、Solaris ドライバの 64 ビット環境への移植などが含まれています。


注 - このリリースでは、SPARC および x86 系列のプロセッサアーキテクチャー (UltraSPARC、SPARC64、AMD64、Pentium、Xeon EM64T) を使用するシステムをサポートします。サポートされるシステムについては、Solaris オペレーティングシステムの Hardware Compatibility List (http://www.sun.com/bigadmin/hcl) を参照してください。本書では、プラットフォームにより実装が異なる場合は、それを特記します。


対象読者

このマニュアルは UNIX デバイスドライバに精通している UNIX プログラマ向けに書かれています。概要情報も記載されていますが、本書はデバイスドライバに関する一般的な学習教材ではありせん。


注 - Solaris オペレーティングシステム (Solaris OS) は SPARC アーキテクチャーと x86 アーキテクチャーの両方で動作します。また、Solaris OS は 64 ビットおよび 32 ビットのアドレス空間で動作します。このマニュアルの情報は、特に明記されていないかぎり、すべてのプラットフォームとアドレス空間にあてはまります。


内容の紹介

このマニュアルは次の章で構成されています。

関連マニュアルと論文

デバイスドライバインタフェースの詳細な参照情報については、Section 9 のマニュアルページを参照してください。Section 9E の Intro(9E) では、DDI/DKI (デバイスドライバインタフェース/ドライバカーネルインタフェース) のドライバエントリポイントについて説明します。Section 9F の Intro(9F) では、DDI/DKI のカーネル関数について説明します。Sections 9P および 9S の Intro(9S) では、DDI/DKI のプロパティとデータ構造について説明します。

ハードウェアとその他のドライバ関連の問題については、Sun Microsystems からの次のドキュメントを参照してください。

また、次のドキュメントが役立つ場合があります。

マニュアル、サポート、およびトレーニング

追加リソースについては、次の Web サイトを参照してください。

Oracle へのご意見

Oracle はドキュメントの品質向上のために、お客様のご意見やご提案をお待ちしています。誤りを見つけたり、改善に向けた提案などがある場合は、http://www.oracle.com/technetwork/indexes/documentation/index.html で「Feedback」をクリックしてください。可能な場合には、ドキュメントのタイトルやパート番号に加えて、章、節、およびページ番号を含めてください。返信を希望するかどうかもお知らせください。

Oracle Technology Network では、Oracle ソフトウェアに関する広範なリソースが提供されています。

表記上の規則

このマニュアルでは、次のような字体や記号を特別な意味を持つものとして使用します。

表 P-1 表記上の規則

字体または記号
意味
AaBbCc123
コマンド名、ファイル名、ディレクトリ名、画面上のコンピュータ出力、コード例を示します。
.login ファイルを編集します。

ls -a を使用してすべてのファイルを表示します。

system%

AaBbCc123
ユーザーが入力する文字を、画面上のコンピュータ出力と区別して示します。
system% su

password:

AaBbCc123
変数を示します。実際に使用する特定の名前または値で置き換えます。
ファイルを削除するには、rm filename と入力します。
『 』
参照する書名を示します。
『コードマネージャ・ユーザーズガイド』を参照してください。
「 」
参照する章、節、ボタンやメニュー名、強調する単語を示します。
第 5 章「衝突の回避」を参照してください。

この操作ができるのは、「スーパーユーザー」だけです。

\
枠で囲まれたコード例で、テキストがページ行幅を超える場合に、継続を示します。
sun% grep `^#define \

 XV_VERSION_STRING'

Oracle Solaris OS に含まれるシェルで使用する、UNIX のデフォルトのシステムプロンプトとスーパーユーザープロンプトを次に示します。コマンド例に示されるデフォルトのシステムプロンプトは、Oracle Solaris のリリースによって異なります。

[ ] は省略可能な項目を示します。上記の例は、filename は省略してもよいことを示しています。

| は区切り文字 (セパレータ) です。この文字で分割されている引数のうち 1 つだけを指定します。

キーボードのキー名は英文で、頭文字を大文字で示します (例: Shift キーを押します)。ただし、キーボードによっては Enter キーが Return キーの動作をします。

ダッシュ (-) は 2 つのキーを同時に押すことを示します。たとえば、Ctrl-DControl キーを押したまま D キーを押すことを意味します。