• Страница 1 из 1
  • 1
DSDT — что это такое?
барбосДата: Четверг, 16.03.2023, 00:30 | Сообщение # 1
Сержант
  • Группа:Администраторы
  • Сообщений:39
  • Регистрация:25.07.2011
  • 5
DSDT


Фон:
ACPI (Advanced Configuration and Power Interface) — это открытая отраслевая спецификация, совместно разработанная компаниями Hewlett-Packard, Intel, Microsoft, Phoenix и Toshiba. настроить устройства материнской платы и управлять их питанием.

Википедия:
Таблицы позволяют описать аппаратное обеспечение системы в независимой от платформы манере и представлены либо в виде структур данных с фиксированным форматом, либо в виде AML. Основная таблица AML — это DSDT (таблица дифференцированного описания системы)

. DSDT — самая большая и важная таблица, поскольку именно в ней описываются устройства материнской платы. Поскольку DSDT вместе с другими таблицами ACPI хранится в BIOS, описывается только встроенное оборудование. Цель состоит в том, чтобы обойти эту часто ошибочную таблицу из-за оптимизации для Windows с помощью пользовательской таблицы, в которой объявления настраиваются в соответствии с потребностями Mac OS X, чтобы максимизировать совместимость.

Использование для хакинтошей

Загрузив отредактированный DSDT через загрузчик Chameleon вместо заводского, можно добиться следующих результатов:
подделка идентификаторов устройств с помощью DSDT может заменить устаревшие/инжекторные кексы
обновления могут отключать модифицированные или устаревшие/инжекторные кексы, но не могут отключать исправления DSDT.
Редактирование DSDT может включить сон, встроенный спидстеп
обширные правки могут ускорить процесс загрузки

Мне это действительно нужно?

Нет, чтобы получить функциональный Hackintosh, вам не нужен DSDT. Но наличие такой таблицы может сделать вашу систему более стабильной и легкой (редактирование этой одной таблицы заменит множество дополнительных файлов).

Как извлечь DSDT

Mac OS X:
убедитесь, что пользовательский/модифицированный DSDT еще не введен.

Clover bootloader — использование графического интерфейса

В графическом интерфейсе Clover нажмите кнопку F4 , а затем загрузите OS X в обычном режиме.

Когда OS X уже инициализирована, смонтируйте/откройте раздел EFI, и вы сможете найти все свои таблицы ACPI в /EFI/Clover/ACPI/origin/

Linux — через Терминал и Live-CD/DVD:

Код
cat /proc/acpi/dsdt > dsdt.aml


Windows:
AIDA64 или аналогичные инструменты

.dsl / .aml — компиляция и декомпиляция

При извлечении из системы DSDT и другие таблицы находятся на машинном языке ACPI (расширение файла .aml).
Чтобы внести изменения, DSDT необходимо декомпилировать (расширение файла .dsl).

Программа для компиляции и декомпиляции таблиц ACPI называется iASL. Последнюю версию для Mac OS X можно скачать:

iaslMe
MaciASL (with updated iasl5 15.10.2014)
только iasl5 (latest version 15.10.2014) (просто переименуйте его в iasl, если хотите поместить в /usr/bin)

Ошибки компиляции:

Использование более новых версий iASL, чем исходный DSDT, часто приводит к ошибкам компиляции. Чтобы исправить ошибки и адаптировать новые рекомендации по коду, также загляните в эту тему .

Редактирование DSDT

Файлы DSDT.dsl можно редактировать в любом текстовом редакторе.

Мы поговорим об исправлениях DSDT в следующем посте в этой теме, но это может занять некоторое время, потому что мы хотим дать подробные объяснения и справочную информацию, чтобы сделать исправления доступными для любого оборудования.

Хороший метод — использовать Textmate и выбрать подсветку разметки C++. Существуют также утилиты, включающие компилятор iasl, например: DSDTEditor DSDTSE.





MaciASL - Самый актуальный редактор DSDT.

После того, как вы применили исправления, вам нужно сохранить DSDT как .aml, например: DSDT.aml .

Почему чужие файлы DSDT могут вызывать проблемы

Даже небольшие аппаратные различия приведут к разным таблицам и могут вызвать проблемы. Чтобы убедиться, что модифицированный DSDT совместим с вашей системой, сравните два файла.

Следующие строки могут вызвать проблемы:

Код
OperationRegion (BIOS, SystemMemory, xx(some hex value)xx
OperationRegion (^LPCR, SystemMemory, xx(some hex value)xx


Если эти значения в вашем DSDT отличаются, замените шестнадцатеричные значения в другом измененном DSDT собственными значениями.

Проверка загрузки пользовательского DSDT:

Сначала убедитесь, что ваш файл называется DSDT.aml и находится в папке /DSDT.aml или /Extra/DSDT.aml.
Вы создали/имели собственный DSDT и не видите никаких изменений, и вы не уверены, что DSDT используется и внедряется загрузчиком.

Вот несколько способов проверить загрузку DSDT:

Используйте bdmesg.

bdmesg поставляется с загрузчиком Chameleon и находится в /usr/bin. bdmesg можно запустить из терминала после запуска, чтобы вы могли проверить, что делает Chameleon, пока он загружает ваш Hackintosh.

Выдержка из вывода bdmesg, последняя строка показывает загрузку DSDT.aml:

Код
Loading Darwin 10.7
Loading kernel cache /System/Library/Caches/com.apple.kext.caches/Startup/kernelcache
Read HFS+ file: [hd(0,2)/System/Library/Caches/com.apple.kext.caches/Startup/kernelcache] 4096 bytes.
Read HFS+ file: [hd(0,2)/System/Library/Caches/com.apple.kext.caches/Startup/kernelcache] 18150026 bytes.
Read HFS+ file: [hd(0,1)/Extra/DSDT.aml] 22762 bytes.


Извлеките свой DSDT в OS X. Если вы получите модифицированный DSDT, это означает, что он загружен.
Прикрепления: 3815922.png (58.1 Kb)
барбосДата: Четверг, 16.03.2023, 00:33 | Сообщение # 2
Сержант
  • Группа:Администраторы
  • Сообщений:39
  • Регистрация:25.07.2011
  • 5
ПОЛНАЯ ИНСТРУКЦИЯ DSDT/SSDT AML/DSL!ХАКИНТОШ!

https://youtu.be/cm-4ajT7qFE

https://youtu.be/enwpVxAdHEQ
  • Страница 1 из 1
  • 1
Поиск: