둘 다 커널 이벤트를 수신하고 처리하는 것 같은데 왜 모두 존재합니까? 내가 알 수 있는 바에 따르면 ACPI는 udev보다 더 발전된 것 같지만 그 외에는 실제로 차이를 만들 수 없습니다.
답변1
ACPI운영 체제가 (신뢰할 수 있게) 자동으로 감지할 수 없는 내장 장치에 대한 정보를 제공하는 데 사용되는 마더보드 공급업체의 저수준 인터페이스입니다. 또한 커널의 전원 관리 및 하드웨어 모니터링 방법도 제공합니다. ACPI가 제공하는 흥미로운 기능 중 하나는 소위 ACPI 이벤트입니다. 이러한 인터럽트를 생성하기 위해 내장 하드웨어에 어떤 일이 발생하면 하드웨어는 특수 인터럽트(범용 이벤트 인터럽트)를 발행하고 커널은 ACPI 코드를 호출하여 어떤 내장 장치에서 무슨 일이 발생했는지 확인합니다. 보다사양전체 작동 방식에 대한 세부 사항을 알고 싶다면.
산커널의 ACPI 하위 시스템에서 생성된 이벤트를 수신하고 특정 이벤트가 발생할 때 명령이 실행되도록 허용하는 데몬입니다. 예를 들어 하드웨어가 ACPI를 통해 전원 버튼을 눌렀다는 신호를 보내는 경우 장치의 버튼/전원 클래스에 대한 이벤트를 수신하게 됩니다. 데몬은 USB 버스와 같은 이벤트가 아닌 ACPI를 통해 생성된 이러한 이벤트에만 반응할 수 있습니다.
우데브커널이 관리하는 장치 트리의 변경 사항에 반응할 수 있는 Linux 전용 데몬입니다. 예를 들어, USB 메모리 스틱이 삽입되면 USB 컨트롤러는 커널에 알리고 Linux 장치 트리에 새 장치를 추가합니다. 그런 다음 드라이버는 usb_storage
새 장치가 저장 장치임을 감지하고 트리에 하위 장치 노드를 생성하여 사용자 공간이 USB 스틱을 다른 하드 드라이브처럼 처리할 수 있도록 합니다. 플러그를 뽑으면 해당 장치는 트리에서 제거됩니다. udev는 모든 추가 및 삭제에 대해 알림을 받습니다. udev는 CD 트레이 열기/닫기와 같은 장치 추가/제거가 아닌 일부 이벤트에도 반응할 수 있지만 그게 전부입니다. 이를 실행하여 udevadm monitor --kernel
udev가 실시간으로 어떤 이벤트를 받는지 확인할 수 있습니다.
당신은 그렇게 말할 수 있습니다산그리고우데브서로를 보완하십시오.우데브운영 체제에 알려진 모든 장치의 중요한 변경 사항에 대응하는 데 유용합니다.산일부 내장 장치에서 발생하는 보다 구체적인 이벤트에 반응하는 데 유용합니다.