sdyxz123 2023-09-12 17:09 采纳率: 39%
浏览 8
已结题

ACPI 如何标识设备相关疑问

ACPI 规范中 _HID _CID _UID 分别是什么意思呢,区别是什么呢,特别一直搞不清楚三者之间的关系与联系.
在我自己的板子上,有4个LED 灯两个LED灯指示 状态,两个LED灯指示充电,有两种方式在ACPI 中表示它们:

  1. HID 是一样,然后用UID 去区别?

  2. HID 去区分 不同类型LED,然后在用UID 索引

    最好是用哪种呢?或者还有其它方法没

比如 (HID号只是在这里举例子)

只用UID 去索引:
充电的LED:
LED1 HID = LED0001 UID = 1
LED2 HID =LED0001 UID = 2

状态的LED:
LED1 HID = LED0001 UID = 3
LED2 HID =LED0001 UID = 4

用HID和UID 去索引: 但是这种会注册很多 HID,因为HID 是唯一的在公司内部,浪费资源
充电的LED:
LED1 HID = LED0001 UID = 1
LED2 HID =LED0001 UID = 2

状态的LED:
LED1 HID = LED0002 UID = 1
LED2 HID =LED0002 UID = 2

  • 写回答

7条回答 默认 最新

  • 小明爱吃火锅 2023-09-12 17:35
    关注

    在ACPI(Advanced Configuration and Power Interface)规范中,_HID,_CID,和_UID都是重要的标识符,它们分别代表了“硬件标识符”(Hardware ID),“组件标识符”(Component ID),和“用户定义唯一标识符”(User-Defined Unique ID)。

    _HID(Hardware ID):这是用来标识计算机系统中硬件的唯一标识符。在ACPI中,每个硬件设备都需要一个唯一的HID。通常,HID是由设备制造商提供的,用于区分不同的硬件设备。
    _CID(Component ID):这是在某些情况下用于标识设备的额外标识符。它也可以是制造商定义的,但与HID不同的是,CID并不是必须的,而且一个设备可以有多个CID。通常,CID用于在同一硬件类别(如硬盘、网卡等)中的不同型号或版本之间进行区分。
    _UID(User-Defined Unique ID):这是用户定义的一个唯一标识符,用于在同一类型的不同设备之间进行区分。例如,你可以有一个HID为"Mouse",然后为每个鼠标分配一个唯一的UID。
    关于你的问题,关于使用UID单独索引还是使用HID和UID联合索引,取决于你的具体情况。如果你的设备种类不多,而且每个设备都有唯一的HID,那么使用HID和UID联合索引可能会更好,尽管这会注册更多的HID。因为这样可以使你更精确地指定每个设备及其特定的功能。然而,如果你的设备种类非常多,而且每个设备的HID不唯一,那么使用UID单独索引可能是一个更好的选择,这样你就不需要在HID上浪费资源。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 9月13日
  • 已采纳回答 9月13日
  • 创建了问题 9月12日

悬赏问题

  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 关于大棚监测的pcb板设计
  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 lna设计 源简并电感型共源放大器
  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用