<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

理解 Xwindow

作者: 時(shí)間:2016-09-12 來(lái)源:網(wǎng)絡(luò ) 收藏

做一個(gè)有趣的試驗

現在我們來(lái)做一個(gè)試驗來(lái)引起你對 的興趣。

很多人離開(kāi)了 xdm 就不知道怎樣啟動(dòng) 了。其實(shí) Xwindow 的啟動(dòng)方式很簡(jiǎn)單。

首先,啟動(dòng)你的 X server。在 Linux 下,你可以直接輸入 X,讓一個(gè) X server 在后臺運行。這樣,一個(gè)占據整個(gè)屏幕的布滿(mǎn)斜紋的窗口(根窗口)就出現了。如果是 Exceed 或者 X-win32,你需要把屏幕設置為 single window 才能看到這個(gè)窗口。

接著(zhù),Linux 用戶(hù)需要用 xauth 給你的 X server 設置一個(gè)密碼,這樣別人就不能非法連接你的 X server。你需要 Ctrl-Alt-F1切換到tty1才能輸入這個(gè)命令。Exceed 和 X-win32 的用戶(hù)不需要這步。以下的例子只用 Linux 作為實(shí)例,其它系統的用戶(hù)可以依葫蘆畫(huà)瓢。

xauth add :0 . `mcookie`

好了,現在你可以試試啟動(dòng)一個(gè) xterm 到這個(gè) X server 上:

xterm -display :0

按 Alt-F7 切換到 X,你看到了一個(gè)不受窗口管理器管理的 xterm。試試移動(dòng)它呢?再切換到 tty1 啟動(dòng)另一個(gè) xterm,兩個(gè) xterm 重合了嗎?你怎樣在第一個(gè) xterm 里輸入呢?這樣用起來(lái)很痛苦吧?那么你可以在 xterm 里啟動(dòng)一個(gè)窗口管理器,比如 twm,直接運行 twm 就行了。

你發(fā)現xterm的窗口都被加上了標題欄,按鈕和邊框,你現在可以移動(dòng)它們了。試試把 twm 殺死,看看那些標題欄,按鈕,邊框是不是都消失了?你知道了窗口管理器的作用了吧。

現在告訴你怎樣不用 XDMCP broadcast,繞過(guò) CDE 的登陸界面,而使用 Sun 機器上的 CDE。其實(shí)你只需要把剛才那個(gè)例子里的 twm 換成 CDE 的窗口管理器 dtwm 就行了,或者啟動(dòng) dtsession。它們一般在 /usr/dt/bin 下。Sun 還有另外一個(gè)窗口管理器叫做 OpenLook, 它在系統里的名字叫做 olwm,你自己找找吧。

現在如果你自己在 Sun 機器上裝一個(gè) FVWM,你知道怎么繞過(guò) CDE 登錄而啟動(dòng) FVWM 了吧?你不需要成為 root 就可以使用你喜歡的FVWM了。

.Xdefaults 文件的作用

弄明白 X 的工作原理后,你就可以使用 .Xdefaults 來(lái)配置你的程序了。有人不理解 .Xdefaults 是用來(lái)干什么的,喜歡用 shell alias 出一些帶有很多參數的命令,或者寫(xiě)一些 shell script,里面只有一行帶有很多參數的程序調用,然后他說(shuō): “.Xdefaults 沒(méi)用。”

其實(shí) .Xdefaults 比起這些辦法有很多好處。首先,幾乎所有的 X 客戶(hù)程序都可以從 .Xdefaults 文件得到配置信息,比如前景色,背景色,字體…… 這樣你可以在同一個(gè)文件里配置所有 X 程序的樣式,而不用寫(xiě)那么多 shell script。

另外,如果你用 xrdb .Xdefaults 把這些配置信息寫(xiě)入到根窗口的數據結構里,不是本地機器上的 X 程序也會(huì )遵守同樣的樣式。比如如果你的 .Xdefaults 里面有這些內容:

XTerm.background: midnightblue

XTerm.foreground: white

然后你用 xrdb ~/.Xdefaults,那么所有的 xterm 都會(huì )使用 midnightblue 作為背景色,使用白色顯示字符。這些配置,用X術(shù)語(yǔ)叫資源(resource)。

有時(shí)候你會(huì )開(kāi)很多 xterm 窗口在機器上,它們來(lái)自不同的遠程機器,這時(shí)候如果它們都用同樣的樣色和字體,你就不容易分辨它們了。比如有一天,我在實(shí)驗室的PC機上打開(kāi)了很多 xterm,它們來(lái)自本機,實(shí)驗室的 Sun 服務(wù)器,我宿舍的機器和數據庫實(shí)驗室一臺 HP 服務(wù)器。在我走之前,想關(guān)閉本地的機器,我輸入 “shutdown -h now” 在一個(gè)我自認是本地的 xterm 上,結果,等了一會(huì )兒,我回頭看到機器沒(méi)關(guān)掉,只是那個(gè) xterm 停止了響應。我一拍腦袋:糟了,我把宿舍的機器給關(guān)掉了!

為了避免這種情況,你可以在不同的機器上編輯不同的 .Xdefaults,而不使用 xrdb 在根窗口導入這些配置。這樣不同的機器上的 xterm 使用不同的顏色,你就不容易搞錯了。

怎樣更加深入的了解 Xwindow?

哎喲!我本來(lái)想寫(xiě)很多東西,后來(lái)發(fā)現要需要寫(xiě)的實(shí)在太多了。我沒(méi)那么多時(shí)間,沒(méi)辦法,給參考書(shū)目吧,你們自己去看。

學(xué)習使用 Xwindow 不是學(xué)習使用 Gnome,KDE,…… 很多書(shū)籍教用戶(hù)怎樣使用 Gnome, KDE 的菜單,配置程序…… 結果到了最后用戶(hù)還是沒(méi)能知道 Xwindow 是怎么回事。用那些菜單誰(shuí)不會(huì )啊?真是浪費大家時(shí)間。

學(xué)習 Xwindow,其實(shí)最好的一個(gè)辦法是看看 Xlib 編程的書(shū)籍,你可以在圖書(shū)館找到這樣的書(shū),我推薦 O'reily 的那本 Xlib 程序設計書(shū)(我忘了名字了),雖然它很老,但是那上面講解的 Xwindow 的工作原理一直都沒(méi)有變過(guò)。

如果你不會(huì )編程序,你可以不看編程的部分而得到很多深入的概念上的認識,比如窗口屬性,字體,顏色,…… 這些東西在你使用 Xwindow 時(shí)會(huì )有很大幫助。如果你真的要編寫(xiě) Xlib 程序,這本書(shū)就過(guò)時(shí)了一點(diǎn),你最好到 www.x.org去免費下載最新的 Xlib 手冊來(lái)看。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: Xwindow

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>