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

ドキュメントの情報

はじめに

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

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

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

3.  マルチスレッド

4.  プロパティー

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

6.  ドライバの自動構成

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

8.  割り込みハンドラ

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

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

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

12.  電源管理

13.  Oracle Solaris ドライバの強化

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

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

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

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

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

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

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

20.  USB ドライバ

21.  SR-IOV ドライバ

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

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

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

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

パート IV 付録

A.  ハードウェアの概要

B.  Solaris DDI/DKI サービスのサマリー

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

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

E.  pci.conf ファイル

索引

はじめに

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

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


注 - この Oracle Solaris のリリースでは、SPARC および x86 系列のプロセッサアーキテクチャーを使用するシステムをサポートしています。サポートされるシステムは、Oracle Solaris OS: Hardware Compatibility Lists に記載されています。本書では、プラットフォームにより実装が異なる場合は、それを特記します。

本書の x86 に関連する用語については、次を参照してください。

サポートされるシステムについては、Oracle Solaris OS: Hardware Compatibility Listsを参照してください。


対象読者

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


注 - Oracle Solaris オペレーティングシステム (Oracle Solaris OS) は SPARC アーキテクチャーと x86 アーキテクチャーの両方で動作します。また、Oracle 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 のプロパティとデータ構造について説明します。

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

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

Oracle サポートへのアクセス

Oracle のお客様は、My Oracle Support を通じて電子的なサポートを利用することができます。詳細は、http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info を参照してください。聴覚に障害をお持ちの場合は、http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs を参照してください。

表記上の規則

次の表では、このドキュメントで使用される表記上の規則について説明します。

表 P-1 表記上の規則

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

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

machine_name% you have mail.

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

Password:

aabbcc123
プレースホルダ: 実際に使用する特定の名前または値で置き換えます。
ファイルを削除するには、 rm filename と入力します。
AaBbCc123
書名、新しい単語、および強調する単語を示します。
ユーザーズガイド』の第 6 章を参照してください。

キャッシュは、ローカルに格納されるコピーです。

ファイルを保存しないでください。

注: いくつかの強調された項目は、オンラインでは太字で表示されます。

コマンド例のシェルプロンプト

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

表 P-2 シェルプロンプト

シェル
プロンプト
Bash シェル、Korn シェル、および Bourne シェル
$
Bash シェル、Korn シェル、および Bourne シェルのスーパーユーザー
#
C シェル
machine_name%
C シェルのスーパーユーザー
machine_name#