Linux内核学习笔记——ACPI命名空间

所有定义块都加载到单个命名空间中。命名空间 是由名称和路径标识的对象层次结构。 以下命名约定适用于 ACPI 中的对象名称 命名空间:

所有名称的长度均为 32 位。

名称的第一个字节必须是“A”-“Z”、“_”之一。

名称的每个剩余字节必须是“A”-“Z”、“0”之一 - ‘9’, ‘_’.

以“_”开头的名称由 ACPI 规范保留。

“”符号表示命名空间的根(即名称 前缀为 ‘’ 是相对于命名空间根目录的)。

“^”符号表示当前命名空间节点的父节点 (即以“^”开头的名称相对于 当前命名空间节点)。

下图显示了一个示例 ACPI 命名空间:

+------+
| \    |                     Root
+------+|| +------++-| _PR  |                 Scope(_PR): the processor namespace| +------+|   ||   | +------+|   +-| CPU0 |             Processor(CPU0): the first processor|     +------+|| +------++-| _SB  |                 Scope(_SB): the system bus namespace| +------+|   ||   | +------+|   +-| LID0 |             Device(LID0); the lid device|   | +------+|   |   ||   |   | +------+|   |   +-| _HID |         Name(_HID, "PNP0C0D"): the hardware ID|   |   | +------+|   |   ||   |   | +------+|   |   +-| _STA |         Method(_STA): the status control method|   |     +------+|   ||   | +------+|   +-| PCI0 |             Device(PCI0); the PCI root bridge|     +------+|       ||       | +------+|       +-| _HID |         Name(_HID, "PNP0A08"): the hardware ID|       | +------+|       ||       | +------+|       +-| _CID |         Name(_CID, "PNP0A03"): the compatible ID|       | +------+|       ||       | +------+|       +-| RP03 |         Scope(RP03): the PCI0 power scope|       | +------+|       |   ||       |   | +------+|       |   +-| PXP3 |     PowerResource(PXP3): the PCI0 power resource|       |     +------+|       ||       | +------+|       +-| GFX0 |         Device(GFX0): the graphics adapter|         +------+|           ||           | +------+|           +-| _ADR |     Name(_ADR, 0x00020000): the PCI bus address|           | +------+|           ||           | +------+|           +-| DD01 |     Device(DD01): the LCD output device|             +------+|               ||               | +------+|               +-| _BCL | Method(_BCL): the backlight control method|                 +------+|| +------++-| _TZ  |                 Scope(_TZ): the thermal zone namespace| +------+|   ||   | +------+|   +-| FN00 |             PowerResource(FN00): the FAN0 power resource|   | +------+|   ||   | +------+|   +-| FAN0 |             Device(FAN0): the FAN0 cooling device|   | +------+|   |   ||   |   | +------+|   |   +-| _HID |         Name(_HID, "PNP0A0B"): the hardware ID|   |     +------+|   ||   | +------+|   +-| TZ00 |             ThermalZone(TZ00); the FAN thermal zone|     +------+|| +------++-| _GPE |                 Scope(_GPE): the GPE namespace+------+Figure 2. Example ACPI Namespace

Linux ACPI 设备树

结构acpi_device对象的 sysfs 层次结构对应于 图 2 中所示的示例 ACPI 命名空间,添加了 固定PWR_BUTTON/SLP_BUTTON设备如下所示:

