通常可以在BIOS中设置主视频卡(选项“主VGA卡”),它将是系统使用的第一张卡。
我的问题是如何以编程方式识别(最好使用Shell脚本和实用程序)我的两个视频卡中的哪一个是主卡?
编辑:我希望我不必详述为什么需要它,因为它有点复杂,但是我将在下面解释问题。
我有一个配置向导,该向导允许在LiveCD中动态配置多座系统,并带有两个独立的显示器,键盘和鼠标,我的向导按以下方式工作:
问题是:如果我启动主视频卡中的第一个Xorg,一切正常,但是如果我启动辅助视频卡中的第一个Xorg,则会发生以下情况:
通行证1、2和3有效,但是在通行证3结束时,当第一个座位的Xorg关闭时,第二个座位的Xorg闪烁并且不返回,只显示一个带有的空白屏幕_ 光标位于顶部,第一个座位的桌面已加载,但是我看不到第二个座位的向导屏幕,如果我执行kill -HUP,第一个Xorg会回来,并且我需要从以下位置启动ui再来一次。
因此,这就是为什么我需要在启动Xorg之前识别主视频卡的原因(对不起,我之前没有提到这一点)。我在不同的计算机,不同的视频卡上测试了该系统,并且行为相同。我还在Ubuntu 12.04中测试了内核和Xorg的最新软件包(raring版本的软件包)。
最佳答案
假设X11正在运行,您可以假设Xorg
使用的是主卡...那么您可以尝试
ls -l /proc/$(pidof X)/fd |grep /dev/dri
在装有Linux 3.12内核的系统Debian/Sid/x86-64上(在Intel3770K上有Nvidia卡,也有VGA),我得到了
/dev/dri/card0
等。但是您应该真正解释为什么要问以及您想解决什么问题...。为什么这对您很重要?
我完全不确定Linux是否具有BIOS所知道的主图形卡的概念。
可能
hwinfo
告诉您有关图形卡的所有信息。关于linux - 如何以编程方式识别Linux上的主视频卡?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19985131/