<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    天空是藍(lán)色的

    做好軟件為中國 #gcc -c helloworld.c -o helloworld.o //編譯目標(biāo)文件 #gcc helloworld.o -o helloworld //編譯成可執(zhí)行exe #helloworld //運(yùn)行exe
    數(shù)據(jù)加載中……
    [ZT]XFree86學(xué)習(xí)筆記

    XFree86學(xué)習(xí)筆記
    整理:Jims of 肥肥世家
    <yjnet@21cn.com>

    Copyright ? 2004 本文遵從GPL協(xié)議,歡迎轉(zhuǎn)載、修改、散布。

    第一次發(fā)布時間:2004年8月14日


    --------------------------------------------------------------------------------

    Table of Contents

    1. X window 介紹
    1.1. X 簡介
    1.2. 版本
    1.3. XFree86項目介紹
    2. XFree86系統(tǒng)介紹
    2.1. XFree86安裝
    2.2. XFree86配置
    2.3. XFree86的文件系統(tǒng)
    2.4. XFree86字體
    2.5. 啟動X11
    2.5.1. 啟動方法
    2.5.2. 啟用多用戶會話
    2.5.3. 終止X會話
    3. X11客戶程序常用選項
    3.1. X程序常用選項
    3.2. 使用客戶程序資源
    4. X window的網(wǎng)絡(luò)應(yīng)用
    4.1. 遠(yuǎn)程會話
    4.2. 遠(yuǎn)程桌面
    4.3. 安全問題
    5. X系統(tǒng)客戶程序介紹
    5.1. 環(huán)境設(shè)置命令
    5.2. 小工具
    6. X11多媒體客戶程序介紹
    7. 顯示管理器
    7.1. xdm的配置
    8. 窗口管理器
    8.1. WindowMaker
    8.2. fvwm\fvwm2\fvwm95
    8.3. enlightenment
    8.4. mwm
    8.5. twm
    8.6. icewm
    8.7. Sawfish
    8.8. blackbox
    9. 桌面環(huán)境
    9.1. GNOMN
    9.2. KDE
    9.3. CDE
    10. X web
    List of Tables

    2.1. XFree86文件系統(tǒng)目錄清單
    3.1. X程序常用選項
    Chapter 1. X window 介紹
    Table of Contents

    1.1. X 簡介
    1.2. 版本
    1.3. XFree86項目介紹
    1.1. X 簡介
    X window系統(tǒng)是一個很復(fù)雜的網(wǎng)絡(luò)圖形界面系統(tǒng),它的開發(fā)始于1984年,它被應(yīng)用已有近20年。X也是一個協(xié)議,它定義程序(客戶程序)如何與另一個在遠(yuǎn)程機(jī)器上運(yùn)行的程序(服務(wù)器程序)交換信息。它最早是由數(shù)字設(shè)備公司(DEC)的Jim Gettys與麻省理工大學(xué)(MIT)的Ron Newman和Bob Scheifler共同開發(fā)的。當(dāng)時DEC和MIT想共同開發(fā)一種分布式的計算環(huán)境,X系統(tǒng)就是他們研究成果的一部分,這項工作叫作雅典娜工程。現(xiàn)在X的管理機(jī)構(gòu)是X 聯(lián)盟(www.x.org)。X系統(tǒng)由三部份組成,它們分別是X Server、Xclient和X協(xié)議。

    X Server是控制輸入輸出的程序,它是和底層硬件直接通信的。它接收X client程序的請求做建立窗口、繪制圖形等工作。

    X client是基于X Server的客戶程序,它請求X Server在指定的窗口進(jìn)行各種操作。它不負(fù)責(zé)顯示,只是給X Server發(fā)送一個請求,由服務(wù)器完成動作。

    X 協(xié)議是X Server和X Client之間溝通的語言。Xlib庫能完成這種通信功能,所以可以基于它進(jìn)行X client程序的開發(fā)。

    以下是X系統(tǒng)的幾點(diǎn)優(yōu)勢:

    可移植性。X系統(tǒng)可移植到幾乎所有的計算機(jī)圖形系統(tǒng)下。

    標(biāo)準(zhǔn)化。X window系統(tǒng)提供一個標(biāo)準(zhǔn)的函數(shù)庫和功能調(diào)用集合,抽象了硬件層功能,使程序開發(fā)更標(biāo)準(zhǔn)更快捷。

    網(wǎng)絡(luò)化。它是基于網(wǎng)絡(luò)的圖形界面系統(tǒng)。

    模塊化結(jié)構(gòu)。能方便進(jìn)行功能擴(kuò)展。

    不嵌入操作系統(tǒng)中,適用于幾乎所有的操作系統(tǒng),如linux、solairs、windows等。

    1.2. 版本
    1986年發(fā)布X10.4版

    1987年9月15日發(fā)布X11R1版(X11第一次修訂版)。源程序有19MB,可在4種主要的操作系統(tǒng)下運(yùn)行。

    1988年發(fā)行第二修訂版X11R2。該版提供了很多壓縮的矢量字體,以及第三方軟件商提供的軟件工具。

    1991年8月29日發(fā)布了X11R5版。為X window系統(tǒng)增加了國際化功能。

    1994年4月21日,X11R6發(fā)布。這一版改進(jìn)窗口管理、資源共享、會話管理等功能。

    1996年3月5日發(fā)布了X11R6.1版,支持16種操作系統(tǒng),包括linux內(nèi)核1.2.11。

    1996年12月23日發(fā)布了X11R6.3版,它是X聯(lián)盟轉(zhuǎn)換到TOG(開放工作組,一個非盈利機(jī)構(gòu))前最后的一個X版本。TOG由200個新成員和很多X聯(lián)盟的原創(chuàng)成員組成。

    1998年1月4日,TOG發(fā)布了X11R6.4版。TOG工作組改變X 系統(tǒng)免費(fèi)的許可證政策,如果從銷售X系統(tǒng)中盈利,就須交納年度注冊費(fèi),價格是每5萬個用戶7500美元,隨后又增加到至65000美元。由于新許可政策的實施,導(dǎo)致開源社區(qū)組成一個XFree86工程公司(一個非盈利的機(jī)構(gòu))開發(fā)了一個基于Intel PC平臺的免費(fèi)X系統(tǒng)XFree86。1998年9月TOG也放棄新許可政策,把X11R6.4版的許可恢復(fù)到舊的麻省理工的版本。

    2000年8月15日,X11R6.5.1發(fā)布。源文件容量擴(kuò)充以144Mb,包含8100多個文件、600多種字體、345個手冊頁、20個程序庫、70個圖象和60個客戶程序。現(xiàn)在最新的版本是X11R6.7.0,可以到http://www.x.org下載。

    1.3. XFree86項目介紹
    XFree86項目成立于1994年3月19日。最早的開發(fā)工作始于1992年,由一個開發(fā)小組完成,實現(xiàn)了基于Intel PC平臺的X系統(tǒng)。1994年5月18日發(fā)布的XFree86 2.1版是第一個支持linxu的XFree86版本。2000年5月7日XFree86 4.0版發(fā)布,它是XFree86最重要的一個發(fā)布版,增加了很多功能。XFree86的意思是“提供X服務(wù),它是自由的(free),它是基于Intel的PC平臺”。現(xiàn)在最新的XFree86版是4.4.0。可以到http://www.xfree86.org下載。基于windows平臺也有X window系統(tǒng),如:X-Win32、Extra!X、Exceed等。

    Chapter 2. XFree86系統(tǒng)介紹
    Table of Contents

    2.1. XFree86安裝
    2.2. XFree86配置
    2.3. XFree86的文件系統(tǒng)
    2.4. XFree86字體
    2.5. 啟動X11
    2.5.1. 啟動方法
    2.5.2. 啟用多用戶會話
    2.5.3. 終止X會話
    2.1. XFree86安裝
    安裝軟件與其它軟件大同小異,這里就不詳細(xì)介紹了。

    2.2. XFree86配置
    在XFree86中的配置文件是XF86Config-4,下面介紹幾種配置的工具:

    xf86config是一個基于文本的配置工具。在控制臺運(yùn)行該命令后按提示配置就可以了。

    reconfig用以把舊版的配置文件轉(zhuǎn)換成4.0.1版的配置文件格式。

    可以用$ XFree86 -configure命令由系統(tǒng)自動生成一個叫XF86Config.new的配置文件,可基于這個文件再修改。最后用$ XFree86 -xf86config XF86Config.new進(jìn)行測試。如果成功將出現(xiàn)一個帶“X”的窗口。最后把正確的配置文件拷貝成/etc/X11/XF86Config-4。

    在XFree86 4.0.1后,還可通過xf86cfg這個圖形化程序來進(jìn)行配置。

    在各linux的發(fā)行版中,還包含有各自開發(fā)的配置工具,redhat有Xconfigurator;Mandrake 有DrakConf;SuSE 有SaX。

    下面是一個完整的配置文件例子:

    Section "ServerLayout"? ==============配置標(biāo)識區(qū)
    ??????? Identifier???? "XFree86 Configured"
    ??????? Screen????? 0? "Screen0" 0 0
    ??????? InputDevice??? "Keyboard0" "CoreKeyboard"
    # PS/2 Mouse not detected
    ??????? InputDevice??? "Serial Mouse" "CorePointer"
    # USB Mouse not detected
    EndSection

    Section "ServerFlags" =================X 選項配置區(qū)
    ??????? Option "AllowMouseOpenFail"? "true"? ====允許在鼠標(biāo)配置失敗的情況下啟動X
    ??????? Option "DontZap"?? "true"??????????? ====不能使用Ctrl+Alt+Backspace組合鍵退出X
    ??????? Option "DontZoom"? "true"??????????? ====不能使用Ctrl+Alt+小鍵盤+-來切換顯示模式
    ???????

    EndSection

    Section "Files"???? =========================字體配置區(qū)
    ??????? RgbPath????? "/usr/X11R6/lib/X11/rgb"
    ??????? ModulePath?? "/usr/X11R6/lib/modules"
    # Additional fonts: Locale, Gimp, TTF...
    #?????? FontPath???? "/usr/X11R6/lib/X11/fonts/latin2/75dpi"
    #?????? FontPath???? "/usr/X11R6/lib/X11/fonts/latin2/100dpi"
    # True type and type1 fonts are also handled via xftlib, see /etc/X11/XftConfig!
    ??? FontPath??? "/usr/X11R6/lib/X11/fonts/misc:unscaled"
    ??? FontPath??? "/usr/X11R6/lib/X11/fonts/75dpi:unscaled"
    ??? FontPath??? "/usr/X11R6/lib/X11/fonts/100dpi:unscaled"
    ??? FontPath??? "/usr/X11R6/lib/X11/fonts/PEX"
    ??? FontPath??? "/usr/X11R6/lib/X11/fonts/cyrillic"
    ??? FontPath??? "/usr/X11R6/lib/X11/fonts/TrueType"
    EndSection

    Section "Module"
    ??????? Load? "ddc"? # ddc probing of monitor
    ??????? Load? "dbe"
    ??????? Load? "dri"
    ??????? Load? "extmod"
    ??????? Load? "glx"
    ??????? Load? "record"
    ??????? Load? "xtt"
    EndSection

    Section "InputDevice"???? ================鍵盤配置區(qū)
    ??????? Identifier? "Keyboard0"
    ??????? Driver????? "keyboard"
    ??????? Option????? "CoreKeyboard"
    ??????? Option "XkbRules" "xfree86"
    ??????? Option "XkbModel" "pc105"
    ??????? Option "XkbLayout" "us"

    EndSection

    Section "InputDevice"??? =================串口鼠標(biāo)配置區(qū)
    ??????? Identifier? "Serial Mouse"
    ??????? Driver????? "mouse"
    ??????? Option????? "Protocol" "Microsoft"
    ??????? Option????? "Device" "/dev/ttyS0"
    ??????? Option????? "Emulate3Buttons" "true"
    ??????? Option????? "Emulate3Timeout" "70"
    ??????? Option????? "SendCoreEvents"? "true"
    EndSection

    Section "InputDevice"??? =================ps/2鼠標(biāo)配置區(qū)
    ??????? Identifier? "PS/2 Mouse"
    ??????? Driver????? "mouse"
    ??????? Option????? "Protocol" "auto"
    ??????? Option????? "ZAxisMapping"????????? "4 5"
    ??????? Option????? "Device" "/dev/psaux"
    ??????? Option????? "Emulate3Buttons" "true"
    ??????? Option????? "Emulate3Timeout" "70"
    ??????? Option????? "SendCoreEvents"? "true"
    EndSection

    Section "InputDevice"??? =================usb鼠標(biāo)配置區(qū)
    ??????? Identifier????? "USB Mouse"
    ??????? Driver????????? "mouse"
    ??????? Option????????? "Device"??????????????? "/dev/input/mice"
    ??????? Option????????? "SendCoreEvents"??????? "true"
    ??????? Option????????? "Protocol"????????????? "IMPS/2"
    ??????? Option????????? "ZAxisMapping"????????? "4 5"
    ??????? Option????????? "Buttons"?????????????? "5"
    EndSection

    Section "Monitor"?????? ==================顯示器配置區(qū)
    ??????? Identifier????? "Monitor0"
    ??????? Option? "DPMS"? "true"
    ??????? VendorName????? "MAG"
    ??????? ModelName?????? "MAG9705"
    ??????? HorizSync 30-86# DDC-probed
    ??????? VertRefresh 50-160# DDC-probed
    ??????? # These are the DDC-probed settings reported by your monitor.
    ??????? # 1600x1200, 65.0Hz; hfreq=81.25, vfreq=65.00
    ??????? ModeLine "1600x1200"??? 175.50 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync
    ??????? # 1280x1024, 75.0Hz; hfreq=79.98, vfreq=75.03
    ??????? ModeLine "1280x1024"??? 135.00 1280 1296 1440 1688 1024 1025 1028 1066 +hsync +vsync
    ??????? # 1280x960, 85.0Hz; hfreq=85.40, vfreq=85.00
    ??????? ModeLine "1280x960"???? 148.50 1280 1344 1504 1728? 960? 961? 964 1011 +hsync +vsync
    ??????? # 1024x768, 85.0Hz; hfreq=68.68, vfreq=85.00
    ??????? ModeLine "1024x768"????? 94.50 1024 1072 1168 1376? 768? 769? 772? 808 +hsync +vsync
    EndSection

    Section "Device"?????? ===================顯卡配置區(qū)??????????
    ??????? ### Available Driver options are:-
    # sw_cursor is needed for some ati and radeon cards
    Option "sw_cursor"
    ??????? #Option???? "hw_cursor"
    ??????? #Option???? "NoAccel"
    ??????? #Option???? "ShowCache"
    ??????? #Option???? "ShadowFB"
    ??????? #Option???? "UseFBDev"
    ??????? #Option???? "Rotate"
    ??????? Identifier? "Card0"
    ??????? Driver????? "nv"??????????? =======如果不清楚可選svga或vga
    ??????? VendorName? "NVidia"
    ??????? BoardName?? "GeForce2 MX DDR"
    #?????? BusID?????? "PCI:1:0:0"
    EndSection

    Section "Screen"???? =====================屏幕配置區(qū)
    ??????? Identifier "Screen0"
    ??????? Device???? "Card0"
    ??????? Monitor??? "Monitor0"
    ??????? DefaultColorDepth 24? ============用24位色深
    ??????? SubSection "Display"
    ??????????????? Depth???? 1
    ??????????????? Modes "1024x768" "640x480"
    ??????????????? Virtual 0 0
    ??????? EndSubSection
    ??????? SubSection "Display"
    ??????????????? Depth???? 4
    ??????????????? Modes "1024x768" "640x480"
    ??????????????? Virtual 0 0
    ??????? EndSubSection
    ??????? SubSection "Display"
    ??????????????? Depth???? 8
    ??????????????? Modes "1024x768" "640x480"
    ??????????????? Virtual 0 0
    ??????? EndSubSection
    ??????? SubSection "Display"
    ??????????????? Depth???? 15
    ??????????????? Modes "1024x768" "640x480"
    ??????????????? Virtual 0 0
    ??????? EndSubSection
    ??????? SubSection "Display"
    ??????????????? Depth???? 16
    ??????????????? Modes "1024x768"?
    ??????????????? Virtual 0 0
    ??????? EndSubSection
    ??????? SubSection "Display"
    ??????? SubSection "Display"
    ??????????????? Depth???? 24
    ??????????????? Modes "1024x768" "640x480"
    ??????????????? Virtual 0 0
    ??????? EndSubSection
    ??????? SubSection "Display"
    ??????????????? Depth???? 32
    ??????????????? Modes "1024x768" "640x480"
    ??????????????? Virtual 0 0
    ??????? EndSubSection
    EndSection

    2.3. XFree86的文件系統(tǒng)
    大多數(shù)程序,字體和文件都放在/usr/X11R6目錄下,而其它組件和配置文件則放在/etc/X11目錄下,一些始化程序如xfs字體服務(wù)器就放到系統(tǒng)初始化目錄/etc/init.d目錄下。下面是一個XFree86系統(tǒng)目錄列表:

    Table 2.1. XFree86文件系統(tǒng)目錄清單

    目錄 描述
    /etc/X11 X配置文件
    /usr/X11R6/bin X程序
    /usr/X11R6/include X11程序開發(fā)所需的#include文件和圖形
    /usr/X11R6/lib X程序共享庫
    /usr/X11R6/lib/X11 配置文件,應(yīng)用程序資源文件文檔、字體及國際化文件
    /usr/X11R6/lib/modules XFree86模塊(驅(qū)動程序、擴(kuò)展文件、字體文件等)
    /usr/X11R6/man X手冊頁
    /usr/X11R6/share 各種X客戶程序共享的資源文件

    2.4. XFree86字體
    可以在本地或遠(yuǎn)程安裝字體。單機(jī)上運(yùn)行的linux的字體目錄主要是在/usr/X11R6/lib/X11/fonts目錄下。有幾個工具用以管理字體,分別是:

    mkfontdir用來在字體目錄下創(chuàng)建字體名數(shù)據(jù)庫。

    xlsfonts用來列出已安裝字體。

    xfontsel用來顯示從字體集中選中的各種字體。

    xfd用來顯示在X字體中的字符。

    xset -q可查看字體的路徑

    在fonts目錄下列有已安裝的各種字體目錄,如100dpi/、75dpi/、misc/等,每個目錄下都有一個fonts.dir和一個fonts.alias文件。fonts.dir文件是字體列表數(shù)據(jù)庫,X 和xfs字體服務(wù)器用這個文件查找字體;fonts.alias文件包含兩欄信息:名字和別名。可以利用這個文件給已有的字體創(chuàng)建新名字。Encodings目錄中的是Type1 (也稱TrueType)的字體編碼。這些信息用來在顯示器上繪制可縮放字體。

    XFree86還可使用遠(yuǎn)程XFree86 服務(wù)器上的字體,從而減少本地的字體存儲空間,主要通過配置字體服務(wù)器xfs完成。為利用遠(yuǎn)程服務(wù)器上提供的字體,可用xset +fp unix/remote.org:7100命令可把遠(yuǎn)程X 服務(wù)器提供的字體增加到當(dāng)前顯示字體路徑中。在單機(jī)上運(yùn)行xfs時,可以用一個單一的設(shè)置代替XF86Config文件中列出的字體列表:

    Fontpath "nuix/:7100"

    不過,具體操作還沒測試過。

    Xresources文件位于/etc/X11目錄下,該文件包含所有客戶程序的默認(rèn)資源管理信息。如emacs,vim。emacs*Background:DarkSlateGray表示把emacs程序的背景設(shè)置為灰色。這樣任何用戶在你計算機(jī)上啟動emacs編輯器,將使用灰色的背景。除非用本地設(shè)置來使之失效。

    2.5. 啟動X11
    X window的啟動過程是由xinit客戶端程序控制的,先啟動X Server,接著啟動窗口管理器,最后啟動用戶應(yīng)用程序。用戶主目錄下的.xinitrc文件就是控制xinit程序啟動什么窗口管理器、顯示管理器和程序的文件。一般啟動X window的方法有如下幾種:

    2.5.1. 啟動方法
    各種linux的發(fā)行版都把運(yùn)行級別5定為x window模式,所以最簡單的方式是修改/etc/inittab文件,把系統(tǒng)的默認(rèn)運(yùn)行級別定為5,重啟系統(tǒng)就可以了。有關(guān)系統(tǒng)運(yùn)行級別的設(shè)置方法和原理可參考有關(guān)資料或man手冊頁。

    我們也可以用startx腳本從shell中手動啟動x window。啟動startx后,它會進(jìn)行一些環(huán)境變量的測試,它會搜查xclient的位置:$HOME/.xinitrc和/etc/X11/xinit/xinitrc,還有xserver的位置:$HOME/.xserverrc和/etc/X11/xinit/xserverrc。如果主目錄有配置文件就會優(yōu)先使用,首先,xinit先執(zhí)行.xserverrc的內(nèi)容,如果找不到該文件,則用/etc/X11/xinit/xinit/xserverrc,如果都沒有,就執(zhí)行 X :0,啟動X Server。接著xinit就會執(zhí)行用戶主目錄下.xinitrc配置文件的內(nèi)容。如果沒有則到/etc/X11/xinit/下找xinitrc文件,如果都找不到,則執(zhí)行xterm -geometry +1+1 -n login -display :0。一個簡單的.xinitrc配置文件如下:

    export LANG=zh_CN.GB2312?????????????? ======這兩行是設(shè)置中文環(huán)境變量
    export? LC_ALL=zh_CN.GB2312
    export XMODIFIERS="@im=Chinput"??????? ======設(shè)置Chinput為中文輸入法
    chinput&?????????????????????????????? ======啟動chinput輸入法服務(wù)器
    wmaker&???????????????????????????? ======啟動window maker窗口管理器
    用startx啟動X的過程就是這樣的。

    還有一個程序叫X,它只是啟動X Server進(jìn)入X環(huán)境,所以可用它來測試X Server服務(wù)是否成功啟動。啟動X后,可按Ctrl+Alt+F7切換到X界面。

    2.5.2. 啟用多用戶會話
    如果有足夠多的內(nèi)存,可以用startx命令啟動多個X會話。首先我們要啟動到非X多用戶模式下,如運(yùn)行級別3。運(yùn)行以下命令:$ startx -display :0 -vt7啟動第一個會話,運(yùn)行$ startx -display :1 -vt8啟動第二個會話,可用Ctrl+Alt+F7/F8進(jìn)行會話切換。

    2.5.3. 終止X會話
    一種方法是通過窗口管理器的注銷功能或在終端中打入logout,一種是通過Ctrl+Alt+Fn切換到其它控制臺,再用kill終止。

    Chapter 3. X11客戶程序常用選項
    Table of Contents

    3.1. X程序常用選項
    3.2. 使用客戶程序資源
    3.1. X程序常用選項
    Table 3.1. X程序常用選項

    命令行選項 描述
    -bg color or -background color 設(shè)置背景色
    -bd color or -bordercolor color 設(shè)置窗口邊框色
    -bw n or -borderwidth n 設(shè)置窗口邊框的寬度,n的單位是象素
    -fg color 設(shè)置前景色
    -fn font 設(shè)置字體
    -geometry 寬X高+/-X偏移量+/-Y偏移量 指定客戶程序窗口的寬度,高度和在桌面上的位置
    -iconic 以最小化的狀態(tài)啟動客戶端程序
    -title string 設(shè)置窗口標(biāo)題

    以上參數(shù)只是一些程序常用的,有些程序可能不支持,要詳細(xì)了解可使用命令的-h或--help參數(shù)查詢,如rxvt --help。

    3.2. 使用客戶程序資源
    可使用資源設(shè)置文件為客戶程序設(shè)置各種默認(rèn)的屬性,如字體、顏色等。這些客戶程序資源文件一般保存在/usr/X11R6/lib/app-defaults目錄下。可用$ appres xclock的形式來顯示xclock程序的資源文件內(nèi)容。我們可以用editres程序來更改客戶程序的資源。還可以用xrdb來配置系統(tǒng)級別的資源。

    Chapter 4. X window的網(wǎng)絡(luò)應(yīng)用
    Table of Contents

    4.1. 遠(yuǎn)程會話
    4.2. 遠(yuǎn)程桌面
    4.3. 安全問題
    X 系統(tǒng)的網(wǎng)絡(luò)模型是基于客戶機(jī)/服務(wù)器的體系結(jié)構(gòu)。客戶機(jī)能遠(yuǎn)程登錄進(jìn)來,進(jìn)行各種圖形顯示應(yīng)用。

    4.1. 遠(yuǎn)程會話
    有兩臺X系統(tǒng),一臺A,一臺B。通過X系統(tǒng)的遠(yuǎn)程會話可以把A的xclock應(yīng)用程序顯示在B的顯示器上。具體的操作步驟如下:

    首先要在兩臺電腦上安裝X系統(tǒng)。在A電腦上以不帶-nolisten tcp選項啟動X(在Xsession里設(shè)置)。并在B上執(zhí)行$ xhost + A,允許A電腦訪問。

    在A電腦上執(zhí)行$ xclock -display B:0.0&,B的顯示器上就會顯示xclock時鐘。

    連接完成后在B上要用$ xhost -A,取消A的遠(yuǎn)程訪問權(quán)限。

    利用該功能,我們也可以利用telnet或ssh登錄到遠(yuǎn)程服務(wù)器,在遠(yuǎn)程服務(wù)器上運(yùn)行應(yīng)用程序,再把顯示傳回本地顯示。

    上面介紹的是基于主機(jī)的認(rèn)證會話方式,還有一種更安全的基于cookis的認(rèn)證方式,它要用到xauth這個程序,用它可生成一個本機(jī)的cookis保存在.Xauthority文件中,要進(jìn)行認(rèn)證需把它拷貝到另一臺機(jī)的.Xauthority文件中。這樣兩臺機(jī)就有了相同的cookis,連接時就可用于認(rèn)證。在xauth里有兩個有用的程序,一個是extract用于把cookis導(dǎo)出成一個文件,merge用于把導(dǎo)出的文件導(dǎo)入.Xauthority文件中。

    4.2. 遠(yuǎn)程桌面
    可以利用Xvnc軟件,實現(xiàn)遠(yuǎn)程桌面應(yīng)用。該軟件包括服務(wù)器和客戶端,能讓你在一臺linux客戶機(jī)上登錄遠(yuǎn)程系統(tǒng)的桌面。包括windows、Machintosh、Solaris等。Xvnc是由英國劍橋的AT&T研究室研制。使用方法如下:

    在A電腦上運(yùn)行$ vncserver -geometry 800x600,啟動服務(wù)器。

    在B電腦上運(yùn)行$ vncviewer A:1,連接A系統(tǒng)桌面,桌面大小是800x600。

    4.3. 安全問題
    可利用xterm的安全鍵盤功能。操作方法如下:

    在本地X會話過程中啟動用戶系統(tǒng),$ xterm&。

    然后把光標(biāo)移到終端窗口內(nèi)空白地方,按下Ctrl+單擊鼠標(biāo)左鍵,在彈出的快捷菜單中選中“Secue Keyboard”。這時,終端窗口使用相反的前后景色。這樣,只有這個窗口可以輸入信息,其它任何程序和窗口都不能輸入信息。

    為了加強(qiáng)安全,還可以使用xfwp設(shè)置一個X防火墻。

    Chapter 5. X系統(tǒng)客戶程序介紹
    Table of Contents

    5.1. 環(huán)境設(shè)置命令
    5.2. 小工具
    5.1. 環(huán)境設(shè)置命令
    用xset進(jìn)行個性化設(shè)置,可以設(shè)置屏保、鼠標(biāo),顯示器的能源之星特性(DPMS)等
    $ xset -q 可以顯示當(dāng)前設(shè)置。

    $ xset s on 打開屏幕保護(hù)。

    $ xset s 60 設(shè)置屏保激活的時間為1分鐘。

    $ xset s off 關(guān)閉屏幕保護(hù)。

    $ xset m "1 6",放慢鼠標(biāo)移動速度,$ xset m "30 10",加快鼠標(biāo)移動速度,$ xset m "default",重置鼠標(biāo)移動速度。

    用xsetroot設(shè)置根窗口顯示背景,鼠標(biāo)圖案等。
    $ xsetroot -solid black,把窗口背景設(shè)置為黑色。

    $ xsetroot -bitmap /usr/X11R6/include/X11/bitmaps/test.bmp,用test.bmp作為桌面背景

    $ xsetroot -cursor_name xxx。設(shè)置鼠標(biāo)圖案。$ xsetroot -cursor_name X_cursor,重置鼠標(biāo)圖案。

    通過xmodmap來重新排列鍵盤上的按鍵。
    要使用xmodmap這個程序,需要有一個.Xmodmap的配置文件,配置按鍵的位置。配置文件內(nèi)容如下:

    remove Lock = Caps_Lock
    remove Control = Control_L
    keycode 0x42 = Caps_Lock
    keycode 0x25 = Control_L
    add Lock = Control_L
    add Control = Caps_Lock
    接著調(diào)用$ xmodmap .xmodmap進(jìn)行設(shè)置。

    為了更好設(shè)置,可以調(diào)用xev程序進(jìn)行鍵位測試。

    $ xmodmap -e "pointer = 3 2 1" 可以把鼠標(biāo)的左右鍵對調(diào)。

    xhost用于控制網(wǎng)絡(luò)上哪些主機(jī)允許存取本地顯示屏幕。
    $ xhost +,允許所有主機(jī)存取本機(jī)顯示屏幕,這樣是很不安全,請使用時注意。

    $ xhost -,禁止所有用戶存取本機(jī)顯示屏幕。

    $ xhost + test,允許test這臺機(jī)存取本機(jī)顯示屏幕,也可以用IP地址。

    5.2. 小工具
    xwd and xwud可截取和顯示屏幕畫面
    $ xwd -out test.xwd 按下回車后,光標(biāo)變成一個卷發(fā)型,移動光標(biāo)到要截取的窗口上,按左鍵就可以了。圖形保存在當(dāng)前目錄下。

    $ xwd -root -display B:0.0 -out test.xwd,用-root表示截取整個顯示內(nèi)容。

    $ xwd < test.xwd,顯示圖形。

    用xbiff提示電子郵件到達(dá)信息,用xeyes顯示眼睛圖像,用xlogo顯示X標(biāo)識,用xclock顯示時間,用xmag放大區(qū)域。
    $ xbiff -update 15 -volume 100 -geometry 100x100 -fg white -bg blue。

    $ xeyes -fg red -center yellow。

    $ xlogo -fg black -bg lightgreen。

    $ xclock -d -update 1 -fg black -bg lightgreen,-d表示顯示數(shù)字時鐘。

    $ xmag ,回車后,光標(biāo)變成一個L型,然后,在你想放大的地方按鼠標(biāo)左鍵,則會把該區(qū)放大。

    利用Pilot-xfer來與PDA通信。
    詳細(xì)內(nèi)容請參考相關(guān)資料。

    xload可顯示系統(tǒng)狀態(tài)。
    $ xload&

    xman可顯示手冊頁
    $ xman

    editres可獲得和修改Xclient程序的資源信息。
    $ editres。

    xlsclients可列出當(dāng)前X Server中運(yùn)行的客戶程序。
    $ xlsclients

    Chapter 6. X11多媒體客戶程序介紹
    GIMP,一個圖象處理軟件。

    SANE(Scanner Access Now Easy),一個掃描儀支持軟件包。

    Gun OCR/JOCR,光學(xué)字符識別軟件。

    gPhoto,數(shù)碼相機(jī)支持軟件,支持超過100種相機(jī)。

    Xine,xmms,mplayer,realplay,多媒體播放軟件

    Krabber,mp3轉(zhuǎn)換工具。

    Chapter 7. 顯示管理器
    Table of Contents

    7.1. xdm的配置
    顯示管理器是負(fù)責(zé)管理X會話和登錄的,在GNOMN中的是gdm,在KDE中的是kdm,還有一個早期使用過的xdm。顯示管理器的作用和xinit差不多,都是控制進(jìn)行X Server時要執(zhí)行的工作。但顯示管理器有以下優(yōu)勢。我們完全可用顯示管理器替代xinit。

    顯示管理器可同時控制多個X Server。

    它是循環(huán)執(zhí)行的,可確保我們始終以X window圖形界面登錄。

    它的可配置性很強(qiáng)。能為每個用戶配置不同的系統(tǒng)環(huán)境。

    為用戶提供一種簡單的登錄方式。

    7.1. xdm的配置
    xdm的配置文件位于/etc/X11/xdm目錄下,首先應(yīng)查詢xdm-config文件。系統(tǒng)會先讀取該文件的配置信息。xdm-config文檔的內(nèi)容如下:

    ! $Xorg: xdm-conf.cpp,v 1.3 2000/08/17 19:54:17 cpqbld Exp $
    !
    ! $XFree86: xc/programs/xdm/config/xdm-conf.cpp,v 1.7 2001/01/17 23:45:24 dawes Exp $
    !
    DisplayManager.errorLogFile:/var/log/xdm.log??????????? ====出錯日志文件路徑
    DisplayManager.pidFile:/var/run/xdm.pid
    DisplayManager.keyFile:/usr/X11R6/lib/X11/xdm/xdm-keys
    DisplayManager.servers:/usr/X11R6/lib/X11/xdm/Xservers? ====X Server服務(wù)器啟動的配置文件
    DisplayManager.accessFile:/usr/X11R6/lib/X11/xdm/Xaccess? ====控制多個圖形終端時的配置文件
    DisplayManager.authDir:/var/lib/xdm
    DisplayManager.willing:su nobody -c /usr/X11R6/lib/X11/xdm/Xwilling
    ! All displays should use authorization.
    ! X terminals may not be configured that way, so they will require
    ! individualized resource settings.
    DisplayManager*authorize:true
    ! Scripts to start the server, start the user session, and reset the server
    DisplayManager*setup:/usr/X11R6/lib/X11/xdm/Xsetup
    DisplayManager*startup:/usr/X11R6/lib/X11/xdm/Xstartup
    DisplayManager*reset:/usr/X11R6/lib/X11/xdm/Xreset
    DisplayManager*resources:/usr/X11R6/lib/X11/xdm/Xresources? ====啟動時的資源配置文件
    DisplayManager*session:/usr/X11R6/lib/X11/xdm/Xsession????? ====啟動及周期配置文件
    DisplayManager*authComplain:true
    !
    DisplayManager*userPath:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
    DisplayManager*systemPath:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11

    DisplayManager*loginmoveInterval:10

    ! SECURITY: do not listen for XDMCP or Chooser requests
    ! Comment out this line if you want to manage X terminals with xdm
    DisplayManager.requestPort:0

    Xservers中列出xdm所管理的X Server的列表。如::0 local /usr/X11R6/bin/X -vt7

    Xresourdes中列出了資源的名單,在登錄窗口啟動之前被xrdb加載。如:可通過該文件修改登錄窗口的屬性。

    Xsession中列出在一個會話周期內(nèi)所運(yùn)行的程序。最后一行所執(zhí)行的程序可以持續(xù)整個管理周期。當(dāng)該程序結(jié)束,則周期結(jié)束。需要把除最后一行外的所有程序放在后臺運(yùn)行。如果不這樣做,周期將可以會出掛起或出錯。如:執(zhí)行twm行省略了"&",則它后面的程序?qū)⒉粫\(yùn)行,直到twm程序結(jié)束。另外,最后的一行程序必須是可執(zhí)行的命令,因為它將不間斷地執(zhí)行且保持你的周期繼續(xù)活動。如果你把它放在后臺運(yùn)行,雖然它同樣會順利地執(zhí)行,但此周期程序執(zhí)行至配置文件結(jié)束時將會中斷,因而造成周期的結(jié)束。如果不用exec引導(dǎo)程序,而且省略“&”。則最后一行的程序也將會順利地執(zhí)行且此周期將不斷地持續(xù)工作,比如:xterm -geometry -0+50 -ls -C。-C表示使xterm成為一個控制臺終端,使所有的系統(tǒng)信息在該窗口中顯示。-ls表示使它的shell成為login shell。如果可使shell讀入你的login或profile,所以你自已設(shè)定的環(huán)境變量會自動設(shè)定。

    Chapter 8. 窗口管理器
    Table of Contents

    8.1. WindowMaker
    8.2. fvwm\fvwm2\fvwm95
    8.3. enlightenment
    8.4. mwm
    8.5. twm
    8.6. icewm
    8.7. Sawfish
    8.8. blackbox
    X Server只負(fù)責(zé)程序的運(yùn)行和輸入輸出,窗口界面它沒有定義和管理,它要靠一種叫窗口管理器的軟件來負(fù)責(zé)。這也是X window靈活強(qiáng)大的功能之一。通過不同的窗口管理器,你可以定義出千變?nèi)f化的窗口環(huán)境,突顯你的個性,要多酷有多酷。下面對一些常用的窗口管理器進(jìn)行簡單的介紹。

    8.1. WindowMaker

    8.2. fvwm\fvwm2\fvwm95

    8.3. enlightenment

    8.4. mwm

    8.5. twm

    8.6. icewm

    8.7. Sawfish

    8.8. blackbox

    Chapter 9. 桌面環(huán)境
    Table of Contents

    9.1. GNOMN
    9.2. KDE
    9.3. CDE
    桌面環(huán)境是一種工作環(huán)境,里面有窗口管理器,有系統(tǒng)管理程序,有文件管理程序和一些工具軟件的集合。所以它可以說一個集成的環(huán)境,用于辦公、娛樂等。在linux下比較流行的桌面環(huán)境有兩個,一個是基于GTK+的GNOMN(GNU Network Object Model Environment)和一個是基于Qt的KDE(K Desktop Environment)。

    9.1. GNOMN

    9.2. KDE

    9.3. CDE

    Chapter 10. X web
    在X11R6.4中提供了一種基于Web的X window解決方案叫broadway。它能使X window系統(tǒng)具有通過Web協(xié)議訪問X應(yīng)用程序能力,即X web。X web的體系結(jié)構(gòu)包括5個關(guān)健部分:

    遠(yuǎn)程執(zhí)行---提拱遠(yuǎn)程啟動X 應(yīng)用程序的機(jī)制。

    一致性訪問---集成X11R6.4和Http協(xié)議,提供獨(dú)立于平臺的一致性訪問,使它具有廣泛的可用性。

    Web瀏覽器插入---結(jié)合遠(yuǎn)程執(zhí)行,提供在瀏覽器中顯示應(yīng)用程序執(zhí)行結(jié)果的功能。

    安全機(jī)制---用區(qū)分可信(內(nèi)部)和不可信(外部)應(yīng)用程序的方法提供安全機(jī)制。它的實現(xiàn)包括3部分,第一是擴(kuò)充的pc機(jī)X 服務(wù)器功能;第二是增加防火墻的X 代理功能;第三是為用戶提供控制在可信和不可信程序間交換數(shù)據(jù)的界面。

    LBX(窄帶X )---用于改進(jìn)X在廣域網(wǎng)和低速拔號網(wǎng)絡(luò)上的性能,使用的技術(shù)包括高速緩沖、數(shù)據(jù)壓縮和簡化應(yīng)答。

    X web是一種分布式的應(yīng)用,這也是X window系統(tǒng)設(shè)計時初衷。但由于當(dāng)時分布式計算技術(shù)環(huán)境的不完善,使得它的功能在當(dāng)時的環(huán)境下實現(xiàn)不了。現(xiàn)在,隨著計算技術(shù)的飛速發(fā)展,如低成本寬帶網(wǎng)絡(luò)的迅速擴(kuò)張,高性,低成本的CPU的使用,操作系統(tǒng)功能的不斷完善,開發(fā)工具和方法的不斷改進(jìn)等,分布式計算環(huán)境已較完善,X window的分布式應(yīng)用已漸漸成為現(xiàn)實。

    X web是一種較新的技術(shù),具體還沒有測試過,有興趣的朋友可到http://www.broadwayinfo.com網(wǎng)站了解一下。

    posted on 2006-06-01 10:33 bluesky 閱讀(3615) 評論(1)  編輯  收藏 所屬分類: 記事本

    評論

    # re: [ZT]XFree86學(xué)習(xí)筆記 2016-06-14 15:04 http://www.villatatin.fr

    I really impressed by your post.
      回復(fù)  更多評論    
    主站蜘蛛池模板: 亚洲免费闲人蜜桃| 亚洲AV成人片色在线观看高潮| 免费A级毛片无码A∨男男| 亚洲国产黄在线观看| 国产亚洲人成网站在线观看不卡| 久久青青成人亚洲精品| 亚洲另类春色国产精品| 婷婷亚洲综合一区二区 | 亚洲国产美国国产综合一区二区 | 亚洲日韩图片专区第1页| 亚洲Av高清一区二区三区| 国产精品日本亚洲777| 中文字幕乱码系列免费| 国产成人精品免费午夜app| 日本特黄特色免费大片| 国产亚洲美女精品久久久2020 | 国产精品亚洲一区二区在线观看| caoporm超免费公开视频| 777成影片免费观看| 四虎AV永久在线精品免费观看| 亚洲人成人77777网站| 亚洲国产日韩在线一区| 四虎影视永久在线精品免费| 无码日韩精品一区二区免费暖暖| 成人免费无码大片a毛片| 亚洲中文久久精品无码| ass亚洲**毛茸茸pics| 成人片黄网站色大片免费观看cn| 最近2019中文字幕免费直播| 国产一级淫片a视频免费观看| 亚洲av无码乱码国产精品| 亚洲youwu永久无码精品| 日韩免费高清播放器| 成年性羞羞视频免费观看无限| 国产AV无码专区亚洲AV手机麻豆| 久久精品国产亚洲AV蜜臀色欲| 国产99久久久久久免费看| 一二三四在线观看免费高清中文在线观看 | 亚洲AV综合色区无码二区爱AV| 一级一片免费视频播放| 久久午夜免费视频|