+--------------+---+-----------------+
| LNXSYSTEM:00 | \ | acpi:LNXSYSTEM: |
+--------------+---+-----------------+|| +-------------+-----+----------------++-| LNXPWRBN:00 | N/A | acpi:LNXPWRBN: || +-------------+-----+----------------+|| +-------------+-----+----------------++-| LNXSLPBN:00 | N/A | acpi:LNXSLPBN: || +-------------+-----+----------------+|| +-----------+------------+--------------++-| LNXCPU:00 | \_PR_.CPU0 | acpi:LNXCPU: || +-----------+------------+--------------+|| +-------------+-------+----------------++-| LNXSYBUS:00 | \_SB_ | acpi:LNXSYBUS: || +-------------+-------+----------------+|   ||   | +- - - - - - - +- - - - - - +- - - - - - - -+|   +-| PNP0C0D:00 | \_SB_.LID0 | acpi:PNP0C0D: ||   | +- - - - - - - +- - - - - - +- - - - - - - -+|   ||   | +------------+------------+-----------------------+|   +-| PNP0A08:00 | \_SB_.PCI0 | acpi:PNP0A08:PNP0A03: ||     +------------+------------+-----------------------+|       ||       | +-----------+-----------------+-----+|       +-| device:00 | \_SB_.PCI0.RP03 | N/A ||       | +-----------+-----------------+-----+|       |   ||       |   | +-------------+----------------------+----------------+|       |   +-| LNXPOWER:00 | \_SB_.PCI0.RP03.PXP3 | acpi:LNXPOWER: ||       |     +-------------+----------------------+----------------+|       ||       | +-------------+-----------------+----------------+|       +-| LNXVIDEO:00 | \_SB_.PCI0.GFX0 | acpi:LNXVIDEO: ||         +-------------+-----------------+----------------+|           ||           | +-----------+-----------------+-----+|           +-| device:01 | \_SB_.PCI0.DD01 | N/A ||             +-----------+-----------------+-----+|| +-------------+-------+----------------++-| LNXSYBUS:01 | \_TZ_ | acpi:LNXSYBUS: |+-------------+-------+----------------+|| +-------------+------------+----------------++-| LNXPOWER:0a | \_TZ_.FN00 | acpi:LNXPOWER: || +-------------+------------+----------------+|| +------------+------------+---------------++-| PNP0C0B:00 | \_TZ_.FAN0 | acpi:PNP0C0B: || +------------+------------+---------------+|| +-------------+------------+----------------++-| LNXTHERM:00 | \_TZ_.TZ00 | acpi:LNXTHERM: |+-------------+------------+----------------+Figure 3. Example Linux ACPI Device Tree

注意

每个节点都表示为“对象/路径/模态别名”,其中:

“对象”是 sysfs 中对象目录的名称。

“path”是相应 ACPI 命名空间对象,由对象的“路径”返回 系统属性。

‘modalias’ 是对象的 ‘modalias’ sysfs 的值 属性(如本文档前面所述)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/50789.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【移动端开发】鸿蒙系统开发入门:代码示例与详解

一、引言 随着华为鸿蒙系统的日益成熟,越来越多的开发者开始关注这一新兴的操作平台。本文旨在为初学者提供一份详尽的鸿蒙系统开发入门指南,通过具体的代码示例,引导大家逐步掌握鸿蒙开发的基本概念和技术。 二、鸿蒙系统开发基础 鸿蒙系…

Mysql-InnoDB数据页结构

一、页结构说明 大致分7部分 二、记录在页中的存储 2.1 页面记录内存结构 行格式 存储到 User Records 部分,每当我们插入一条记录,都会从 Free Space 部分申请一个记录大小的空间划分到 User Records 部分 ,用完则申请新的页; …

open cv学习 (十一)视频处理

视频处理 demo1 import cv2 # 打开笔记本内置摄像头 capture cv2.VideoCapture(0) # 笔记本内置摄像头被打开 while capture.isOpened():# 从摄像头中实时读取视频retval, image capture.read()# 在窗口中实时显示读取到的视频cv2.imshow("Video", image)# 等到用…

《React.js手把手教程:从初学者到实战高手》- 关于React.js

最近公司倒闭了。目前这个大环境,不知何时能找到下一家。但人不能闲着,总得给自己找点事做。 其实很早之前就想写本书了,但苦于一直没有闲情。既然现在有点时间,那就开始动手吧。 刚开始是想写有关React Native的,但…

【MySQL系列】Select语句单表查询详解(一)

💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤 📃个人主页 :阿然成长日记 …

【unity数据持久化】XML数据管理器知识点

👨‍💻个人主页:元宇宙-秩沅 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 秩沅 原创 👨‍💻 收录于专栏:Uni…

计算工具类

计算工具类: package com.test.common.utils;import org.springframework.lang.NonNull; import org.springframework.stereotype.Component;import java.time.Duration; import java.util.Date; import java.util.Objects;/*** 计算工具类*/ Component public class Calculat…

Wireshark数据抓包分析之互联网协议(IP协议)

一、实验目的: 通过wireshark抓包分析IP协议的具体内容 二、预备知识: 1.IP地址存在的意义,就是为了弥补mac地址的不足,用于区分不同的网络 2.还有一些ip协议、ip数据包这些东西 三、网络拓扑 四、实验过程: part1&…

如何在 Kubernetes 中借助 Service 实现灰度发布和蓝绿发布

