Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 编写驱动程序愚弄Linux系统使用GPU_C_Linux_Driver_X11 - Fatal编程技术网

C 编写驱动程序愚弄Linux系统使用GPU

C 编写驱动程序愚弄Linux系统使用GPU,c,linux,driver,x11,C,Linux,Driver,X11,我对为基于Linux的系统编写“模拟GPU驱动程序”感兴趣。我的意思是,我只想编写一个驱动程序(显然是在X-server后面),用一些调试消息来响应X的API调用 换句话说,我想愚弄Linux,让它拥有一个真正的GPU。因此,我可以在基于控制台的系统中为GUI加速包制作一个测试台 现在,如果我在基于Linux控制台的系统中执行GUI加速包;它只会因为缺少真正的GPU(或者更好的GPU驱动程序)而死掉 所以我想知道: 有可能吗?(编写一个GPU驱动程序来愚弄Linux拥有一个真正的GPU) 在我

我对为基于Linux的系统编写“模拟GPU驱动程序”感兴趣。我的意思是,我只想编写一个驱动程序(显然是在X-server后面),用一些调试消息来响应X的API调用

换句话说,我想愚弄Linux,让它拥有一个真正的GPU。因此,我可以在基于控制台的系统中为GUI加速包制作一个测试台

现在,如果我在基于Linux控制台的系统中执行GUI加速包;它只会因为缺少真正的GPU(或者更好的GPU驱动程序)而死掉

所以我想知道:

  • 有可能吗?(编写一个GPU驱动程序来愚弄Linux拥有一个真正的GPU)
  • 在我动手编写代码之前,你推荐哪些资源
  • 网上有没有类似的项目

PS:我是一名经验丰富的ANSI-C程序员,但我对*nix下的真正内核/驱动程序开发没有任何线索(尽管阅读了一些有关USB驱动程序开发的教程),因此我也非常感谢您提供有关这些领域的任何资源。提前感谢。

Mesa项目是一个很好的起点,它在软件中实现了OpenGL。它可以让操作系统误以为它是OpenGL驱动程序。

一个好的起点是Mesa项目——它在软件中实现OpenGL。它可以让操作系统误以为它是OpenGL驱动程序。

您所寻找的实际上是Xorg服务器套件的一部分,它被称为(虚拟帧缓冲区)


如果您不害怕有点复杂的bash,您可以看看Gentoo的使用示例(我们使用它来运行需要X11的测试)。

您所寻找的实际上是Xorg服务器套件的一部分,它被称为(虚拟帧缓冲区)


如果你不害怕有点复杂的bash,你可以看看Gentoo的使用示例(我们使用它来运行需要X11的测试)。

你真的有兴趣看到那些“调试”消息,还是只想让应用程序运行?对于后者,有虚拟X服务器。是的,实际上我很感兴趣,但是你能给我一些虚拟X服务器项目的链接吗?提前感谢。一些OpenCL实现只能在CPU上运行。@3p3r:该服务器实际上包含在Xorg中,它被称为
Xvfb
()。如果你不害怕一些bash,你可以看看Gentoo的一个使用示例(它用于运行需要X11的测试)。@MichałGórny这正是我在寻找的东西!请把它写在一个答案里,我会接受它:D谢谢。你真的有兴趣看到那些“调试”消息,还是只想让应用程序运行?对于后者,有虚拟X服务器。是的,实际上我很感兴趣,但是你能给我一些虚拟X服务器项目的链接吗?提前感谢。一些OpenCL实现只能在CPU上运行。@3p3r:该服务器实际上包含在Xorg中,它被称为
Xvfb
()。如果你不害怕一些bash,你可以看看Gentoo的一个使用示例(它用于运行需要X11的测试)。@MichałGórny这正是我在寻找的东西!请把它写在一个答案里,我会接受的:D谢谢。我认为Mesa是软件级的,它在X服务器之后,而不是之前。我的意思是这个包调用X的API,对吗?这是某种“重定向”或OpenGL调用,对吗?Mesa将在Xvfb上运行,因此您可以在没有任何图形硬件的情况下运行整个3D X服务器。不过,这不会帮助您开发非X项目,比如加速控制台!Mesa和Xvfb不提供内核级的图形卡抽象。我认为Mesa是软件级的,它在X-server之后而不是之前。我的意思是这个包调用X的API,对吗?这是某种“重定向”或OpenGL调用,对吗?Mesa将在Xvfb上运行,因此您可以在没有任何图形硬件的情况下运行整个3D X服务器。不过,这不会帮助您开发非X项目,比如加速控制台!Mesa和Xvfb不提供内核级图形卡抽象。