Xlib 基礎概念

2021-06-07 09:59:28 字數 1451 閱讀 7540

1.1 乙個display 包含了乙個或者多個screen, 是乙個集合了鍵盤,滑鼠和乙個或多個screen 的工作站。

1.2  x協議(x protocol)是x 客戶程式和伺服器進行通訊的一套協定,x 協議支援網路,能在本地系統中和網路實現這個協議,支援的網路協議有tcp/ip, decnet等。

1.3  xserver 是控制每個display 的程式,乙個xserver 可以允許xclient 對display 的訪問、解釋來自xclient 的網路資料、通過網路資料將使用者輸入傳送給xclient、繪製二維圖形和儲存一些複雜資料結構(windows, cursors, fonts and "graphics context")並把這些儲存為resource 以便在xclient 之間共享。一台計算機可以跑若干個xserver,每個xserver 又連線到乙個或者多個display。

1.4 xclient 是使用到xwindow 系統功能的應用程式,它是xserver 的客戶,要求xserver 回應它的請求來完成相應動作(xclient本 身無法控制display)。

1.5  xwindow 系統的server-client 模型:和普通網路中的server-client 模型一樣,但是模型的物件都是程序而非使用者。使用者通過xserver 來對display 進行操作,而xclient 可以執行在本地或者遠端計算機上。就是說server 有控制目標硬體的能力,而client 只能執行程式,必須通過server 才能實現輸入輸出。這種模型增強了可移植性,且xclient 可以執行在任何可能的裝置上,發揮了網路的威力。

6. 視窗管理器(wm)是乙個普通的xclient,和其他xclient 執行在同一主機上並且共享乙個xserver。 wm 和普通的 xclient 最大的區別就是在呼叫 xcreatewindow () 時,需要將最後乙個引數 xsetwindowattributes *attributes 中的 bool override_redirect 設定為true,這樣以後xserver 執行其它 xclient 呼叫的 xcreatewindow () 請求時就會將請求重定向到設定了 override_redirect 的 xclient, 也就是視窗管理器程序,視窗管理器程序則為這個視窗建立乙個父視窗,也就是邊框視窗。wm 只有「權利」而沒有「責任」,程式必須擁有和任何wm合作的能力,而wm 不用考慮和程式的協作問題。

2.1 經由x 協議(x protocol)的資料報有4 種:request、reply、event 和error

2.2 xlib 會對request 進行快取(buffering)而非立刻傳送給xserver。在下面的三種情況下,快取會被傳送      

XLib程式設計手冊 簡介

xlib c語言的x介面是乙個參考指南,以低層c語言介面的x視窗系統協議。它既不是編寫x window系統的教程,也不是使用者指南。相反,它提供了庫中每個函式的詳細描述以及相關背景資訊的討論。xlib c語言x inte ce假定對圖形視窗系統和c程式語言有基本的了解。其他高階抽象 例如,由工具包為...

XLib程式設計 標準標頭檔案

標準標頭檔案 以下包含的檔案是xlib標準的一部分 x11 xlib.h 這是xlib的主標頭檔案。大多數的xlib符號都是通過包含這個檔案來宣告的。該檔案還包含預處理器符號xlibspecificationrelease。這個符號被定義為6。xlib的release 5首次引入這個符號 x11 x...

python基礎概念 python基礎概念

當你輸入name input 並按下回車後,python互動式命令列就在等待你的輸入了。這時,你可以輸入任意字元,然後按回車後完成輸入。要列印出name變數的內容,除了直接寫name然後按回車外,還可以用print 函式 以 開頭的語句是注釋,注釋是給人看的,可以是任意內容 整數python可以處理...