前言 部署在 Kubernetes 集群中的应用,在升级发布时可能会存在的问题: 1,由于 Kuberneter 底层 Pod 容器生命周期与网络组件生命周期是异步管理的,在升级时如果没有处理好应用优雅退出的问题,就很容易导致 http 访问请…

四川玖璨电子商务有限公司:怎么拉升抖店体验分

抖音是中国最受欢迎的短视频分享平台之一,而在抖音上开设自己的抖店成为许多电商从业者的选择。为了提高抖店的曝光度和用户体验,抖店体验分成为了一个重要的指标。在本文中,小编将从两个方面来讨论怎么拉升抖店体验分,包括影响因…

Flink的Standalone部署实战

在Flink是通用的框架,以混合和匹配的方式支持部署不同场景,而Standalone单机部署方便快速部署,记录本地部署过程,方便备查。 环境要求 1)JDK1.8及以上 2)flink-1.14.3 3)CentOS7 Flink相关信…

第 7 章 排序算法(4)(插入排序)

7.7插入排序 7.7.1插入排序法介绍: 插入式排序属于内部排序法,是对于欲排序的元素以插入的方式找寻该元素的适当位置,以达到排序的目的。 7.7.2插入排序法思想: 插入排序(Insertion Sorting)的基本思想是:把n个待排…

app版本号比对

package com.zyy.user.api.helper;import com.zyy.framework.model.dto.result.ResultEnum; import com.zyy.framework.model.exception.BusinessException; import lombok.Builder; import lombok.Data;import javax.validation.constraints.NotNull;/*** APP版本比较工具*/ p…

点云平面拟合和球面拟合

一、介绍 In this tutorial we learn how to use a RandomSampleConsensus with a plane model to obtain the cloud fitting to this model. 二、代码 #include <iostream> #include <thread> #include <pcl/point_types.h> #include <pcl/common/io.…

Android GreenDao数据库升级(附Demo)

前言 大家好久不见&#xff0c;一转眼马上八月份下旬了&#xff0c;最近由于工作比较忙&#xff0c;没时间给大家更新博文。百忙之中抽出时间&#xff0c;给大家来更新一篇关于GreenDao3数据库的升级。 关于GreenDao的详细介绍以及一些逻辑性的增、删、改、查等&#xff0c;可以…

Nevron Open Vision for .NET Crack

Nevron Open Vision for .NET Crack NET Vision是一个用于生成具有数据可视化功能的强大数据表示应用程序的包。该套件具有用于.NET的Nevron Chart、用于.NET的Nevron Diagram和用于.NET的Nevron User Interface。精心设计的对象模型、许多功能和卓越的演示使复杂数据的可视化变…

【Git起步】初次安装和配置

1.什么是版本控制 版本控制系统&#xff08;VCS&#xff09;是一种记录文件内容变化以便将来查阅特定版本修订情况的系统。 使用版本控制系统在出错时、需要时可以回溯。 2.Git简介 Git是一个分布式版本控制系统&#xff0c;用于跟踪和管理代码的变更历史。 它允许开发者在…

git操作:将一个仓库的分支提交到另外一个仓库分支

这个操作&#xff0c;一般是同步不同网站的同个仓库&#xff0c;比如说gitee 和github。某个网站更新了&#xff0c;你想同步他的分支过来。然后基于分支开发或者其它。 操作步骤 1.本地先clone 你自己的仓库。也就是要push 分支的仓库。比如A仓库&#xff0c;把B仓库分支&am…

分类预测 | MATLAB实现S4VM半监督支持向量机二分类预测

分类预测 | MATLAB实现S4VM半监督支持向量机二分类预测 目录 分类预测 | MATLAB实现S4VM半监督支持向量机二分类预测分类效果基本介绍程序设计参考资料 分类效果 基本介绍 分类预测 | MATLAB实现S4VM半监督支持向量机二分类预测 程序设计 完整源码和数据获取方式&#xff1a; …

使用端口映射实现Spring Boot服务端接口的公网远程调试:详细配置与步骤解析

文章目录 前言1. 本地环境搭建1.1 环境参数1.2 搭建springboot服务项目 2. 内网穿透2.1 安装配置cpolar内网穿透2.1.1 windows系统2.1.2 linux系统 2.2 创建隧道映射本地端口2.3 测试公网地址 3. 固定公网地址3.1 保留一个二级子域名3.2 配置二级子域名3.2 测试使用固定公网地址…