요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
WMI identity and capability metadata
sysfs-bus-wmi:24-81uevent MODALIAS와 interface GUID, ACPI object·notify ID, instance count, expensive와 setable flag를 노출합니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
1
What: /sys/bus/wmi/devices/.../driver_override
2
Date: February 2024
3
Contact: Armin Wolf <[email protected]>
4
Description:
5
This file allows the driver for a device to be specified which
6
will override standard ID table matching.
7
When specified, only a driver with a name matching the value
8
written to driver_override will have an opportunity to bind
9
to the device.
10
The override is specified by writing a string to the
11
driver_override file (echo wmi-event-dummy > driver_override).
12
The override may be cleared with an empty string (echo > \
13
driver_override) which returns the device to standard matching
14
rules binding.
15
Writing to driver_override does not automatically unbind the
16
device from its current driver or make any attempt to automatically
17
load the specified driver. If no driver with a matching name is
18
currently loaded in the kernel, the device will not bind to any
19
driver.
20
This also allows devices to opt-out of driver binding using a
21
driver_override name such as "none". Only a single driver may be
22
specified in the override, there is no support for parsing delimiters.
24
What: /sys/bus/wmi/devices/.../modalias
25
Date: November 20:15
26
Contact: Andy Lutomirski <[email protected]>
27
Description:
28
This file contains the MODALIAS value emitted by uevent for a
29
given WMI device.
31
Format: wmi:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX.
33
What: /sys/bus/wmi/devices/.../guid
34
Date: November 2015
35
Contact: Andy Lutomirski <[email protected]>
36
Description:
37
This file contains the GUID used to match WMI devices to
38
compatible WMI drivers. This GUID is not necessarily unique
39
inside a given machine, it is solely used to identify the
40
interface exposed by a given WMI device.
42
What: /sys/bus/wmi/devices/.../object_id
43
Date: November 2015
44
Contact: Andy Lutomirski <[email protected]>
45
Description:
46
This file contains the WMI object ID used internally to construct
47
the ACPI method names used by non-event WMI devices. It contains
48
two ASCII letters.
50
What: /sys/bus/wmi/devices/.../notify_id
51
Date: November 2015
52
Contact: Andy Lutomirski <[email protected]>
53
Description:
54
This file contains the WMI notify ID used internally to map ACPI
55
events to WMI event devices. It contains two ASCII letters.
57
What: /sys/bus/wmi/devices/.../instance_count
58
Date: November 2015
59
Contact: Andy Lutomirski <[email protected]>
60
Description:
61
This file contains the number of WMI object instances being
62
present on a given WMI device. It contains a non-negative
63
number.
65
What: /sys/bus/wmi/devices/.../expensive
66
Date: November 2015
67
Contact: Andy Lutomirski <[email protected]>
68
Description:
69
This file contains a boolean flag signaling if interacting with
70
the given WMI device will consume significant CPU resources.
71
The WMI driver core will take care of enabling/disabling such
72
WMI devices.
74
What: /sys/bus/wmi/devices/.../setable
75
Date: May 2017
76
Contact: Darren Hart (VMware) <[email protected]>
77
Description:
78
This file contains a boolean flags signaling the data block
79
associated with the given WMI device is writable. If the
80
given WMI device is not associated with a data block, then
81
this file will not exist.
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
WMI device driver override
1-22| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/bus/wmi/devices/.../driver_override |
| Date | 2024년 2월 |
| Contact | Armin Wolf <[email protected]> |
| Description | 장치에 사용할 driver를 지정해 표준 ID table matching을 override합니다. 값을 지정하면 driver_override에 쓴 값과 이름이 일치하는 driver만 장치에 bind할 기회를 얻습니다. 문자열을 써서 override를 지정하고(echo wmi-event-dummy > driver_override), 빈 문자열로 clear합니다(echo > driver_override). Clear하면 장치는 표준 matching rule에 따른 binding으로 돌아갑니다. driver_override에 쓰는 동작은 장치를 현재 driver에서 자동으로 unbind하지 않으며 지정한 driver를 자동 load하려고도 하지 않습니다. 일치하는 driver가 kernel에 load되어 있지 않으면 장치는 어떤 driver에도 bind되지 않습니다. "none" 같은 이름을 사용해 driver binding을 거부할 수도 있습니다. Override에는 driver 하나만 지정할 수 있으며 delimiter parsing은 지원하지 않습니다. |
echo wmi-event-dummy > driver_override
echo > driver_override
WMI uevent MODALIAS
24-31| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/bus/wmi/devices/.../modalias |
| Date | November 20:15 (원문 표기) |
| Contact | Andy Lutomirski <[email protected]> |
| Description | 해당 WMI device의 uevent가 내보내는 MODALIAS 값을 담습니다. 형식은 wmi:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX입니다. |
WMI interface GUID
33-40| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/bus/wmi/devices/.../guid |
| Date | 2015년 11월 |
| Contact | Andy Lutomirski <[email protected]> |
| Description | WMI device와 compatible WMI driver를 match하는 데 사용하는 GUID를 담습니다. 이 GUID는 한 machine 안에서 반드시 unique하지는 않으며, 해당 WMI device가 노출하는 interface를 식별하는 용도로만 사용합니다. |
Non-event WMI object ID
42-48| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/bus/wmi/devices/.../object_id |
| Date | 2015년 11월 |
| Contact | Andy Lutomirski <[email protected]> |
| Description | Non-event WMI device가 사용하는 ACPI method name을 내부적으로 만들 때 쓰는 WMI object ID를 담습니다. ASCII letter 두 개로 구성됩니다. |
WMI event notify ID
50-55| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/bus/wmi/devices/.../notify_id |
| Date | 2015년 11월 |
| Contact | Andy Lutomirski <[email protected]> |
| Description | ACPI event를 WMI event device에 내부적으로 mapping하는 데 사용하는 WMI notify ID를 담습니다. ASCII letter 두 개로 구성됩니다. |
WMI object instance 수
57-63| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/bus/wmi/devices/.../instance_count |
| Date | 2015년 11월 |
| Contact | Andy Lutomirski <[email protected]> |
| Description | 해당 WMI device에 존재하는 WMI object instance 수를 담습니다. 값은 non-negative number입니다. |
CPU 비용이 큰 WMI interaction
65-72| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/bus/wmi/devices/.../expensive |
| Date | 2015년 11월 |
| Contact | Andy Lutomirski <[email protected]> |
| Description | 해당 WMI device와 interaction할 때 상당한 CPU resource가 소비되는지 나타내는 boolean flag입니다. 이런 WMI device의 enable·disable은 WMI driver core가 처리합니다. |
WMI data block 쓰기 가능 여부
74-81| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/bus/wmi/devices/.../setable |
| Date | 2017년 5월 |
| Contact | Darren Hart (VMware) <[email protected]> |
| Description | 해당 WMI device와 연결된 data block이 writable인지 나타내는 boolean flag입니다. WMI device가 data block과 연결되어 있지 않으면 이 file은 존재하지 않습니다. |
Explicit driver selection
sysfs-bus-wmi:1-22표준 ID table matching을 대체하는 단일 driver_override와 clear·load·unbind 비자동화 규칙을 정의합니다.