X Window System 为什么这么优秀呢?因为他有相当优良的 X Server/X Client 设计系统。 什么是 X Server 与 X Client 呢?X 在设计的时候, 就希望可以达到多人联机进入主机利用图形界面的功能,于是他便发展出这样的一个主从架构。 这个主从架构可以让使用者在任何一部计算机以网络的方式联机到主机来操作图形界面的功能, 是一个相当棒的设计呢~不过 X Server 与 X Client 的意义则与网络上的 Server/Client 意义不同喔~底下我们就来谈一谈 X Server/X Client 的功能。
• X Server:主要负责的是屏幕画面的绘制与显示。

X Server 的主要功能 ( 不论是 Xorg 或是 XFree86 都是一个 X server 喔!) 就是在管理 X Server 所在主机上面关于显示的硬件配备啦~ 例如显示卡、屏幕分辨率、键盘形式、鼠标形式等等。如果以 Linux 上安装 X server 为例, 您会发现~咦!显示卡、屏幕以及键盘鼠标的设定,不是在开机的时候, Linux 系统以 /etc/sysconfig 目录下的 keyboard/mouse 等设定档就设好了吗? 呵呵~这是因为 X Window 在 Linux 里面仅能算是『一套很棒的软件』, 所以 X Window 有自己的设定档,您必须要针对他的设定档设定妥当才行。

X Server 还有一个重要的工作,那就是将来自输入装置(如键盘、鼠标等)的动作告知 X Client, 您晓得, X Server 既然是管理这些周边硬件,所以,周边硬件的动作当然是由 X Server 来管理的, 但是 X Server 本身并不知道接口设备这些动作会造成什么显示上的效果, 因此 X Server 会将接口设备的这些动作行为告知 X Client ,让 X Client 去伤脑筋~
• X Client:主要负责的是『事件』的处理。
前面提到的 X Server 主要是管理显示接口与在屏幕上绘图,同时将输入装置的行为告知 X Client, 此时 X Client 就会依据这个输入装置的行为来开始处理,最后 X Client 会得到『 嗯!这个输入装置的行为会产生某个图示』,然后将这个图标的显示数据回传给 X Server , X server 再根据 X Client 传来的绘图资料将他描图在自己的屏幕上,来得到显示的结果。 也就是说, X Client 最重要的工作就是处理来自 X Server 的动作,将该动作处理成为绘图数据, 再将这些绘图数据传回给 X Server.

基本上, X Server 管理的是显示卡、屏幕分辨率、鼠标按键对应等等,尤其是显示卡芯片的认识,真是重要啊。 此外,还有显示的字体也是 X Server 管理的一环。

【linux】X Server / X Client / Window manager 的关系相关推荐

  1. linux c语言tcp,我个人的Linux TCP server和client测试源码,C语言(2)(★firecat推荐★)...

    1.直接上TCP Server源码,这种方法没有使用向muduo那样的活塞式buffer,可谓简单粗暴: #include #include #include #include #include #i ...

  2. Note For Linux By Jes(18)-X Window 配置介绍

    什么是XWindow System: 主要组件:X Server/X Client/Window Manager/Display Manager X Server:硬件管理.萤幕绘制与提供字型功能: ...

  3. 浅谈Android系统进程间通信(IPC)机制Binder中的Server和Client获得Service Manager接口之路

    原文地址: http://blog.csdn.net/luoshengyang/article/details/6627260 在前面一篇文章浅谈Service Manager成为Android进程间 ...

  4. firefox+linux+nginx搭建server与client通过证书双向认证环境

    项目中需要搭建一个server和client基于证书的双向认证环境.由我来做,我也不会. 经过一晚上的研究,基本摸清了(知其然不知其所以然).做下笔记. 基本环境: 1.安装nginx. 2.安装op ...

  5. Android Window Manager Subsystem Research

    Copyright:http://blog.csdn.net/myzhzygh/article/details/8470469 1.Introduce 本文档的主要目的是记录Android 窗口子系统 ...

  6. Linux桌面基础2:X Window Manage——Xfce4

    一.前言 一个桌面的使用需要X Windows Server + X Windows Manager,提供桌面背景.任务栏.桌面设置等.X Server 还有一个重要的工作,那就是将来自输入设备 (如 ...

  7. 图解Android - Android GUI 系统 (2) - 窗口管理 (View, Canvas, Window Manager)

    Android 的窗口管理系统 (View, Canvas, WindowManager) 在图解Android - Zygote 和 System Server 启动分析一 文里,我们已经知道And ...

  8. linux上的客户端连接window上的服务器

    server代码: window上的服务器代码不变,但是需要注意一点:linux上的client连接服务器上的server时服务器的防火墙必须关闭才能连接成功. #define WIN32_LEAN_ ...

  9. 实现linux作为server时与windows间的数据同步

    1.准备机器,此时使用linux作为server  server---10.0.0.13    (linux)  client---172.168.32.9 (windows)    2.安装与配置l ...

  10. mysql数据实时同步:Canal安装部署、kafka安装、zk安装、mysql安装、Canal Server+Canal Client HA,Canal+mysql+Kafka,相关验证(学习笔记)

    目录 Canal安装部署 1.1. 服务器准备 1.2. 设置主机名并配置hosts 1.3. 免密设置 1.4. 设置ntp时间 1.5. 关闭防火墙 1.6. 关闭selinux 1.7. 安装J ...

最新文章

  1. Fraction+mysql_MySQL 数据类型总结
  2. python字符串转float_令人困惑的python-无法将字符串转换为float
  3. robot framework好的学习网址
  4. CentOS:linux开放指定端口命令
  5. CCF NOI1051 合影
  6. top命令显示内容的详细解释
  7. pc 浏览器最小字体12px
  8. Linux下如何解压.zip和.rar文件
  9. 在线答题助手c语言源码,开源的在线答题小程序
  10. 5064. 删除字符串中的所有相邻重复项
  11. html td 跨两个,【单选题】在HTML中,td标签的( )属性用于创建跨多个行的单元格。...
  12. 手机重装为linux,安卓手机重装系统的方法
  13. 流利阅读day1 Dysmorphia
  14. Deepin开发环境搭建
  15. 用java如何画动物_用画小狗的方法来解释Java值传递
  16. 《Thinking in Java》Fourth Edition中文版笔记
  17. java base64写入文件_java之文件与base64字符之间的相互转换
  18. Python 海龟绘图:turtle库的使用
  19. 双栈路由Linux,IPV6 IPV4双栈互通与静态路由
  20. 如何让您的第一个物联网产品成功

热门文章

  1. rk从u盘更新屏参文件_[更新]解决八代I3在华擎B150上核显不亮机问题
  2. IBM系统分析——领域建模
  3. OpenWRT设置SmartDNS+ADGuardHome+小喵咪
  4. Excel function
  5. 【广东大学生网络攻防大赛-WriteUp(非官方)】Pwn | jmp_rsp
  6. 【广东大学生网络攻防大赛-WriteUp(非官方)】Reverse | pyre
  7. Borderline-SMOTE算法介绍及Python实现【内附源代码】
  8. 3dmax测试软件自动关闭,win7系统一打开3DMax2014软件就自动关闭的解决方法
  9. win10 VS2015社区版本 64位 TensorFlow 安装
  10. webpack搭建vue项目步骤详解