*적용중인 도장
4. ACPI
ACPI (DSDT / SSDT) 테이블로드, 쉴드 및 패치
ACPI (고급 구성 및 전원 인터페이스)는 컴퓨터 하드웨어 검색 및 구성을위한 개방형 표준입니다.
ACPI 사양이 구현되는 표준 테이블을 정의한다 (예를 들어 DSDT
, SSDT
, FACS
, DMAR
), 각종 방법 (예컨대 _DSM
및 _PRW
). 최신 하드웨어는 ACPI 호환성을 유지하기 위해 거의 변경하지 않아도되지만 OpenCore는 여전히 ACPI를 수정하는 방법을 제공합니다.
ACPI 테이블을 분해하고 컴파일하기 위해 ACPICA에서 개발 한 iasl Compiler를 사용할 수 있습니다 . Acidanthera / MaciASL 에서. iASL 의 그래픽 인터페이스 프로그램 을 다운로드 할 수 있습니다 .
ACPI 수리는 다음 순서로 수행됩니다.
운영 체제에서 감지 한 문제를 해결하기 위해 ACPI에 대한 모든 변경 사항이 모든 운영 체제에 적용됩니다. 그러나 일부 시나리오 (ACPI 쓰기가 표준화되지 않음, 운영 체제 체인 부팅, ACPI 디버깅)에서는 문제가 발생합니다. 따라서 ACPI를 복구 할 때는 \_OSI
방법을 사용해야 합니다.
시스템 부팅 전에 패치를로드하면 "프록시"패치를 작성할 수 있습니다. "프록시"패치는 이름을 변경하여 DSDT의 원래 동작을 수정 한 다음 SSDT를 사용하여 동일한 이름의 동작을 대신 주입합니다.
OpenCore, WhateverGreen, VirtualSmc 및 VoodooPS2의 GitHub 리포지토리에는 모두 SSDT 및 기타 ACPI 패치 방법이 포함되어 있습니다. AppleLife the Laboratory 섹션 에서 DSDT 섹션은 많은 튜토리얼 및 샘플 (예 : 랩탑 배터리 수리 튜토리얼 )을 제공합니다. Dortania 는 또한 많은 ACPI 관련 자습서를 작성했습니다 . 그러나이 튜토리얼은 OpenCore와 관련이 없으며 제공되는 솔루션이 반드시 유용한 것은 아닙니다.
번역가 주 : 중국 흑인 Apple 플레이어의 경우 OC-little 프로젝트를 강력히 권장 하며 SSDT의 많은 예제와 지침을 제공합니다. 노트북 사용자의 배터리 수리는 이 자습서 를 참조하십시오 .
Add
유형 : plist array
Failsafe : Empty
설명 : From OC/ACPI
지정된 디렉토리 ACPI 테이블을로드합니다.
plist dict
각 블록 채워진 레벨 항목을 설명 하는 값으로 설계되었습니다 . 아래 4.3 속성 추가 섹션을 참조하십시오 .
Delete
유형 : plist array
Failsafe : Empty
설명 : ACPI 스택에서 선택한 테이블을 삭제합니다.
plist dict
각 블록 채워진 레벨 항목을 설명 하는 값으로 설계되었습니다 . 아래 4.4 속성 삭제 섹션을 참조하십시오 .
Patch
유형 : plist array
Failsafe : Empty
설명 : ACPI 테이블을 추가하거나 삭제하기 전에 이진 패치가 수행됩니다.
plist dictionary
각 블록 채워진 레벨 항목을 설명 하는 값으로 설계되었습니다 . 아래 4.5 패치 속성 섹션을 참조하십시오 .
Quirks
유형 : plist dict
설명 : 아래 의 4.6 Quirks 속성 섹션에 설명 된 Quirks를 적용합니다 .
Comment
유형 : plist string
Failsafe : Empty string
설명 : 항목에 대한 사람이 읽을 수있는 참조를 제공하는 데 사용되는 임의의 ASCII 문자열입니다 (번역기 참고 : 주석).
Enabled
유형 : plist boolean
Failsafe : false
설명 :이 값을 설정하지 않으면 true
이 ACPI 테이블이 추가되지 않습니다.
Path
유형 : plist string
Failsafe : Empty string 빈 문자열
설명 :로드 할 ACPI 테이블의 경로입니다. 예시적인 값 DSDT.aml
으로서 SubDir/SSDT-8.aml
, SSDT-USBX.aml
.
ACPI 테이블에서 모두 OC/ACPI
로드 된 디렉토리,로드 순서는 배열의 항목 순서를 따릅니다.
참고 : DSDT 테이블 식별자가있는 테이블 (파일 이름이 아닌 구문 분석 된 데이터에 의해 결정됨)을 제외하고 모든 테이블은 ACPI 스택에 새 테이블로 삽입됩니다. DSDT 테이블은 나머지 테이블과 다르며 DSDT 테이블이 교체됩니다.
All
유형 : plist boolean
Failsafe : false
설명 :로 설정 true
하면 조건을 충족하는 모든 ACPI 테이블이 삭제됩니다. 그렇지 않으면 첫 번째 일치 만 삭제됩니다.
Comment
유형 : plist string
Failsafe : 빈 문자열
설명 : 항목에 대한 사람이 읽을 수있는 참조를 제공하는 데 사용되는 임의의 ASCII 문자열입니다 (번역기 참고 : 주석).
Enabled
유형 : plist boolean
Failsafe : false
설명 :이 값을 설정하지 않으면 true
이 ACPI 테이블이 삭제되지 않습니다.
OemTableId
유형 : plist data, 8 bytes
Failsafe : All zero
설명 : 테이블의 OEM ID를 여기에 채워진 값과 일치시키고 모두 0이면 무시합니다.
TableLength
유형 : plist integer
Failsafe : 0
설명 : 테이블의 크기를 여기에 채워진 값과 일치시키고 0을 채울 때 무시하십시오.
TableSignature
유형 : plist data, 4 bytes
Failsafe : 모두 0
설명 : 테이블의 서명을 여기의 값과 일치시키고 모두 0이면 무시합니다.
참고 : 시퀀스를 여러 위치에서 교체해야하는 경우, 특히 다른 유형의 이름 바꾸기 작업을 수행 할 때 테이블의 서명을 지정하지 않도록주의하십시오.
유형 : plist string
Failsafe : Empty string 빈 문자열
설명 : 항목에 대한 사람이 읽을 수있는 참조를 제공하는 데 사용되는 임의의 ASCII 문자열입니다 (번역기 참고 : 주석).
유형 : plist integer
Failsafe : 0
설명 : 패치가 적용된 횟수입니다. 이 값을 0으로 설정하면 패치가 모든 일치 항목에 적용됩니다.
유형 : plist boolean
Failsafe : false
설명 :이 값을 설정하지 않으면 true
ACPI 패치가 적용되지 않습니다.
유형 : plist data
안전 장치 : Empty data 데이터 비우기
설명 : 데이터를 찾아야하며 길이는 Replace
같아야합니다.
유형 : plist integer
Failsafe : 0
설명 : 검색 할 최대 바이트 수입니다. 이 값이 0이면 전체 ACPI 테이블을 통과합니다.
유형 : plist data
Failsafe : Empty data 빈 데이터
설명 : 비트 마스크로 비교하는 동안 사용 된 데이터를 찾습니다. 퍼지 검색은 마스크되지 않은 (0으로 설정) 비트를 무시하여 수행됩니다. 널 자료는 무시되도록 제공 될 수 있으며, 그렇지 않으면 값과 길이는 Replace
길이 와 같아야합니다.
유형 : plist data, 8 bytes
Failsafe : All zero
설명 : 테이블의 OEM ID를 여기에 채워진 값과 일치시키고 모두 0이면 무시합니다.
유형 : plist data
Failsafe : Empty data 빈 데이터
설명 : 1 바이트 이상의 교체 데이터입니다.
유형 : plist data
Failsafe : Empty data
설명 : 데이터 교체 중 사용 된 데이터가 비트 마스크됩니다. 퍼지 검색은 마스크되지 않은 (0으로 설정) 비트를 무시하여 수행됩니다. 널 자료는 무시되도록 제공 될 수 있으며, 그렇지 않으면 값과 길이는 Replace
길이 와 같아야합니다.
유형 : plist integer
Failsafe : 0
설명 : 교체를 완료하기 전에 건너 뛸 일치 수입니다.
유형 : plist integer
Failsafe : 0
설명 : 테이블의 크기를 여기에 채워진 값과 일치시키고 0을 채울 때 무시하십시오.
유형 : plist data, 4 bytes
Failsafe : 모두 0
설명 : 테이블의 서명을 여기의 값과 일치시키고 모두 0이면 무시합니다.
대부분의 경우 ACPI 패치는 유해하고 도움이되지 않습니다.
EC
및 EC0
). ACPI 일관성을 유지하려면 WhateverGreen 과 같은 I / O 레지스트리 수준에서 장치 이름을 바꾸는 것이 더 안전합니다 ._OSI
실제로 필요한 경우가 아니라면 고급 기능 세트를 지원 하지 않고 패치 를 적용합니다. 그렇게하면 일반적으로 APTIO 펌웨어가 침입하여 구멍을 채우는 패치가 더 많아집니다. 최신 펌웨어는 기본적으로 불필요하며 실제로 필요한 펌웨어는 더 작은 펌웨어로 패치하면됩니다._PRW
또는 _DSM
매직 변경 행동 등의 이름을 변경하십시오.경우에 따라 패치 적용이 실제로 의미가 있습니다.
HPET
오래된 하드웨어 _OSI
호환성 검사 에서 메소드 헤더를 피하려면 새로 고침 (또는 다른 장치)을 수행 하십시오. 그것은 할 수 A0 10 93 4F 53 46 4C 00
교체 A4 0A 0F A3 A3 A3 A3 A3
로 만들 수있는 방법 강제로 다시 0xF입니다의 목적을 달성하는 방법.if ((OSFL () == Zero)) { If (HPTE) ... Return (Zero)
_STA
_Q11
대체 할 수 있습니다 XQ11
.TianoCore 소스 파일 AcpiAml.h 는 ACPI opcode를 이해하는 데 도움이 될 수 있습니다.
참고 : Find
및 Replace
길이가 동일해야합니다 , 그렇지 않으면 ACPI 테이블은 시스템이 불안정으로 이어지는, 손상 될 수 있습니다. 필요한 경우 "에이전트"패치 방법을 사용하거나 NOP
나머지 영역을 채우십시오
유형 : plist boolean
Failsafe : false
설명 : FADT 테이블에 레지스터 재설정 플래그를 제공하여 기존 하드웨어의 재시작 및 종료를 복구합니다. 필요한 경우가 아니면 사용하지 않는 것이 좋습니다.
기존 하드웨어 및 일부 랩톱에만 필요합니다. 이 Quirk은 전원 바로 가기 키 (번역기 참고 : Command+ 전원 키)를 복구 할 수도 있습니다 . 활성화되어 있지 않으면 시스템을 종료했다가 다시 시작할 수 없으면 활성화하지 않는 것이 좋습니다.
제목 | 조회 수 | 날짜 | 글쓴이 |
---|---|---|---|
macOS Sequoia 15.0.1 24A348 정식버젼 고스트 이미지 OC 1.0.2 ft: 전체공개 +29 | 941 | 24.10.1121:10 | 좌절금지 |
오픈코어 1.0.2 +23 | 578 | 24.10.0900:22 | 줌바이퍼 |
[중급편] 노트북 해킨 +16 | 1406 | 24.07.1219:19 | Stultus |
macOS Ventura 13.7 22H123 정식버젼 고스트 이미지 OC 1.0.1 ft: 전체 공개 +17 | 575 | 24.09.1917:09 | 좌절금지 |
macOS Sonoma 14.7 23H124 정식버젼 고스트 이미지 OC 1.0.1 ft: 전체공개 +31 | 910 | 24.09.1723:58 | 좌절금지 |
[초급편] 문제 스스로 해결하기 +20 | 4003 | 24.03.2920:07 | Stultus |
[입문편] 첫 해킨 길라잡이 +40 | 5087 | 24.01.1218:54 | Stultus |
[필독 - 안정화] macOS 해킨토시 설치 후 안정화 작업 목록 및 글타래 모음 총정리 📋 +67 | 5.1만 | 23.01.0913:39 | shl628 |
Hot AMD Sequoia용 AppleALC 1.9.2 +3 | 109 | 24.10.2319:04 | 사노라맨 |
Hot [Sequoia 15.0.1, OC r1.0.2] ASUS TUF B550-PLUS / RYZEN 5 5600X / RX470 +2 | 106 | 24.10.2322:26 | 뿌엥 |
Hot OCLP로 지원되지 않는 기기/dGPU를 사용하는 해킨토시의 사이드카 품질 문제 해결방법 +1 | 121 | 24.10.2321:29 | 해킨도전자 |
106 | 24.10.2322:26 | 뿌엥 | |
122 | 24.10.2321:29 | 해킨도전자 | |
109 | 24.10.2319:04 | 사노라맨 | |
787 | 24.10.1412:27 | shl628 | |
673 | 24.10.1316:00 | 수박 | |
346 | 24.10.1222:56 | Stultus | |
941 | 24.10.1121:10 | 좌절금지 | |
734 | 24.10.1115:53 | 수박 | |
578 | 24.10.0900:22 | 줌바이퍼 | |
1406 | 24.07.1219:19 | Stultus | |
1214 | 24.10.0500:31 | 줌바이퍼 | |
569 | 24.10.0410:49 | Tamy | |
749 | 24.09.2923:48 | 머트 | |
629 | 24.09.2822:28 | 머트 | |
463 | 24.09.2808:22 | Tamy | |
894 | 24.09.2321:32 | Stultus | |
995 | 24.09.2210:59 | 좌절금지 | |
644 | 24.09.2203:23 | 누림어멈 | |
1191 | 24.09.1919:17 | 좌절금지 | |
575 | 24.09.1917:09 | 좌절금지 | |
498 | 24.09.1813:37 | Stultus | |
910 | 24.09.1723:58 | 좌절금지 | |
601 | 24.09.1722:40 | 좌절금지 | |
453 | 24.09.1717:13 | 맥가즈아 | |
562 | 24.09.1708:13 | 김경석 | |
234 | 24.09.1617:47 | Panictosh | |
768 | 24.09.1504:35 | Tamy | |
584 | 24.09.1319:18 | Stultus | |
706 | 24.09.1019:44 | 치토 | |
484 | 24.09.0118:13 | 머핀X | |
462 | 24.09.0112:54 | 해킨도전자 | |
546 | 24.08.3115:34 | 머핀X | |
306 | 24.08.2601:42 | 화정큐삼 | |
305 | 24.08.2422:59 | 하나브 | |
318 | 24.08.2316:25 | 화정큐삼 | |
415 | 24.08.1810:56 | CanBe | |
363 | 24.08.1800:04 | 화정큐삼 | |
300 | 24.08.1722:03 | 화정큐삼 | |
201 | 24.08.1710:14 | jbhlyk | |
312 | 24.08.1622:06 | Stultus | |
218 | 24.08.1511:16 | hackillious | |
169 | 24.08.1421:30 | 세유니 | |
419 | 24.08.1419:58 | Stultus | |
377 | 24.08.1311:26 | 오디세이 | |
270 | 24.08.1115:46 | 좌절금지 | |
186 | 24.08.1111:21 | 티타보르 | |
233 | 24.08.1022:46 | Stultus | |
539 | 24.08.1022:10 | 오디세이 | |
168 | 24.08.1019:05 | jbhlyk | |
200 | 24.08.0923:20 | RogerT |
이 글을 아래 글에서 참조하였습니다. 즐거운 하루 되세요.
i5 3570K, GA-B75M-D3V, 10.15.6 설치 후기 OpenCore 0.5.9