next up previous
次へ: アプリケーションの作成 上へ: 情報システム実験(14) 戻る: デバイスドライバの登録

システムコールの実行(read)

カーネル空間にデバイスドライバが格納されたので、次にユーザ空間側からシス テムコールを利用して、このデバイスドライバを呼び出すことにする。

readメソッドをユーザ空間側から呼び出すときの書式は、次の通りである。


\begin{boxedminipage}{10cm}
\begin{verbatim}ssize_t read(int fd, void *buff, size_t count);\end{verbatim}
\end{boxedminipage}

各引数(パラメータ)は次のような意味を持つ。

fdは、読み込みを行なうデバイスのファイルデスクリプタを指定する。

buffは、読み込んだデータを格納する変数へのポインタを指定する。

countは、読み込むデータサイズをバイト単位で指定する。

戻り値(返り値)は、正常終了したばあいは、読み込んだバイト数を返す。 エラーのばあいは-1が返され、errnoに指定の値が格納される。



Subsections

MANOME Yoichi 平成19年1月6日