gpt4 book ai didi

linux - 如何以编程方式识别 Linux 上的主视频卡?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:35:30 26 4
gpt4 key购买 nike

主显卡通常可以在BIOS中设置(option Primary VGA card),它将是系统使用的第一 block 显卡。

我的问题是如何以编程方式识别(最好使用 shell 脚本和实用程序)我的两张显卡中的哪一张是主卡?

编辑:我希望我不必详细说明为什么我需要这个,因为它有点复杂,但我会在下面解释这个问题。

我有一个配置向导,它允许在 LiveCD 中动态配置多座系统,有两个独立的显示器、键盘和鼠标,我的向导就是这样工作的:

  1. 为每个视频卡启动一个 Xorg 服务器(在使用正确的 PCI 总线 ID 生成 xorg.conf 之后)。
  2. 在每个 Xorg 中启动一个 ui,其中包含配置消息(按键和鼠标)。每次可配置一个席位
  3. 在配置第一个seat 后,向导 关闭第一个 Xorg 并在这个seat 中启动具有桌面环境的最终 Xorg (已经有了正确的键盘和鼠标组)。
  4. 第二个座位现在可以配置(按键和鼠标),此过程 3 对第二个座位重复。

问题是:如果我在主显卡中启动第一个 Xorg,一切正常,但如果我在辅助显卡中启动第一个 Xorg,则会发生这种情况:

pass 1, 2, 3 有效,但是在 pass 3 结束时,当第一个座位的 Xorg 关闭时,第二个座位的 Xorg 闪烁并没有回来,只是显示一个空白屏幕顶部有一个 _ 光标,第一个座位的桌面加载,但我在第二个座位上看不到向导屏幕,如果我执行 kill,第一个 Xorg 就会返回-HUP ,我需要从中再次启动 ui

所以,这就是为什么我需要在启动 Xorg 之前识别主要视频卡的原因(抱歉,我之前没有提到这一点)。我在不同的电脑上用不同的视频卡测试了这个系统,行为是一样的。我还在 Ubuntu 12.04 中测试了内核和 Xorg 的最新包(raring 版本的包)。

最佳答案

假设 X11 正在运行,您可以假设主卡是 Xorg 使用的卡...那么您可以尝试

 ls -l /proc/$(pidof X)/fd |grep /dev/dri

在我的系统 Debian/Sid/x86-64 和 Linux 3.12 内核(它在 Intel3770K 上有一个 Nvidia 卡,它也有它的 VGA)我得到 /dev/dri/card0 等...

但你应该真正解释你为什么要问,你想解决什么问题......为什么这对你很重要?

我完全不确定 Linux 是否像 BIOS 所知道的那样具有主显卡的概念。

hwinfo 可能会告诉您有关图形卡的所有信息。

关于linux - 如何以编程方式识别 Linux 上的主视频卡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19985131/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com