【ハードウェアの基本設定について】


このHPはハードウェアの基本設定についてまとめたものです。


1-1 BIOSの基 本設定

BIOSとは、コンピュータの基本的な入出力を管理したり、デバイスの動作を設定した り、OSを起動するためのプログラムのこと。 マザーボード上のBIOSはシステムBIOSと呼ばれる。BIOSには、次の 様な役割がある。

●OSを起動するためのプログラム の読み込みを行う
●デバイスの動作を設定する
●基本的な入出力を制御する


1-2 BIOSセッ トアップ

システムBIOSの基本設定を変更するには、BIOSセットアップを使う。BIOSセットアッ プはコンピュータを起動する時に 特定のキーを押すこ とによって起動できる。

BIOSセットアップで設定できる項目はシステムBIOSにより異なる。一般に次の様 な設定をすることができる。

コンピュータを起動する時に特定 のキーを押すこ とによって起動できる。

●OSを起動する際に検索するデバ イスの順序
●ハードディスクのパラメーター
●パワーマネージメントの設定
●パワーマネージメントの設定
●デバイスのIRQの割り当て
●日付や時刻の設定


2-1 システム リソース

ハードウェアの設定ではIRQ、DMA、I/Oアドレスといったシステムリソースの設定が重要になる。 IRQとは『割り込み要求』のこと。

割り込みというのは、各種デバイスがCPUとデータをやり取りする際に発生し、どのデバイスか らの要求なのかをCPUが識別するために用いられる。

割り込み要求が発生するとCPUは処理を一時中断し、要求のあった処理を実行 する。

IRQは一般的に0-15までの16個が用いられる。従ってシス テムに必要な機能も含めて16までのデバイスしか使えないことになるが、PCIバスでは、1つのIRQを複数のデバイスで共有 できるようになっている。 IRQの割り当ては、/proc/interruptsで確認できる。

♯cat /proc/interrupts






DMAとは、デバイスがメモリにアクセスするためのチャネルのことで、これを使うと、CPUを介さずにデバイスから直接データをメモリに転送することができる (DMA転送)。

CPUが他の処理を実行中でも、ハードディスクなどのデバイスとメモリとのデータのやり取りをDMAコン トローラが制御するため、CPUの負荷が少なくなり、処理速度が向上する。

DMA転送を使わない場合、CPUがデバイスとメモリ間のデータ転送を行う。 DMAチャネルの割り当ては/proc/dmaで確認できる。


♯cat /proc/dma


2-1 SCSIデバ イスの設定

SCSIは、ハードディスク、スキャナ等、様々なハードウェ アを接続するために用いられるインターフェイスの規格。

SCSI対応デバイスは、内蔵用のものも外付用のものも数珠つなぎに接続していき(デイジーチェーン)その終端にはバス上の信号を整え安定させるためにターミネータと呼ばれる終端装置を取り付ける。SCSIデバイスによっては、ターミネータを内蔵しているものもある。

SCSIデバイスは、SCSI IDで識別される。SCSIには バス幅が8ビットのSCSI(SCSI-1、SCSI-2、FastSCSI、UltraSCSI)と16ビ ットのSCSI(WideSCSI、FastWideSCSI、UltraWideSCSI)の2種類 がある。






8ビットの幅のSCSIの場合は0-7、 16ビット幅のSCSIの場合は0-15のSCSI IDを持つことができ、8ビットのSCSIでは7台、16ビット のSCSIでは15台のデバイスを接続することができる。

このうちの1つは、SCSIデバイスを制御するコントローラ(SCSIカード・ホストアダプタ)に 割り当てられ、一般的にSCSI ID7が使用される。




SCSI接続されているデバイスの情報を調べるには、/proc/scsiディレクトリ以下を参照する。



2-2 拡張カー ドのセットアップ

コンピュータの機能を拡張するためには、拡張カードと呼ばれるハードウェアが使われる。 拡張カードには、次の様な種類がある。


拡張カードをコンピューターに接続するには、PCIやISAといった規格の拡張バスが利用される。その終端にはバス上の信号を整え安定させるためにターミネータと呼ばれる終端装置を取り付ける。SCSIデバイスによっては、ターミネータを内蔵しているものもある。

