20170626 Linux Window System infrastructure

第一次接触内核和操作系统,没太弄明白,就简单总结自己记得一点概念和知识
Linux视窗的基本概念
内核
Frame Butter ( 帧缓冲(framebuffer)是 Linux 为显示设备提供的一个接口,把显存抽象后的一种设备,他允许上层应用程序在图形模式下直接对显示缓冲区进行读写操作。)
Direct Render Management (遇3D成像有关)
用户核心层及驱动层
X Window System
Mesa
用户应用层
GNOME
KDE

DRM
DRI 基础框架,直接与硬件进行操作
kernel/driver/gpn/drm 包含通用代码,相当于一套规范协议,实现具体定制。
I/O control 是文件结构体中的一个接口,调用时实现这个接口。

X Window System
20170626 Linux Window System infrastructure
X Server
客户端
协议端

X Server控制输入,输出,显示,维护字体,颜色
X Client 实现对应用程序计算的处理,最后返回X Server,由X Server完成操作

20170626 Linux Window System infrastructure

两者交流的实现 C/S通信协议
20170626 Linux Window System infrastructure

X Window System的一些概念
display 一套完整的输入输出(screen和输入设备),一个X Server可以多个display
screen
20170626 Linux Window System infrastructure
Window
20170626 Linux Window System infrastructure
Drawable
可画的区域
屏幕窗口Window和像素映射bitmap
Graphic Context
20170626 Linux Window System infrastructure
Drawable相当于画板,Graphic Context相当于画笔

Mesa
opeaGL实现
Direct X Window 3D图形编辑接口
GLU 实现渲染,显示视窗接口
GLUT 对外提供视窗交互的API
DRI
20170626 Linux Window System infrastructure
GLX
20170626 Linux Window System infrastructure
wayland的目的是作为一个简单的替代X,更容易发展 和维护。 GNOME和KDE将移植到它。X修补多次,代码太过于臃肿。

图片来自于刘周平学长的PPT。