XF86Config の設定項目をさわる前に、次の基礎的な事項を知っておく必要がありま す。
モニタの水平同期周波数は、そのモニタが 1 秒間に描ける水平走査線の数のこ とで、これはモニタについて最も重要な特性です。垂直同期周波数は、そのモ ニタが 1 秒間に電子ビームを縦方向に行ったり来たりさせることのできる回数のこと です。
同期周波数は普通、モニタのマニュアルの仕様の頁に一覧になっています。垂直 同期周波数の数値は一般的に Hz (秒当たりの回数) で、水平同期周波数は KHz (秒当たりの千回数) で計測されています。通常の範囲は垂直については 50 から 150Hz、水平については 31 から 135KHz 程度です。
マルチシンクモニタの場合、その周波数は幅のある値として表示されています。 下位のものに多いのですが、複数の固定した周波数を持っているモニタも あります。このようなモニタも普通のモニタと同様に設定は出来ますが、モニ タの持つ特徴に厳しく制限されてしまうでしょう。最高の解像度が得られるよう な最も高い水平同期と垂直同期周波数の組み合わせを選択してください。そして、 固定周波数モニタでは設計値より高い周波数を与えるとモニタを痛めるおそれ があるので注意してください。
この文書の初期の版では、より良い性能を得るための名目上の最高の垂直同期 周波数を指定したマルチシンクモニタの仕様外使用にかなり無頓着でした。 この警告に対する根拠を指摘できる理由を手にいれました。以降の モニタの仕様外使用 で言及します。
カードの駆動クロックの周波数 :
ビデオアダプタの仕様書にカードのドットクロックがあります (ドットクロックと は画面へ 1 秒間に表示できる点の総数です) 。この情報が無い場合は、X サーバ がそれを取ってきます。X がモニタ出力を無効にしてしまった場合でも、クロックとその 他の情報を標準出力に吐き出します。この情報をファイルにリダイレクトした場合、 コンソールへ戻って再立ち上げしなければならなくなってもファイルに保存されま す。(最近の X サーバ ではすべて、クロックとその他の情報を出力し X を実際に 起動しないでビデオモードも変更しない -probeonly オプションをサポートして います。)
X の開始時のメッセージは次のような例題に似ているでしょう。:
XFree86 を使用している場合は:
XF86Config: /usr/X11R6/lib/X11/XF86Config
(**) stands for supplied, (--) stands for probed/default values
(**) Mouse: type: MouseMan, device: /dev/ttyS1, baudrate: 9600
Warning: The directory "/usr/andrew/X11fonts" does not exist.
Entry deleted from font path.
(**) FontPath set to "/usr/lib/X11/fonts/misc/,/usr/lib/X11/fonts/75dpi/"
(--) S3: card type: 386/486 localbus
(--) S3: chipset: 924
---
チップセット -- これは正確なチップの型式です。86C911 の前のものです。
(--) S3: chipset driver: s3_generic
(--) S3: videoram: 1024k
-----
フレームバッファメモリの大きさです。
(**) S3: clocks: 25.00 28.00 40.00 3.00 50.00 77.00 36.00 45.00
(**) S3: clocks: 0.00 0.00 79.00 31.00 94.00 65.00 75.00 71.00
------------------------------------------------------
動作可能な周波数を MHz で表します。
(--) S3: Maximum allowed dot-clock: 110MHz
------
帯域幅
(**) S3: Mode "1024x768": mode clock = 79.000, clock used = 79.000
(--) S3: Virtual resolution set to 1024x768
(--) S3: Using a banksize of 64k, line width of 1024
(--) S3: Pixmap cache:
(--) S3: Using 2 128-pixel 4 64-pixel and 8 32-pixel slots
(--) S3: Using 8 pages of 768x255 for font caching
SGCS X または X/Inside X を使っている場合は:
WGA: 86C911 (mem: 1024k clocks: 25 28 40 3 50 77 36 45 0 0 79 31 94 65 75 71)
--- ------ ----- --------------------------------------------
| | | 動作可能な周波数を MHz で表わします。
| | +-- ボード上のフレームバッファメモリの大きさ
| +-- チップの型式
+-- サーバの種類
注意: なるべくこの作業はマシンの負荷が低い時に行なって下さい。X はアプリケ ーションですから、ディスクの動作と時間調節のループが衝突すると、上記の数字 は不正確になります。何回か繰り返し実行し、数字が大きく変動しないことを確か めて下さい。もし変動が大きい場合には、安定するまでプロセスを殺してみてくだ さい。SVr4 (システム V リリース 4) を使用している人へ: mousemgr (マウスマ ネージャ) プロセスは特に混乱の元です。
このような不正確さを避けるため、得られたクロックの数字をそのまま Clocks プ ロパティの値として XF86Config に取り込んで下さい。これは時間調節のループを抑 止し、X が試してみることのできるクロックの値の正確な一覧を与えるためです。 上記の例のデータを使うと、次のようになります。:
wga
Clocks 25 28 40 3 50 77 36 45 0 0 79 31 94 65 75 71
高く変わりやすい負荷が掛かったシステムでは、この方法は X の起動時に陥るこ
とがある不思議な失敗を回避する助けになるでしょう。X が起動した時システムの
負荷のせいで間違った値を得てしまい、config データベースから丁度いいドット
クロックを見つけることが出来なかったり、間違ったものを見つけてしまうことが
あり得るのです。
XFree86 を実行する場合は、サーバがカードを探知して使用可能な最高のドット クロックを教えてくれます。
さもなければ、最高の使用可能なドットクロックをモニタのビデオ信号帯域幅から 概算しましょう。ここで与えるものが多いですが、例えば、名目上の帯域幅の 30% 増しで動作できるモニタもあります。評価しているモニタの垂直同期周波数を 用いることでかかるリスクについて以降で詳細に論じます。
帯域幅を知ることは可能な構成定義からより賢い選択ができるようになります。あ なたのディスプレイの表示品質 (特に高精細のためのシャープさ) に影響を及ぼし ます。
モニタのビデオ信号帯域幅はマニュアルの仕様の頁に載っています。無かった場 合は、モニタの最も高い解像度のところを見てください。解像度から帯域幅 (つ まり使用できるドットクロックの大まかな上限値) を推定するための経験則を下に 示します。
640x480 25
800x600 36
1024x768 65
1024x768 interlaced 45
1280x1024 110
1600x1200 185
ところで、この表は絶対的なものではありません。これらの数字は標準的な XFree86 モードデータベースでの解像度毎の最も低いドットクロックです。モニタ の帯域幅は一番上の解像度に要求される最小の帯域幅より高いでしょうから、恐 れずにドットクロックを数 MHz 高めに試してみてください。
また、ドットクロックが 65MHz 位より低い場合には帯域幅はほとんど問題になら ないことに注意してください。SVGA やほとんどの高解像度のモニタでは、これ はモニタのビデオ信号帯域幅の限界よりもはるかに低い周波数ですから。次に例 を示します。:
ブランド名 ビデオ信号帯域幅
---------- ---------------
NEC 4D 75Mhz
Nano 907a 50Mhz
Nano 9080i 60Mhz
Mitsubishi HL6615 110Mhz
Mitsubishi Diamond Scan 100Mhz
IDEK MF-5117 65Mhz
IOCOMM Thinksync-17 CM-7126 136Mhz
HP D1188A 100Mhz
Philips SC-17AS 110Mhz
Swan SW617 85Mhz
Viewsonic 21PS 185Mhz
一番下のクラスのモニタでも、解像度に関して非常にビデオ信号帯域幅に制約を
受けることはありません。NEC マルチシンク II が良い例です (仕様によれば
800x600は表示出来ない) 。そのディスプレイは 800x560 のみ表示できます。この
ような低解像度の場合は、高いドットクロックや大きなビデオ信号帯域幅を必要と
しなく、多分 32Mhz か 36Mhz で十分で、両方の周波数ともモニタのビデオ信号
帯域幅である30Mhz からそれ程かけ離れた値ではありません。
これら 2 つの動作周波数では、ディスプレイの持っている性能よりくっきりと表 示しないかもしれませんが、でもかなりの品質だと言い切ってもいいでしょう。勿 論、NEC マルチシンク II がもっと高い、例えば 36MHz ビデオ信号帯域幅を持っ ているに越したことはありません。しかし、大きく画像が歪む程周波数がかけ離れ ていなければ、文章を編集する等の一般的な作業には問題はありません。 (もし画 像の歪みがあまりにも大きい場合には、目で見てすぐわかるでしょう) 。
モニタの同期信号帯域幅は、ビデオアダプタのドットクロックと共に、表示でき る最高の解像度を決定します。しかしハードウェアの性能を引き出すのはドライバ です。どんなに優れたビデオアダプタやモニタでも、良いデバイスドライバ がなければ宝の持ち腐れになってしまいます。一方、有能でないハードでも多目的 に使用できるデバイスドライバがあれば十分役に立ちます。これが XFree86 の 設計哲学です。