当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 本文主要说明X Window System的基本运行原理,其启动过程,及常见的跨网络运行X Window System。
 

 

 ·linux 双机精彩文档    »显示摘要«
    摘要:今天在网络上面找资料无意中发现的.文档来自http://linux.vbird.org/ 是alex ym lin一个ibm tw 公司的人写的.网站上的原本说明:同樣也是彥明兄提供的好文件,主要是在介紹 red hat enterprise linux (rhel)這個 linux 版本的完整解決方案。共有三集,集集精彩呀!里面主要是写如何在rhel上面如何建立ha.用通俗易懂的方法给......
    摘要: 1。  暴风城里父子二人看到一只十分英伟的马。儿子不屑地对他的父亲说:“坐这种马的人,肚子里一定没有学问!”父亲则轻描淡写地回答:“说这种话的人,口袋里一定没有钱!”   ——你对事情的看法,亦能反映出你内心真正的态度 2。  晚饭后,侏儒一家都忙着干自己的事,母亲和女儿一块儿洗碗盘,父亲和儿子在客厅看电视。突然,厨房里传来打破盘子的响声,然后一片沉寂。儿子望着他父亲,说道:“一定是妈妈打破的。......


Linux X Window System运行原理与启动过程

本文主要说明x window system的基本运行原理,其启动过程,及常见的跨网络运行x window system.

【程序编程相关:小偷感言!

一) 基本运行原理 【推荐阅读:Getting Started with

【扩展信息:Feature: HowTo Upgra

    x window system采用c/s结构,但与我们常见的c/s不同.常见的c/s结构中,称提供服务的一方为server,即服务器端(如http服务,ftp服务等),使用服务的称为client,即客户端.但在x window system中,client是执行程序的一方,在上面执行各种x程序,而server则是负责显示client运行程序的窗口的一方.

 

    x window system的组成可以分为x server,x client,x protocol三部分.x server主要控制输入输出,维护字体,颜色等相关资源.它接受输入设备的输入信息并传递给x client,x client将这些信息处理后所返回的信息,也由x server负责输出到输出设备(即我们所见的显示器)上.x server传递给x client的信息称为event,主要是键盘鼠标输入与窗口状态的信息.x client传递给x server的信息则称为request,主要是要求x server建立窗口,更改窗口大小位置或在窗口上绘图输出文字等.x client主要是完成应用程序计算处理的部分,并不接受用户的输入信息,输入信息都是输入给x server,然后由x server以event的形式传递给x client(这里感觉类似windows的消息机制,系统接收到用户的输入信息,然后以消息的形式传递给窗口,再由窗口的消息处理过程处理).x client对收到的event进行相应的处理后,如果需要输出到屏幕上或更改画面的外观等,则发出request给x server,由x server负责显示.

    常见的情况是x server与x client都在同一台电脑上运行,但他们也可分别位于网络上不同的电脑上.在x window system中,x client是与硬件无关的,它并不关心你使用的是什么显卡什么显示器什么键盘鼠标,这些只与x server相关.我们平常安装完xfree86后运行xf86config或xf86cfg进行的配置实际上只是与x server有关,可以说就是配置x server吧,不配置照样可以运行x client程序(如:xeyes -display xserver:0就可以在xserver这台机器上的0号屏幕(屏幕编号displaynumber为0)上显示那对大眼睛了).

    x protocol就是x server于x client之间通信的协议了.x protocol支持现在常用的网络通信协议.我只能测试tcp/ip,可以看到x server侦听在tcp 6000端口上.那x protocol就是位于运输层以上了,应该属于应用层吧?.

    总结下运行过程吧:

    (1) 用户通过鼠标键盘对x server下达操作命令

    (2) x server利用event传递用户操作信息给x client

    (3) x client进行程序运算

    (4) x client利用request传回所要显示的结果

    (5) x server将结果显示在屏幕上

    二) 启动过程

    我们从控制台进入x一般是用startx命令.下面就从startx分析起.首先man startx与man xinit可以看到staratx与xinit的使用方法:

    startx [[client] options .....] [-- [server] options ....]

    xinit [[client] options ] [-- [server] [display] options]

    把上面[client]与[server]分别称为client程序与server程序.man手册里写明其必须以/或者./开头.

    下面看看startx这个脚本,中文为我加的注释,这个脚本是安装x-window-system-core后得到的,都是xfree86,不同发行版的linux里该脚本应该大同小异:

    #!/bin/sh

    userclientrc=$home/.xinitrc                     #用户的client定义文件

    userserverrc=$home/.xserverrc                   #用户的server定义文件

    sysclientrc=/usr/x11r6/lib/x11/xinit/xinitrc    #系统的client

    sysserverrc=/usr/x11r6/lib/x11/xinit/xserverrc  #系统的server

    defaultclient=/usr/x11r6/bin/xterm              #默认的client程序


...   下一页
 ·webmin忘记密码怎么办呀    »显示摘要«
    摘要:webmin忘记密码怎么办呀,修改 /etc/webmin/miniserver.users 或者 重新设置密码,用setup.sh......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE