我基本上是想弄清楚如何从零开始制作一个 GUI,只需要 linux 内核和 C 语言编程。
我不想从头开始创建 GUI 桌面环境,但我想创建一些桌面应用程序,并且在我搜索知识的过程中,我能够找到的所有信息都是关于 GUI API 和工具包的。我想知道,至少为了了解如何制作 linux GUI 的基础知识,如何在不使用任何 API 或工具包的情况下制作 GUI 环境或 GUI 应用程序。
我想知道例如:
现有的 API 和工具包通过对内核的系统调用来工作(内核在最低级别负责以像素或其他方式构建 GUI 图像)
这些工具包执行系统调用,只是将信息传递给屏幕驱动程序(是否有标准格式用于发送所有屏幕驱动程序都遵守的此信息,或者 GUI API 是否需要能够根据特定屏幕/驱动程序以多种格式输出此信息? ) 如果这大致属实,那么原始 linux 内核是否通常只是以 8 位字符的形式将信息发送到屏幕?
我真的很想了解 linux 内核之间发生了什么,以及我在屏幕上看到的内容(如果您知道,控制/信息流通过软件和硬件,信息采用什么格式等)。我将非常感谢详细的解释,我知道这可能是一个足够详细的解释,但我认为这样的解释对于其他好奇和学习的人来说是一个很好的资源。对于上下文,我是一名 3 年级的 comp sci 学生,最近开始在我的系统编程课程中使用 C 进行编程,并且我对 linux 和编程有中级(或者我会这样描述)理解。再次感谢任何帮助我的人!!!