PCIデバイスの情報は、/proc/pciをcatコマンド等で参照するか、lspciコマンドで表示すること ができる。また、lsdevコマンドで、デバイスごとのDMA、IRQ、I/Oアドレスを一覧表示させる ことができる。



2-3 通信デバ イスの設定

コンピュータをLANに接続してデータ通信を行うには、 ネットワークカード(NIC)が必要。また、 電話改選を使って通信を行うためには、モデムやTA(ターミナルアダプタ)といった通信デバイスが必要になる。

★ネットワークカード(NIC)の設 定

現在一般的に使われているPCIカードのNICは、ほとんどの 場合は自動的に認識されるので、特別な設定をする必要はない。ただし、IRQなどのシステムリソースが競合した場合は、BIOSセットアップを使っ て手動で設定を行う。自動的に認識されず、ドライバソフトが存 在する場合は、ドライバをインストールする。

★モデム

モデムには大きく分けて外付けタイプと内蔵タイプがある。外付け モデムはシリアルケーブルを用いてコンピュータをコンピュータ本体のシリアルポートに接続 する。

シリアルポートの設定を参照するにはsetserialコマンドを使う。どのI/Oアドレスがどのシリアルデバイスに対 応するのかを調べることができる。

またシリアルポートを表すデバイスファイルは、1番目のシリアルポートが/dev/ttyS0、2番目のシリアルポート が/dev/ttyS1。
/dev/ttyS0はWindowsのCOM1 に、/dev/ttyS1はCOM2に相当する。


【書式】setserial [オプション] [デバイス名] [パラメータ 値]





次の例では、1番目のシリアルポート(/dev/ttyS0)の設 定を表示している。

♯ setserial  /dev/ttyS0

/dev/ttyS0, UART: 16550A , Port: 0x03f8 IRQ: 4


モデムを使った通信では、PPPプロトコルという通信方式が使われる。 PPP接続はpppdというソフ トウェアが行う。内蔵モデムは拡張カード等の形で提供され、マシン内蔵のシリアルポートを使う 。

内蔵のシリアルポートは、デバイスファイル/dev/ttyS2などで表される。また内蔵モデムの中には、モデムの機能をソフトウェアで実現しているWindows専用モデムがあり、 この様なモデムはWinmodemと呼ばれ、Linuxで利用する場合には専用のドライバが必要となる



3-1 USBデバイスの設定

USBは様々な周辺機器を接続するためのインターフェイス。カーネル2.4になっ てカーネルの機能として組み込まれた。 USBの特徴としては以下の様なものがある。

●コネクタの規格が統一されてい て、簡単に接続できる
●USBハブを利用して、ツリー状 に最大127台まで接続できる
●プラグ&プレイをサポート
●何台接続してもIRQの消費は1個 のみ
●電源を入れたままデバイスの抜 き差しができる(ホットプラグ/ホットスワップ)
●USBポートからUSBデバイスに電 源を供給可能


USBには、従来の1.1とより高速な2.0の2つのバージョン があり、現在ほとんどのPCにどちらかのバージョンのUSBポートが装備されている。USBデバイスは、そのデバイスが定義されているクラスドライバが同じであれば、メーカーが異なっていても動作する。Linuxでサポートされている主なクラスドライバには、次の様なものがある。




3-2 USBのモジュール

Linuxでは、カーネル2.4において、USBが正式にサポートされた。 LinuxからUSBを利用するには、カーネルモジュールと呼ばれるソフトウェアを組み込む。ただし、USB機器とコンピュータ本体の通信を制御するUSBコントロールには、UHCI方式とOHCI方式の2つの方式があり、それぞれで制御方法やドライバ異なる。

LinuxでUSB機能を利用するためのカーネルモジュールには、

●usb-uhci.o
●usb-ohci.o


がある。

どちらのUSBコントローラを搭載しているかはdmsgコマンドで確認できる

また、lspciコマンド でも、USBコントローラーを確認できる。以下の例ではlspciコマンドとgrepコマンドを組み合わせてUSBコントローラの種類を調べている。




UHCIのカーネルモジュールを組み込む には、以下の様にする

♯ insmod usb-uhci.o

カーネルモジュールが組み込まれているのを確認するにはlsmodコマンドを使う。 ここでは、usb-ohciとusbcoreというUSBドライバが組み込まれていることがわかる。




USBモジュールを手動でロードする場合は、modprobeコマンドを使う。

♯ modprobe usb-uhci