FreeBSD の GENERIC カーネルは何も変更しなくても XFree86 に対応していま す。GENERIC カーネルや、そのスーパーセットであるカーネル設定であれば、 カーネルの変更を行う必要はありません。
BSD カーネルの設定の一般的な説明については、 smm.02.config.ps.Z を参照してください。これはシステム管理者用マニュアルからカーネル設定 の章を抜粋した、すぐに印刷できる Postscript 形式のファイルです。
カーネル設定ファイルを小さくすることにした場合には、
(/sys/arch/i386/conf
ファイル)の以下の行は削除してはいけませ
ん。これは X をサポートするために必要です:
options UCONSOLE #X Console support
FreeBSD の GENERIC カーネルはデフォルトで syscons ドライバを使う設定に
なっています。同様のカーネル設定を行うには、
/usr/src/sys/i386/conf/GENERIC
に次のような行が含まれていなけ
ればなりません:
device sc0 at isa? port "IO_KBD" tty irq 1 vector scintr
MAXCONS オプションを使って、仮想コンソールの数を設定することができます:
options "MAXCONS=4" #4 virtual consoles
このような設定が無い場合のデフォルト値は 16 になります。仮想端末の数は セクション 3の最後で説明した gettys より多くなければなりません。4 は妥 当な最小値です。
X サーバは 2 つのコンソールドライバ(syscons と pcvt)をサポートしていま す。FreeBSD 1.1.5 以降では syscons ドライバがデフォルトです。これらの ドライバは実行時に検出されるので、サーバの設定自体を行う必要はありませ ん。
pcvt をコンソールドライバとして使いたければ、カーネルの設定ファイルに 必ず以下のオプションを入れてください。
options XSERVER #Xserver
pcvt における仮想コンソールの数は、以下のオプションを使って設定するこ とができます:
options "PCVT_NSCREENS=10" #10 virtual consoles
バスマウスや PS/2 マウスのドライバはカーネルに組み込まれていないことや、 組み込まれていても無効にされていることがあります。これらのマウスを使う 場合には、カーネル設定ファイルに以下の行があることを確かめてください:
device mse0 at isa? port 0x23c tty irq 5 vector mseintr
device psm0 at isa? port "IO_KBD" conflicts tty irq 12 vector psmintr
mse0
はバスマウス用のデバイスで、psm
デバイスは PS/2 マウス
用のデバイスです。バスマウスのインタフェースカードは、IRQ やポート番号
を変更できることがあります。詳しくは、バスマウスのマニュアルやオンライ
ンマニュアルの mse(4)
を参照してください。PS/2 マウスの IRQ とポー
ト番号を変更する方法は用意されていません。
XFree86 サーバは MIT-SHM 機能拡張をサポートしています。GENERIC カーネ ルはこれをサポートしていないので、使用したければ SYSV 共有メモリをサポー トするようにカーネルの設定を行う必要があります。この設定を行うには、以 下の行をカーネルの設定ファイルに追加します:
options SYSVSHM # System V shared memory
options SYSVSEM # System V semaphores
options SYSVMSG # System V message queues
SoundBlaster 16 を IRQ 2(9) で使っている場合、sb16_dsp.c にパッチを当 てる必要があります。パッチを当てないと、SoundBlaster ドライバを使う設 定のカーネルは 9 番割り込みが存在しないと言ってきて、X サーバが固まっ てしまいます。
S3 のカードとシリアルポート COM4 は 1 つのシステムで同時には使用するこ とはできません。I/O ポートアドレスが重なっているからです。