# Sửa tính năng điều phối điện năng CPU: Cách làm thủ công
# Tìm đường dẫn ACPI
Để tìm được đường dẫn ACPI (ACPI pathing), bạn có 2 phương pháp:
# Tìm trong DSDT
Việc tìm đường dẫn ACPI của CPU thực ra khá dễ dàng. Đầu tiên, hãy mở tệp DSDT mà bạn có được từ bước Trích lục bản sao DSDT và đã được biên dịch ngược bằng MaciASL (nếu bạn sử dụng macOS) hoặc bất kỳ trình soạn thảo văn bản nào nếu bạn đang có Windows hoặc Linux (VSCode có cái phần mở rộng hỗ trợ ACPI (opens new window) khá là xịn đó).
Tiếp theo, hãy tìm kiếm từ khóa Processor. Bạn sẽ thấy kết quả tương tự như sau:

Như chúng ta thấy, luồng xử lý đầu tiên của CPU nằm trong danh sách là SB.PR00. Đây chính là đối tượng mà chúng ta sẽ nhét thuộc tính plugin-type=1 vào (Tương tự cách Apple làm với máy Mac).
Lưu ý cho đời X99 và X299:
Do cấu trúc DSDT của những loại này khá lập dị chứ không viết theo chuẩn chung, bạn sẽ cần phải kiểm tra ở nhiều nơi vì đường dẫn (pathing) của tụi nó không hiển thị rõ ràng ngay lập tức cho bạn thấy đâu:

Nếu chúng ta tìm kiếm các trường hợp có tên CP00, chúng ta sẽ thấy đường dẫn ACPI đầy đủ của nó là SB.SCK0.CP00:

Sau khi có đường dẫn, hãy chuyển tới phần Chỉnh sửa tệp SSDT mẫu
# Tìm trong Device Manager (Trình quản lý thiết bị)
Nếu máy bạn đang chạy Windows, chuyện tìm đường dẫn của CPU cực kỳ đơn giản:
Ta bắt đầu bằng cách mở Device Manager trong Windows và tìm thiết bị có tên Processor (Bộ xử lý). Một khi đã tìm thấy, bạn Chuột phải, chọn Properties (Thuộc tính) -> Details (Chi tiết) -> BIOS device Name. Bạn sẽ nhận được thông tin giống như cái trong hình này:

Như hình trên, chúng ta thấy đường dẫn là PR.CPU0. Hãy chú ý kỹ phần bắt đầu vì tiền tố PR rất quan trọng để tạo SSDT.
Lưu ý cho đời X99 và X299:
Một chỗ kỳ quặc của Device Manager trong Windows là thứ tự của Bộ vi xử lý (Processor) đôi khi không khớp hoàn toàn với đường dẫn ACPI, thay vào đó nó lại hiển thị cái tên kiểu như SB.SCK0.CP10 trên luồng xử lý đầu tiên:

Khi chuyện này xảy ra, bạn có thể chọn một trong hai cách:
- Rà soát kỹ danh sách để tìm giá trị thấp nhất (lowest value) và xác định nó là luồng đầu tiên của CPU
- Giả định giá trị thấp nhất (thường là
PR00hoặcCP00)
Vì vậy, với ví dụ X299 ở trên, đường dẫn CPU của chúng ta sẽ là SB.SCK0.CP00
Sau khi có đường dẫn, hãy chuyển tới phần Chỉnh sửa tệp SSDT mẫu
# Chỉnh sửa tệp SSDT mẫu
Giờ khi đã có đường dẫn ACPI, hãy tải tệp SSDT tương ứng về và bắt đầu mổ xẻ:
Trong tệp SSDT trên, rất có thể đường dẫn ACPI của bộ vi xử lý của bạn đã xuất hiện sẵn rồi. Nếu đúng như vậy, bạn chỉ cần dọn dẹp hết tất cả các mục chứa đường dẫn ACPI khác trừ cái của bạn và phần Method PMPM, vì đây chính là thứ giúp "bơm" (inject) thuộc tính plugin-type=1 vào máy tính của chúng ta.
- Nhắc nhở: Chúng ta chỉ cần áp dụng thuộc tính
plugin-type=1vào trong phần khai báo luồng xử lý (thread) đầu tiên của CPU mà thôi.
Đối với ví dụ bên dưới, chúng ta sẽ sử dụng đường dẫn của hệ thống X299 làm mẫu (SB.SCK0.CP00)
| Nguyên bản | Sau khi dọn dẹp |
|---|---|
![]() | ![]() |
# Biên dịch SSDT
Sau khi chỉnh sửa xong mã nguồn, bạn đã sẵn sàng để biên dịch SSDT!
# Gần về tới đích rồi
Khi bạn đã tạo xong SSDT của mình, bạn có thể chuyển sang trang tiếp theo để tạo nốt mấy cái SSDT còn lại hoặc truy cập vào đây nếu bạn đã hoàn tất công việc:

