【linux】Xorg的工作原理 | 您所在的位置:网站首页 › xorg配置文件生成 › 【linux】Xorg的工作原理 |
介绍
在linux系统上执行nvidia-smi时,总有一个进程占用gpu。 1 N/A N/A 2174 G /usr/lib/xorg/Xorg 4MiB/usr/lib/xorg/Xorg 是与X Window System(简称X11或X)相关的一个应用程序。X Window System是一个在类Unix操作系统上广泛使用的图形界面系统。它提供了基础的图形界面功能,允许在用户和操作系统之间展示图形界面。 具体来说,Xorg 是X Window System的一个开源实现,通常用于管理和协调显示设备(如显示器)、输入设备(如鼠标和键盘)以及图形卡之间的交互。它是大多数Linux发行版以及一些其他Unix-like系统中默认的X服务器。 Xorg的工作原理和作用X Server和X Client: 在X Window系统中,Xorg 作为一个X服务器(X Server),负责管理所有的图形显示和输入设备。应用程序则作为X客户端(X Client),它们通过X服务器显示图形界面。X客户端和X服务器之间可以在同一台机器上通信,也可以通过网络在不同机器上进行通信。图形和事件处理: Xorg负责绘制窗口、处理键盘和鼠标输入等。它接收来自X客户端的绘图请求,并将结果输出到屏幕上。同时,它也从硬件接收输入事件(如鼠标移动、键盘按键等),并将这些事件传递给相应的X客户端。配置和驱动: Xorg通过配置文件(如 /etc/X11/xorg.conf,尽管现代Xorg版本往往能够自动配置)和驱动程序来支持不同的硬件设备。它支持多种图形卡、显示器、输入设备,并能够处理多显示器设置。扩展和多样性: Xorg支持各种扩展,例如OpenGL用于3D图形加速,Xinerama用于多显示器支持等。它与多种桌面环境(如GNOME, KDE)和窗口管理器(如Xfwm, Metacity)兼容,提供了丰富的用户界面体验。 相关代码示例查看Xorg配置文件: cat /etc/X11/xorg.conf查看Xorg日志: cat /var/log/Xorg.0.log使用xrandr命令调整屏幕分辨率: xrandr --output HDMI1 --mode 1920x1080列出可用的显示设备和支持的模式: xrandr编写简单的X客户端程序(C语言): #include int main() { //程序创建一个基本的窗口,并在按下任意键后退出 Display *d; int s; Window w; XEvent e; d = XOpenDisplay(NULL); if (d == NULL) { fprintf(stderr, "无法打开显示\n"); exit(1); } s = DefaultScreen(d); w = XCreateSimpleWindow(d, RootWindow(d, s), 10, 10, 100, 100, 1, BlackPixel(d, s), WhitePixel(d, s)); XSelectInput(d, w, ExposureMask | KeyPressMask); XMapWindow(d, w); while (1) { XNextEvent(d, &e); if (e.type == KeyPress) break; } XCloseDisplay(d); return 0; } |
CopyRight 2018-2019 实验室设备网 版权所有 |