【问题标题】:What's the related syscall for GUI programing on x86-64(linux)?x86-64(linux)上的 GUI 编程的相关系统调用是什么?
【发布时间】:2011-09-05 15:36:53
【问题描述】:

有谁知道哪个系统调用用于 GUI 编程以便我们可以在屏幕上绘制各种图片?

我没有找到here..

GUI 需要内核支持,对吧?

【问题讨论】:

  • Linux 内核不知道图形输出。 X 服务器负责管理 Linux 上的显示。您最好的选择是使用 GUI 编程框架,如 Qt、GTK+、wxWidgets 或 Tk,具体取决于您的编程语言和需求。

标签: linux user-interface system-calls


【解决方案1】:

通过将 X11 协议与系统的 Xserver 对话,您可以在屏幕上绘图。 (所涉及的系统调用通常用于通过套接字进行通信,因此它们不提供信息。)通常您使用库来执行此操作。通常使用的基本库是 X11 库 (libX11),它通常由 GTK 或 Qt(或 wxWindows 或 Tk 或……)等工具包库包装。也有低级库(xcb,它比 X 协议更薄)和高级库(Gnome、KDE)。您还可以使用 OpenGL 库,这是一种完全不同的方法。

有很多关于如何做到这一点的书。


Xserver 本身使用内存映射设备,它与图形硬件的通信级别非常低。它不是一个比图形驱动程序更高级别的东西,它是一个非常特权的过程。 (如果您要与 Windows 进行比较,您需要注意拆分事物的确切级别是不同的, libX11 的级别与大部分 Win API 非常相似。)

【讨论】:

  • @x86:简短的回答:它很复杂并且非常特定于设备。 Xserver 的 RTFSource,如果你在乎的话,但我从来没有真正想了解这么多细节。
猜你喜欢
  • 2018-06-07
  • 2020-08-17
  • 2018-01-21
  • 1970-01-01
  • 2012-12-30
  • 2012-12-30
  • 2021-05-11
  • 1970-01-01
  • 2017-06-03
相关资源
最近更新 更多