요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
User-defined table과 AML load
configfs-acpi:9-28Binary aml attribute에 data를 쓴 뒤 file을 닫을 때 table load와 ACPI device enumeration이 실행되고, close() error code가 성공 여부를 전달합니다.
Loaded table metadata
configfs-acpi:30-52Load 성공 후 signature, length, ACPI revision, OEM identity와 ASL compiler identity를 read-only attribute로 제공합니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
What: /config/acpi
Date: July 2016
KernelVersion: 4.8
Contact: [email protected]
Description:
This represents the ACPI subsystem entry point directory. It
contains sub-groups corresponding to ACPI configurable options.
What: /config/acpi/table
Date: July 2016
KernelVersion: 4.8
Description:
This group contains the configuration for user defined ACPI
tables. The attributes of a user define table are:
aml
- a binary attribute that the user can use to
fill in the ACPI aml definitions. Once the aml
data is written to this file and the file is
closed the table will be loaded and ACPI devices
will be enumerated. To check if the operation is
successful the user must check the error code
for close(). If the operation is successful,
subsequent writes to this attribute will fail.
The rest of the attributes are read-only and are valid only
after the table has been loaded by filling the aml entry:
signature
- ASCII table signature
length
- length of table in bytes, including the header
revision
- ACPI Specification minor version number
oem_id
- ASCII OEM identification
oem_table_id
- ASCII OEM table identification
oem_revision
- OEM revision number
asl_compiler_id
- ASCII ASL compiler vendor ID
asl_compiler_revision
- ASL compiler version
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
ACPI subsystem의 configfs 진입점
1-7| 항목 | 내용 |
|---|---|
| What | /config/acpi |
| Date | 2016년 7월 |
| KernelVersion | 4.8 |
| Contact | [email protected] |
| Description | ACPI subsystem의 진입점 directory를 나타낸다. ACPI에서 설정할 수 있는 option에 대응하는 subgroup을 포함한다. |
User-defined ACPI table configuration
9-16| 항목 | 내용 |
|---|---|
| What | /config/acpi/table |
| Date | 2016년 7월 |
| KernelVersion | 4.8 |
| Description | 이 group은 사용자가 정의한 ACPI table의 configuration을 담는다. |
Binary aml attribute와 close-time load
17-28`aml`은 사용자가 ACPI AML definition을 채우는 데 사용할 수 있는 binary attribute이다. AML data를 이 file에 쓰고 file을 닫으면 table이 load되고 ACPI device가 enumerate된다.
Operation의 성공 여부를 확인하려면 사용자가 `close()`의 error code를 검사해야 한다. Operation이 성공했다면 이 attribute에 대한 이후 write는 실패한다.
나머지 attribute는 read-only이며, `aml` entry를 채워 table이 load된 뒤에만 유효하다.
File write 자체가 아니라 close 시점이 table load를 확정하는 경계이며, 결과는 close의 error code로 전달된다.
Load 후 읽을 수 있는 table metadata
30-52| Attribute | 내용 |
|---|---|
| signature | ASCII table signature |
| length | Header를 포함한 table의 byte 단위 길이 |
| revision | ACPI Specification minor version number |
| oem_id | ASCII OEM identification |
| oem_table_id | ASCII OEM table identification |
| oem_revision | OEM revision number |
| asl_compiler_id | ASCII ASL compiler vendor ID |
| asl_compiler_revision | ASL compiler version |
ACPI configfs entry point
configfs-acpi:1-7/config/acpi는 ACPI subsystem의 configfs 진입점이며 configurable option별 subgroup을 포함합니다.