Linux 커널과 X에 각각 하나씩, 두 세트의 드라이버가 필요한 이유를 설명할 수 있는 사람이 있습니까?
장치 드라이버가 커널에 있다는 것을 알고 있지만 xserver에서 해당 역할은 무엇입니까?
Wayland를 실행하려면 그러한 드라이버가 필요합니까?
답변1
Linux 그래픽 지원은 커널 수명의 대부분 동안 크게 변화해 왔습니다. 처음에 커널은 텍스트 모드 목적으로만 그래픽 카드와 통신합니다. 그 시점에서 X는 드라이버를 사용하여 모든 작업을 수행했기 때문에 하나의 거대한 코어 외부 커널로 실행되었습니다.
나중에직접 렌더링 인프라(DRI)에서는 그래픽 기능을 가속화하는 코드 중 일부가 커널 측(직접 렌더링 관리자, DRM이라고 함 - 디지털 권한 관리와 관련 없음)으로 이동하여 3D 가속 기능을 위한 일관된 추상 인터페이스를 제공합니다.
현재는 그렇지 않습니다.필요커널 측 DRM 모듈을 로드합니다. 그러나 그렇지 않으면 X 세션이 하드웨어 3D보다 훨씬 느리고 전력을 많이 소모하는 소프트웨어 렌더링 3D로 돌아갈 가능성이 높습니다. 실행하면 glxinfo
이에 대한 정보가 표시됩니다.
웨이랜드는약간 다른 이야기. 커널과 클라이언트 애플리케이션 사이에 위치합니다. Wayland의 경우 X 서버는 루트 창을 다른 것으로 표시하는 또 다른 클라이언트 응용 프로그램입니다. Wayland는 하드웨어와 통신하는 책임을 맡습니다(X는 Wayland와 통신합니다). 프로젝트가 아직 대대적으로 개발 중이기 때문에 최종 결과가 어떻게 될지는 알 수 없지만, 3D 렌더링을 위해서는 여전히 커널 지원이 필요할 것으로 알고 있습니다.
이는 Wayland 아키텍처 다이어그램에서도 볼 수 있습니다. 왼쪽은 최신 X 데스크톱의 현재 상태이고 오른쪽은 제안된 Wayland 아키텍처입니다. Wayland 컴포지터는 하드웨어와 통신하는 것으로 X Server를 대체했지만 대체하지는 않았습니다.핵심인프라 - 따라서 여전히 적절한 커널 지원이 필요합니다. 사실, 프로젝트의 목표를 고려하면,더더 나은 추상화를 위해 모든 것을 커널로 옮겨야 합니다. X 서버와 마찬가지로 Wayland는 여전히 그래픽 하드웨어에 의존합니다.