次のページ 前のページ 目次へ

5. ディスプレイとアダプタについての基礎知識

Xconfig の設定項目をさわる前に、次の基礎的な事項を知っておく必要があり ます。

5.1 モニタの同期周波数

モニタの水平同期周波数は、そのモニタが 1 秒間に描ける水平走 査線の数のことで、これはモニタについて最も重要な特性です。垂直同期周波 数は、そのモニタが 1 秒間に電子ビームを縦方向に行ったり来たりさせるこ とのできる回数のことです。

同期周波数は普通、モニタのマニュアルの仕様の頁に一覧になっています。 垂直同期周波数の数値は一般的に Hz(秒当たりの回数)で、 水平同期周波数は KHz(秒当たりの千回数)で計測されています。通常の範囲 は、垂直で 50Hz から 150Hz 程度、水平で 31KHz から 135KHz 程度です。

マルチシンクモニタの場合、その周波数は幅のある値として表示されています。 下位のものに多いのですが、複数の固定した周波数を持っているモニタも あります。このようなモニタも普通のモニタと同様に設定はできますが、モニ タの持つ特徴に厳しく制限されてしまうでしょう。最高の解像度が得られるよう な最も高い水平同期と垂直同期周波数の組み合わせを選択してください。そして、 固定周波数モニタでは設計値より高い周波数を与えるとモニタを痛めるおそれ があるので注意してください。

この文書の初期の版では、より良い性能を得るための名目上の最高の垂直同期 周波数を指定したマルチシンクモニタの仕様外使用にかなり無頓着でした。 この警告に対する根拠を指摘できる理由を手にいれました。以降の モニタの仕様外使用 で言及します。

5.2 モニタのビデオ信号帯域幅 :

モニタのビデオ信号帯域幅はマニュアルの仕様の頁に載っています。無かった 場合は、モニタの最も高い解像度のところを見てください。解像度から帯域幅 (つまり使用できるドットクロックの大まかな上限値)を推定するための経験則 を下に示します。

        640x480                 25
        800x600                 36
        1024x768                65
        1024x768 インタレース   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
        PanaSync/Pro P21                220Mhz

一番下のクラスのモニタでも、解像度に関して非常にビデオ信号帯域幅に制約を 受けることはありません。NEC Multisync II が良い例です(仕様によれば 800x600 は表示できません)。このディスプレイは 800x560 のみ表示できます。この ような低解像度の場合は、高いドットクロックや大きなビデオ信号帯域幅を必要と しなく、多分 32MHz か 36MHz で十分で、両方の周波数ともモニタのビデオ信号 帯域幅である30MHz からそれ程かけ離れた値ではありません。

これら 2 つの動作周波数では、ディスプレイの持っている性能よりくっきりと表 示しないかもしれませんが、でもかなりの品質だと言い切ってもいいでしょう。勿 論、NEC Multisync II がもっと高い、例えば 36MHz ビデオ信号帯域幅を持っ ているに越したことはありません。しかし、大きく画像が歪む程周波数がかけ離れ ていなければ、文章を編集する等の一般的な作業には問題はありません。(もし画 像の歪みがあまりにも大きい場合には、目で見てすぐわかるでしょう)。

5.3 カードのドットクロック値

ビデオアダプタの仕様書には普通、カードの最大ドットクロック 値が書かれています(ドットクロックとは画面へ 1 秒間に表示できる点の総数 です)。

この情報が無い場合は、X サーバがそれを取ってきます。最近の X サーバ で はすべて、クロックとその他の情報を出力し X を実際に起動しないでビデオ モードも変更しない --probeonly オプションをサポートしています。

-probeonly オプションが無くても気にしないでください。X がモニタを固ま らせても、クロック値や他の情報に関する行が標準エラー出力に書き出されま す。これをファイルにリダイレクトすれば、たとえコンソールに戻るために再 起動が必要な場合でも、記録を残すことができます。

検出の結果や起動メッセージは、以下の例のような感じです:

XFree86 の場合:

Xconfig: /usr/X11R6/lib/X11/Xconfig
(**) 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
                    -----
         ボードに載っているフレームバッファ RAM の大きさ

(**) 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/Inside の X の場合:

WGA: 86C911 (mem: 1024k clocks: 25 28 40 3 50 77 36 45 0 0 79 31 94 65 75 71)
---  ------       -----         --------------------------------------------
 |     |            |                 利用可能な駆動周波数(MHz 単位)
 |     |            +-- ボードに載っているフレームバッファ RAM の大きさ
 |     +-- チップの種類
 +-- サーバの種類

注意: なるべくこの作業はマシンの負荷が低い時に行なってください。X はアプリケ ーションですから、ディスクの動作と時間調節のループが衝突すると、上記の数字 は不正確になります。何回か繰り返し実行し、数字が大きく変動しないことを確か めてください。もし変動が大きい場合には、安定するまでプロセスを殺してみてくだ さい。もしマウスデーモンのプロセスをお使いであれば、これは混乱の元になり ます(Linux では gpm, SVr4 では mousemgr が該当します)。

このような不正確さを避けるため、得られたクロックの数字をそのまま Clocks プ ロパティの値として Xconfig に取り込んでください。これは時間調節のループを抑 止し、X が試してみることのできるクロックの値の正確な一覧を与えるためです。 上記の例のデータを使うと、次のようになります:

wga
        Clocks  25 28 40 3 50 77 36 45 0 0 79 31 94 65 75 71

高く変わりやすい負荷が掛かったシステムでは、この方法は X の起動時に陥るこ とがある不思議な失敗を回避する助けになるでしょう。X が起動した時システムの 負荷のせいで間違った値を得てしまい、config データベースから丁度いいドット クロックを見つけることができなかったり、間違ったものを見つけてしまうことが あり得るのです。

5.4 これらの特性は何を制御するのか?

モニタの同期信号帯域幅は、ビデオアダプタのドットクロックと共に、表示でき る最高の解像度を決定します。しかしハードウェアの性能を引き出すのはドライバ です。どんなに優れたビデオアダプタやモニタでも、良いデバイスドライバ がなければ宝の持ち腐れになってしまいます。一方、有能でないハードでも多目的 に使用できるデバイスドライバがあれば十分役に立ちます。これが XFree86 の 設計哲学です。

使用するドットクロックはモニタのビデオ帯域幅に合わせるべきです。 ただし、ここはかなり柔軟性がある部分です――モニタによっては名目 上の帯域幅の 30% 増しで動作します。これに伴うリスクは、モニタに記載さ れている垂直同期周波数を超えることに関係します。 これについては以降で詳しく説明します。

帯域幅を知っていると、可能な設定の中からより賢い選択ができるようになり ます。これは、あなたのディスプレイの表示品質(特に高精細のためのシャー プさ)に影響するかもしれません。


次のページ 前のページ 目次へ