【发布时间】:2011-09-05 15:36:53
【问题描述】:
【问题讨论】:
-
Linux 内核不知道图形输出。 X 服务器负责管理 Linux 上的显示。您最好的选择是使用 GUI 编程框架,如 Qt、GTK+、wxWidgets 或 Tk,具体取决于您的编程语言和需求。
标签: linux user-interface system-calls
【问题讨论】:
标签: linux user-interface system-calls
通过将 X11 协议与系统的 Xserver 对话,您可以在屏幕上绘图。 (所涉及的系统调用通常用于通过套接字进行通信,因此它们不提供信息。)通常您使用库来执行此操作。通常使用的基本库是 X11 库 (libX11),它通常由 GTK 或 Qt(或 wxWindows 或 Tk 或……)等工具包库包装。也有低级库(xcb,它比 X 协议更薄)和高级库(Gnome、KDE)。您还可以使用 OpenGL 库,这是一种完全不同的方法。
有很多关于如何做到这一点的书。
Xserver 本身使用内存映射设备,它与图形硬件的通信级别非常低。它不是一个比图形驱动程序更高级别的东西,它是一个非常特权的过程。 (如果您要与 Windows 进行比较,您需要注意拆分事物的确切级别是不同的,但 libX11 的级别与大部分 Win API 非常相似。)
【讨论】: