Wygląda na to, że oprogramowanie układowe UEFI obsługuje protokoły graficzne GOP lub UGA. GOP jest nowszy i zastąpił UGA. Na moim komputerze, który nie ma zintegrowanego adaptera graficznego (tylko dyskretny adapter graficzny NVIDIA GTX 965m), zauważyłem, że po uruchomieniu na żywo instalacyjnego dysku CD z systemem Linux nie ma modułu jądra sterującego moją kartą graficzną (sprawdziłem logi lspci i X) .
Po przeprowadzeniu badań dotyczących UEFI znalazłem te dwa rodzaje protokołów graficznych i zastanawiałem się, czy istnieje sposób (zapytanie z wiersza poleceń), aby dowiedzieć się, który z nich jest używany, ponieważ wydaje się, że jest to UEFI oprogramowanie układowe, które umożliwia sterowanie wyświetlaczem mojego komputera (prawdopodobnie przez moją dyskretną kartę graficzną „kompatybilną z VGA”).
Co więcej, w ustawieniach BIOS (czy nadal nazywa się to ustawieniami BIOS, gdy korzystam z oprogramowania układowego UEFI?), Mogłem również zmienić ustawienia Video Op Rom na „tryb zgodności BIOS”. Kiedy zostawiłem go jako „tylko UEFI”, uzyskałem pełną rozdzielczość w ustawieniach konfiguracji BIOS i na wyświetlaczu POST oraz ekranie modułu ładującego rozruch. Wybierając „tryb zgodności BIOS”, otrzymałem znacznie mniejszą rozdzielczość. Czy to w zasadzie oznacza, że oprogramowanie sprzętowe mogło zamiast tego korzystać z protokołu VGA?
źródło
lspci
pokazy nie używają „sterowników jądra” dla mojej karty graficznej NVIDIA? Przełączanie między BIOS i UEFI w ustawieniach Video Op Rom zmienia rozdzielczość dla całej sesji. A także uruchamiam Live CD, który nie ładuje żadnych sterowników NVIDIA ani Nouveau dla karty NVIDIA.efifb
końcu musiałby wiedzieć, z jakim protokołem się mówi)Odpowiedzi:
Aby rozwinąć odpowiedź na temat grawitacji, istnieje kilka kwestii o różnym stopniu istotności dla twojego pytania:
efifb
. W systemach opartych na EFI jest to często podstawa do działania w trybie tekstowym (jeśli nie uruchomisz X lub naciśniesz Ctrl + Alt + F1 do Ctrl + Alt + F6). OTOH, istnieją również urządzenia buforujące ramki dostarczane przez niektóre sterowniki jądra dla określonych mikroukładów wideo, więc możesz nie korzystać z tegoefifb
urządzenia. Nie wiem od razu, czy są jakieś różnice w sposobie prezentowania się systemu operacyjnego przez UGA i GOP. Z pewnością nie znam żadnych różnic na wyższym poziomie, takich jak polecenia, których używałbyś w Linuksie.efifb
urządzenia. W ten sposób mógłbyśprowadzić wyświetlacz za pomocą trybów UGA lub GOP EFI. Jest to zdecydowanie nieoptymalny sposób, aby to zrobić, ponieważ sterowniki bufora ramki są zwykle wolne. Nowoczesne środowiska okienkowe, w tym Unity Ubuntu, w coraz większym stopniu polegają na funkcjach akceleracji wideo, które nie są dostępne przez bufor ramki.Możesz zobaczyć niektóre z nich podczas pracy, sprawdzając bufor pierścieniowy jądra poprzez
dmesg
, jak w:Ten przykład pokazuje liczbę komunikatów związanych z buforowaniem ramki w systemie z procesorem graficznym AMD / ATI. Zauważysz, że nie ma wzmianki o UGA vs. GOP, ale
efifb
urządzenie jest przywoływane, podobnie jakfbcon
(konsola framebuffer) iradeondrmfb
(urządzenie bufora ramki dla urządzeń ATI / AMD Radeon).removing generic driver
Wiadomość oznacza przełączanie połączenia zeefifb
sterownikiem doradeondrmfb
kierowcy. Możesz także sprawdzić/var/log/Xorg.0.log
wiadomości związane z serwerem X. W przypadku mojego systemu są one mniej interesujące, ale jeśli masz problemy z uruchomieniem X,Xorg.0.log
może Cię to zainteresować.Jeszcze jedna kwestia: gdy pytasz o pomoc w kwestiach sprzętowych, ogólnie ważne jest, abyś określił, jaki jest twój sprzęt - „dyskretna karta graficzna” jest niewystarczająco specyficzna, gdy prosi o pomoc w problemach z wideo. W tym przypadku nie jest jasne, na czym polega twój problem - czy po prostu szukasz informacji na temat tego, jak wszystko do siebie pasuje, aby lepiej zrozumieć?
źródło
efifb
ifb0
w logach jądra. Ale wspomniałeś, że X może używaćefifb
do wyświetlania rzeczy, ale sprawdzając dzienniki X, w ogóle nie ma wzmiankiefifb
?dmesg
iXorg.0.log
plik z obu ustawień opcji wideo w oprogramowaniu układowym. (To znaczy dwadmesg
wyjścia i dwaXorg.0.log
pliki.) Sam nie jestem ekspertem w debugowaniu problemów z wideo, więc mogę nie być w stanie pomóc; ale może ktoś to zrobi. Możesz rozpocząć nowe pytanie, które zawiera odpowiednie wskazówki z góry.