?? [轉]經驗之談 -- 設置和修改 x window 的顯示模式.txt
字號:
NoTrapSignals 這個標志將使調試信號對 X Server 不起作用. 調試
信
號會使 X Server "轉儲核心", 把內存中有關的 X Server 的信息
存儲
到硬盤上, 即所謂的 "Core dump". 這樣的目的是便于對 X Server
進
行調試.
DontZap 這個標志將使 X Server 收到 "Ctrl + Alt + Back Space"
鍵
組合發出的信號時 *不* 停止工作. 當然一般是不建議使用的.
DontZoom 這個標志使 X Window 不能在各種圖形模式之間進行切換.
X
Window 的缺省狀態是在用戶設定了多組分辨率, 刷新頻率和顏色的
組
合的情況下, 運行 X Window 的過程中可以通過 Ctrl + '+' 和
Ctrl + '-' 兩組鍵的組合在多個圖形模式之間進行動態切換.
Keyboard 段: 這個段指明了 X Window 環境中所使用的鍵盤映射以及其他一
些參
數. 如下是作者的鍵盤配置:
Section "Keyboard"
Protocol "Standard"
AutoRepeat 500 5 # 指定延遲 (delay) 和 速率 (rate)
# 這里的設定分別為 500 和 0
LeftAlt Meta
RightAlt Meta # 使用左右 Alt 鍵作 Meta 鍵.
# 關于 Meta 鍵, 希望以后能夠補充完整
ScrollLock Compose
RightCtl Control
XkbKeycodes "xfree86"
XkbTypes "default"
XkbCompat "default"
XkbSymbols "us(pc101)"
XkbGeometry "pc"
XkbRules "xfree86"
XkbModel "pc101"
XkbLayout "us"
EndSection
這段設置出了 XkbLayout 會影響鍵盤各按鍵的表現以外, 其他都只是一
些功
能上的設置, 沒有太大影響. 在控制臺模式下, 可以通過 Alt + F? 在各
虛
擬終端間進行切換, 在 X Widow 環境下, 必須使用 Ctrl + Alt + F? 才
能
夠達到這一效果.
對于本段以及下面的 Pointer 段, 由于本人經驗和所知的限制不能完整地講
述, 會在不久以后作進一步補充. 并在此向各位表示歉意.
Pointer 段: 如前所述, 這個段是設置鼠標等設備的. 如下舉例是作者的鼠標
設
置:
Section "Pointer"
Protocol "PS/2"
Device "/dev/mouse"
# 下面這兩個參數是一些采用磁技術的鼠標所需要的, 一般注釋掉或者
刪除
# BaudRate 9600
# SampleRate 150
# 下面的兩個參數是為方便使用雙鍵鼠標的用戶使用三鍵鼠標而設置的
# 當選擇了虛擬三鍵的時候, 可以通過同時點擊鼠標左右鍵完成中鍵的
功能
Emulate3Buttons
Emulate3Timeout 50
# 下面這個參數也是為磁金屬鼠標所設定的
# ChordMiddle
EndSection
Mornitor 段: 這個段的設置需要參考顯示器的用戶手冊, 以便獲得相關的數
據,
防止損壞顯示器. 這個段是我改動最多的, 現舉例描述如下:
Section "Monitor"
Identifier "Samsung SyncMaster 500s/500Ms"
# 監視器標示符, 在下面 Screen 段用作標示
# 這個參數的設置對顯示器的模式沒有直接影響, 只要保證跟后
面
# Screen 段的引用保持一致
VendorName "Unknown"
# 生產廠家的名稱
ModelName "Unknown"
# 制造和型號的標示, 并不重要
# 在使用 Xconfigurator 的時候, 如果不提供上述值, 則填寫
# "Unknown"
# 下面這兩個參數在設置顯示模式上來書哦是比較重要的.
# HorizSync 是水平掃描頻率, kHz 為單位.
HorizSync 50-60
# VertRefresh 是垂直掃描頻率, Hz 為單位
VertRefresh 80-100
# 上面這兩個參數可以是列舉的形式, 也可以是范圍的形式.
# 比如: 列舉: 75 85 100
# 范圍: 如上所述
# 接下來是模式的描述了, 如果您使用的是 TurboLinux 或者是
# RedHat Linux, 下面的模式列表將會非常的完整. 但
Slackware
# 沒有提供完整的列表, 這些數據可以在顯示器的說明書上見到
.
# 為節省空間, 這里僅列舉一條
# 800x600 @ 85 Hz, 55.84 kHz hsync
Modeline "800x600" 60.75 800 864 928 1088 600
616 621 657 -HSync -VSync
# 或者寫成以下形式, 為 Slackware 采用
# Mode "800x600"
# DotClock 45
# HTimings 1024 1048 1208 1264
# VTimings 768 776 784 817
# Flags "Interlace"
# EndMode
Endsection
這里來講講上面的 ModeLine 的涵義. 就象第二種形式所描述的那樣, 這
些
參數是使用 "800x600x85Hz" 模式所需要的. 要設置顯示為這種模式, 首
先
要保證水平掃描頻率和垂直掃描頻率要配合好, 即 VertRefresh 的范圍
或列
舉值中要包括 85 Hz, 而 HorizSync 的值需要包括 55.84 kHz. 這些都
可以
通過手工調整. 然后需要看看打點頻率. 有些顯示器有這個參數提供, 而
另
外一些可能檢測不到, 這時需要查看手冊. 打點頻率的值可以不提供, 這
點
在下面會有講述.
注意, 這里的 "800x600" 就是這種模式的標示. 等到下面談到模式的設
置順
序就會清楚 X Window 是如何設置的了.
Device 段: 這里主要記錄了顯卡的數據, 如下可以看到, 很簡單, 只有顯存
的大
小和顯卡的時鐘頻率. 這個時鐘頻率是用來產生視頻信號, 而顯示器的掃
描
頻率也是根據這個信號產生的. 所以不要為了追求高分辨率和高刷新頻率
把
它調得太高, 否則可能會損傷顯示器. 一般在顯示器的說明書上會有這個
值,
如果沒有, 建議不要超過 50.
Section "Device"
Identifier "Generic VGA"
VendorName "Unknown"
BoardName "Unknown"
Chipset "generic"
# VideoRam 256
# Clocks 25.2 28.3
EndSection
注意: 上面所說的兩個段都可以對多個設備進行描述, 系統會用
Identifier
的值區分不同的設備.
Screen 段: X Window 的顯示模式的選擇就是記錄在這個段中的. 如果是
RedHat
則會有所有四種 (Mono, VGA16, SVGA, Accelerate) X Server 的段, 如
果
是 Slackware, 則可能會只有一個段, 就是對應安裝系統的時候指定的顯
示
設備的.
下面以我使用的 accel X Server 說說各字段的涵義.
Section "Screen"
Driver "accel"
# 這個不用解釋了吧, 是 Permedia II 顯卡, 所以使用加速的驅動
# 這里的可能值是"vga2", "vga16", "svga", "accel", 根據自
己
# 的實際情況設定. 這里跟 前面講 X Server 時所說的 X 的連
接
# 目標有關系, 我想這不難連接吧.
Device "3DLabs|Permedia II 2D+3D"
# 上面制定的顯卡配制, 用 "3DLabs|Permedia II 2D+3D" 作為
# Identifier 的. 當然我可以使用自己喜歡的名字, 實際這里
只是
# 個標記的作用
Monitor "Samsung SyncMaster 500s/500Ms"
# 這里的解釋同 Device, 也是使用上面的 Identifier 的設定
值
Subsection "Display"
# 顯示子段, 可以有多個, 分別對應不同的色深, 即下面的
Depth
Depth 16
Modes "800x600"
# 所取的顯示模式 這個值就是根據前面的 ModeLine
上面
# 的注釋寫的, 可以有多個, 用空格分開
# 這里需要說明的是, X Server 先檢查這里的分辨率
設置,
# 然后根據這個設置和上面標示的垂直和水平刷新頻率
決
# 定使用哪個 ModeLine, 如果在刷新頻率的范圍內有
多種
# Mode 可以選擇, 那么可以通過使用 Ctrl +
'+'/'-'進
# 行動態切換.
ViewPort 0 0
# 這個是視圖的左上角坐標
# 如果想用虛擬大小的屏幕, 可以在這里加上一句
#Virtual 1024 768
# 這樣的話, 就可以使用大于當前實際屏幕的虛擬屏幕
了,
# 屏幕會隨這鼠標的移動而轉換. 當然, 要保證有足夠
的
# 顯存才行, 虛擬的屏幕大小要比實際的設定大..
EndSubsection
# 在這下面可以再加上 Depth 分別為 8 和 24 的子段, 格式和
上
# 面一樣.
EndSection
當然, 如果發現所選的設備驅動根實際的硬件設備不相符, 還可以重新安
裝
驅動程序.如何在 Linux 下面安裝軟件, 我想就不再詳細介紹了. 介紹這
方
面知識的資料很多.
本文檔將繼續更新, 目標是成為一個簡單的 X Window 入門的手冊. 如果發現
有
錯誤或者遺漏, 請于我聯系.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -