Microsoft ASL 컴파일러

Microsoft ASL(ACPI 원본 언어) 컴파일러 5.0 버전은 고급 구성 및 전원 인터페이스 사양, 수정 버전 5.0(ACPI 5.0 사양)의 기능을 지원합니다. ASL 컴파일러는 WDK(Windows 드라이버 키트) 8.1과 함께 배포됩니다. 설치된 WDK의 Tools\arm\ACPIVerify, Tools\x86\ACPIVerify 또는 Tools\x64\ACPIVerify 디렉터리에서 Asl.exe 실행 파일을 찾아보세요.

명령줄 옵션

Microsoft ASL 컴파일러는 여러 가지 명령줄 옵션을 지원합니다. 사용 가능한 명령줄 옵션을 나열하려면 명령 프롬프트 창에서 "asl /?" 명령을 실행합니다.

사용

ASL 컴파일러는 다음 명령줄 옵션을 지원합니다.

asl /?
asl [/nologo] /d <BinFile>
asl [/nologo] /u [/Fa=<ASMFile>] [/Fl=<LSTFile>] [/Fn=<NSDFile>] <AMLFile>
asl [/nologo] /tab=<TabSig> [/c] [/Fa=<ASMfile>] [/Fl=<LSTFile>] [/Fn=<NSDFile>]
asl [/nologo] [/Fo=<AMLFile>] [/Fa=<ASMFile>] [/Fl=<LSTFile>] [/Fn=<NSDFile>] <ASLFile>

옵션설명
?이 도움말 메시지를 인쇄합니다.
nologo로고 배너를 표시하지 않습니다.
Fo=<AMLFile>DefinitionBlock의 AML 파일 이름을 재정의합니다.
Fa=<ASMFile>이름이 <ASMFile>인 .ASM 파일을 생성합니다.
Fl=<LSTFile>이름이 <LSTFile>인 .LST 파일을 생성합니다.
Fn=<NSDFile>이름이 <NSDFile>인 네임스페이스 덤프 파일을 생성합니다.
d텍스트 형식의 이진 파일을 덤프합니다.
uAML 파일을 .ASL 파일(기본값) 또는 .LST 파일로 언어셈블합니다.
tab=<TabSig>ASL 테이블을 .ASL 파일(기본값) 또는 .LST 파일로 언어셈블합니다. 비 ASL 테이블을 .TXT 파일로 덤프합니다. <TabSig>가 '*'인 경우 모든 테이블을 ACPI.TXT로 덤프합니다. 또한 <TabSig>는 테이블의 실제 주소일 수도 있습니다.
c테이블에서 이진 파일을 만듭니다.

 

Microsoft ASL 컴파일러의 ACPI 테이블 로드 기능 사용

시스템을 개발하는 동안 다양한 ACPI BIOS 구조를 시뮬레이트하여 개발 시스템에서 테스트하는 것은 매우 유용합니다. Windows XP부터는 Windows 운영 체제를 통해 특정 ACPI 테이블이 PC의 BIOS ROM이 아니라 Windows 레지스트리에서 로드될 수 있습니다. 이 기능을 사용하려면 관리자 권한이 필요하며 시스템에서 테스트 서명을 사용하도록 설정해야 합니다. UEFI 보안 부팅을 지원하는 시스템의 경우 테스트 서명을 사용할 수 없으며, UEFI 보안 부팅을 사용하지 않도록 설정하거나 시스템에 Windows 디버그 정책을 설치하지 않은 한 컴파일러의 테이블 로드 기능을 사용할 수 없습니다.

테이블 로드 기능을 사용하려면 오버로드될 ACPI 테이블이 다음 요구 사항을 충족해야 합니다.

  • 오버로드될 테이블이 시스템의 BIOS ROM에 이미 있어야 합니다. 예를 들어 DSDT는 오버로드될 수 있습니다. 그러나 컴퓨터에 SSDT가 없는 경우 이 레지스트리 재정의 메커니즘에서 SSDT가 로드되도록 강제할 수 없습니다.
  • 테이블에 Windows ACPI 인터프리터(Acpi.sys 드라이버)가 일반적으로 사용하는 AML 코드가 포함되어야 합니다.
  • 가장 높은 버전 번호의 테이블이 로드됩니다. 테스트를 위해 레지스트리에 로드되는 테이블은 BIOS ROM의 동일한 테이블보다 버전 번호가 더 높아야 합니다.
  • 로드될 테이블은 컴파일된(AML) 형식이어야 하며 올바른 매개 변수를 지정하여 올바른 위치의 레지스트리에 로드되어야 합니다. 여기에서 설명하는 메커니즘은 테이블 로드 및 레지스트리 구성의 모든 측면을 처리하도록 설계되었습니다.
경고  이 문서에 설명된 프로세스를 사용하는 경우 Windows 시스템이 부팅할 수 없는 상태가 될 수도 있습니다. 여기에 설명된 절차를 시도하기 전에 동일한 컴퓨터에서 NTFS 파일 시스템을 지원하는 다른 운영 체제(즉, "안전한 빌드")에 액세스할 수 있는지 확인합니다. 이 프로세스는 시스템 개발자와 테스터에게만 제공되며 개발 또는 프로덕션 용도의 중요한 컴퓨터에서 사용해서는 안 됩니다.
 

사용

테스트 목적으로 레지스트리에 ACPI 테이블을 로드하기 위해 ASL 컴파일러는 다음과 같이 호출됩니다.

asl.exe /loadtable [-v] [-d] <AMLFile>

여기에서 AMLFile은 레지스트리에 로드하려는 테이블을 포함하는 컴파일된 AML 파일의 이름입니다.

옵션설명
-v

자세한 정보 표시 모드. 유틸리티에서 추가 디버깅 출력을 켭니다.

-d

삭제. 이전에 로드된 AML 파일을 레지스트리에서 제거하고 관련된 모든 레지스트리 키를 삭제합니다.

 

기타 리소스

 

 

표시: