- 1、本文档共69页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
X Window研究笔记
X Window研究笔记(1)
转载时请注明出处和作者联系方式作者联系方式:李先静 xianjimli at hotmail dot com有不少朋友发邮件给我,询问关于TinyX的一些问题,最常见的是编译错误和字体显示问题。因为我们后来改用DirectFB作为显示后端了,所以很久没有再玩X Window了,我这里没有调试环境,也没有时间去帮大家调试。希望大家原谅。虽然X Window是一个非常复杂的系统,但只要静下心来分析,通常遇到的问题也是很容易解决的,前年我花了一段时间去研究X Window的实现,我发现了解它的实现后,很多问题都迎刃而解了。最近我会整理一下当时的笔记,放到这里供有兴趣的朋友参考。缩略语清单:
BDF Bitmap Distribution FormatDBE Double Buffer ExtensionDIX Device IndependentDDX Device DependentICCCM The Inter-Client Communication Conventions ManualDMX distributed multihead X systemDMPS Display Power Management SignalingDPS Display PostscriptDRI Direct Rendering InterfaceEVI Extended Visual InformationFS Font ServiceICE Inter-Client ExchangeRX remote executeCUP Colormap Utilization Policy and ExtensionDMCP Display Manager Control ProtocolXIM X Input Method ProtocolXI X11 Input Extension ProtocolXSMP X Session Management ProtocolXP X Print ServiceXPM X PixMap FormatXTrans X Transport InterfaceGC Graphic context
1.序X Window是一个典型的幕后英雄,很多人在用 Xwindow,但是由于他们并不直接和X Window交互,而是使用基于X Window实现的像QT和GNOME这样的桌面环境。结果,很多人不知道X Window的存在,甚至以为X Window是过时了东西。还有的人虽然知道X Window的存在,但认为X Window会占用了大量的资源,非常不稳定,称X Window为垃圾,这又走了另外一个极端,误以为整个桌面环境都是属于X Window的。事实上,X Window是一个非常经典的系统,经过二十多年的发展,它不但变得很稳定,而且被雕琢得非常精致,里面采用很多先进的设计思想。就体积而言,它也并不庞大,为嵌入式系统而精简的TinyX,可执行文件仅仅有几百K大小。X Window在设计之初就定下了七条设计准则,现在已经广为unix程序员所周知了,这里引用一下(/wiki):
除非沒有它就無法完成一個真正完整的應用程式,否則不用增加新的功能。
決定一個系統不是什麼和決定它是什麼同樣重要。與其去適應整個世界的需要,寧可使得系統可以擴展,這樣可以用上層相容的方式來滿足新增需求
有根本沒有實例才會比只有一個實例更糟。
如果問題沒有完全弄懂,可能最好根本就不要去解決它
如果預期要用百分之90的努力去完成百分之10的工作,應該用更簡單的辦法解決。(參見更糟就是更好。)
盡量避免複雜性。
提供機制而不是策略。實踐中把用戶界面策略放在用戶手裡。
第一條原則在設計X11時修改為:「除非制訂有真實的應用程序需要,否則不用增加新功能。」 X基本上一直遵循這些原則。參考實現是從擴展和改進的著手來進行開發,同時和1987年的最初的協議幾乎保持完全相容。这些原则,放在二十多年后的今天,仍然无一不是金玉良言,让我对这些前辈们的敬意油然而生。Xwindow里值得研究的东西可以说的东西太多了,它是一个非常复杂的系统,要把它的每一个细节都搞清楚,没有数月的努力是不可能的。粗看时,它的代码并不能称为经典,甚至有些代码风格让人很难受,其中充斥着大量的#ifdef,还有一些巨长的函数,一些缩写蒙得你找不到北。然而,瑕不掩钰,如果能克服阅读代码时暂时的头痛脑胀,你会发现Xwindow 的设计非常巧妙,很多时候它在概念上比其它窗口系统都要先进,以至于经过这么多年之后,它仍然是unix-like的图形系统标准,可以说许多其它窗口系统的概念
您可能关注的文档
- StiebelEltron由于全球化协作而更快推出新产品–案例研究.pdf
- SteinbergVirtualBassist基础教程.doc
- Statistics with Economics and Business Applications.ppt
- Stochastic Resonance and Nonequilibrium Dynamic Phase Transition of Ising Spin System Drive.pdf
- Storm知识点学习.doc
- Structure Analysis of General Cargo Ship.pdf
- Struts在开发B_S结构系统中的应用.pdf
- Studies on Heuristic Algorithms for Dynamic Spectrum Assignment in Open Spectrum System.pdf
- Supplier Evaluation DEA.pdf
- SuperVLAN原理与配置.ppt
文档评论(0)