Linux가 사용 가능한 디스플레이 장치(비디오 출력)를 감지하는 방법과 각 장치에 표시할 내용을 결정하는 방법을 이해하고 싶습니다.
예: 직렬 회선과 HDMI 포트가 있는 내장형 장치가 있는 경우 직렬 콘솔 대신 HDMI 디스플레이에 콘솔이 표시되도록 하려면 어떻게 해야 합니까?
또한 비디오 드라이버와 연결된 간단한 OpenGL 응용 프로그램을 사용하려는 경우 OpenGL은 HDMI 포트에 그리는 데 어떤 인터페이스를 사용합니까?
올바른 문서에 대한 포인터가 있으면 좋을 것입니다.
답변1
대부분의 시스템에서 출력이 처리되는 화면 장치는 GPU 또는 기타 비디오 디스플레이 컨트롤러에 따라 다릅니다. 시스템의 비디오 장치와의 모든 인터페이스는 DRM(Direct Render Manager) 및 밀접하게 관련된 KMS(커널 모드 설정) 커널 하위 시스템에 의해 처리됩니다.
~에서위키피디아 페이지주제에 대하여:
컴퓨팅에서는 Linux 커널의 하위 시스템인 DRM(Direct Render Manager)이 최신 그래픽 카드의 GPU와 인터페이스합니다. DRM은 사용자 공간 프로그램이 명령과 데이터를 GPU에 보내고 디스플레이 모드 설정 구성과 같은 작업을 수행하는 데 사용할 수 있는 API를 노출합니다. DRM은 원래 X Server의 직접 렌더링 인프라의 커널 공간 구성 요소로 개발되었지만 이후 Wayland와 같은 다른 그래픽 스택 대안에서 사용되었습니다.
사용자 공간 프로그램은 DRM API를 사용하여 하드웨어 가속 3D 렌더링 및 비디오 디코딩은 물론 GPGPU 계산을 위해 GPU에 명령을 내릴 수 있습니다.
공식 Linux 문서는 소스 저장소에서 찾을 수 있습니다 Documentation/gpu
.여기여러분의 편의를 위한 github 링크입니다.
또한 Wikipedia 기사는 상당히 광범위한 것 같습니다. 목표에 따라 이 리소스만으로도 충분할 수 있으며 공식 문서보다 확실히 읽기 쉽고 기술적 수준이 낮습니다.