Linux의 /dev 아래에 모니터가 나열되지 않는 이유는 무엇입니까?

Linux의 /dev 아래에 모니터가 나열되지 않는 이유는 무엇입니까?

/dev가 USB, 하드 드라이브, 웹캠과 같은 연결된 모든 장치를 나열해야 하는데 왜 내 ubuntu 15 VM에서 디스플레이를 볼 수 없습니까? 데스크톱 버전을 실행 중이므로 모니터가 있어야 합니다.

아니면 다른 이름으로 명명되었을 수도 있습니다.

답변1

일반적으로 Unix 시스템의 장치 파일은 사용자 프로그램이 장치 드라이버에 액세스하는 방법일 뿐이며 장치 파일에서 물리적 하드웨어로의 일대일 매핑이 없으며 모든 하드웨어에 장치 파일(또는 장치 드라이버)이 있는 것은 아닙니다. 커널 자체는 하드웨어와 상호 작용하기 위해 장치 파일을 사용하지 않습니다.

지적한대로LCD 화면 047, 네트워크 카드에 장치 파일이 전혀 없습니다. 프로그램은 API를 사용하여 네트워크와 상호 작용합니다.예를 들어이것BSD 소켓 API; ethtool소켓을 사용하는 경우에도ioctl()네트워크 인터페이스를 조작합니다.

따라서 모니터에 장치 파일이 있는지 확인할 때 프로그램이 모니터와 상호 작용하는 방식을 고려하는 것이 유용합니다. 모니터와 직접적으로 상호 작용하는 도구는 많지 않습니다.. 프로그램은 모니터에 정보를 표시합니다통과하다그래픽 카드 및 장치 파일 /dev/dri/*등이 있습니다 /dev/fb*. 하지만 이것은 디스플레이가 아니다. 내가 아는 한, 모니터와 직접 상호 작용하는 유일한 프로그램은 백라이트 제어 프로그램입니다 . ddccontrol전자는 일반적으로 ACPI 또는 랩톱 특정 장치를 사용합니다(따라서 모니터의 백라이트는 시스템 전원 모델의 일부일 뿐입니다).ddccontrolI²C/dev/i2c-*모듈이 로드된 i2c-dev후 해당 장치가 나타나는 버스 입니다.

관련 정보