Linux 장치 드라이버와 전원 관리 API에 대해 읽으면서 "시스템 수준", "하위 시스템", "플랫폼", "클래스" 등과 같은 용어를 계속 접하게 되었습니다.
그들 사이의 관계는 무엇입니까? 이 시스템은 플랫폼의 하위 유형입니까? 아니면 시스템과 플랫폼이 병행하여 존재하며 포괄적인 관계가 없는 걸까요? "클래스"와 "시스템"의 차이점은 무엇입니까? 각 도메인의 이점은 무엇입니까(예: 기능을 구현하려는 경우 클래스 수준 기능이어야 하는지, 플랫폼 기능이어야 하는지, 아니면 다른 기능이어야 하는지)?
요컨대, 누군가 나에게 이러한 다른 것들이 무엇인지 설명해 줄 수 있습니까?
답변1
이것들은 정의하기 어렵습니다. 일반적으로 말해서, 장치 열거의 맥락에서,
"플랫폼" 장치는 일반적으로 PC 또는 Raspberry Pi에서 찾을 수 있습니다.
커널은 PC나 RPi에서 실행되도록 컴파일되었기 때문에 이를 찾기 시작합니다. 일부 마더보드 구성 요소, CPU 및 메모리가 이 범주에 속합니다.
"하위 시스템"은 기본적으로 다양한 하드웨어에 대해 유사한 기능을 갖춘 드라이버 세트입니다.
그러면 각 드라이버는 차례로 다른 하위 시스템의 드라이버를 사용할 수 있습니다. 예를 들어, 사운드 하위 시스템 드라이버는 개별 사운드 카드를 처리하고 공통 사운드 카드 인터페이스를 제공하는 반면 드라이버는 PCI 하위 시스템을 사용하여 사용되는 사우스브리지 칩 유형에 관계없이 사운드 카드를 찾을 수 있습니다.
"클래스" 드라이버는 공통 인터페이스를 구현하는 다양한 공급업체의 장치를 처리합니다.
이는 예를 들어 대용량 저장 장치에 대한 표준이 있고 단일 드라이버가 호환된다고 주장하는 모든 장치를 처리하는 USB 장치의 경우 일반적입니다.