この特集のトップページへ
この回のトップページへ

起動時にモジュールを自動読み込みさせる

 これまでは,insmodコマンドを使って手動でデバイスドライバを組み込む方法を説明してきた。しかし,起動時にいちいちデバイスドライバを読み込むのは面倒だろう。

 このような要望には,/etc/rc.d/init.dの下にたとえば次のようなinsmodコマンドを使い,デバイスモジュールを読み込むスクリプトを作成しておこう。

#!/bin/sh
/sbin/insmod input
/sbin/insmod hid
/sbin/insmod keybdev
/sbin/insmod mousdev

 厳密にいえば,起動時に自動的にモジュールを読み込むのではなく,実際にはプラグ&プレイ機能と組み合わせてUSBデバイスが装着された場合に読み込ませるのが理想だ。このため,上記のように起動時にUSBデバイスの各モジュールを読み込むという方法は現実的ではないかもしれない。

 ここでは起動時にモジュールを読み込むための方法についてはこれ以上触れず,「後編」に予定している記事に譲ることにしよう。

モジュールを解放する

 今回の例では,USBデバイスドライバをモジュールとして組み込んだため,前述したようにUSB機器の利用が終わった場合にドライバを解放させることも可能だ。

 デバイスドライバを解放させるためには,rmmodコマンドを使えばよい。たとえばUSBマウスの利用を停止させるのであれば,次のようにすればよい。

# /sbin/rmmod mousedev

 USB機器の持ち味であるプラグ&プレイを利用し,デバイスの抜き差しでドライバが解放されたり自動的に読み込まれるのは便利だと思われるだろう。そのようなプラグ&プレイ環境を実現したいのであれば、Linux Hotpluggingmurasakiなどを利用する。これらのプログラムを使いプラグ&プレイを実現する方法については,次回の後編で紹介する予定だ。

後編予告

 今回は,USBを有効にして,USBキーボードやUSBマウスを利用するまでの方法を解説した。

 最後に整理をして今までの操作をまとめて解説しておこう。USBの認識には,ホストドライバを組み込んで,USBデバイスに依存した各種クラスドライバやベンダードライバをインストールしてしまえば,後はUSBデバイスを/dev以下のキャラクタデバイスを通じて利用できるようになる。個々のアプリケーションなどで,キャラクタデバイスを利用するよう設定変更すればよいのだ。このため,USBだからといって特殊な部分は無いのである。

 次回は,USBカムやUSBプリンタ,USBスキャナを使う方法,そして,USBのプラグ&プレイ環境の実現について解説していこう。

[大澤文孝,ITmedia]

PREV 10/10