Dsdt mac os что это такое

Установка Mac OS X на PC. Часть 6: DSDT

Пришла пора продолжить наш разговор о премудростях хакинтоша. В сегодняшней статье об установке Mac OS на PC мы поговорим о смысле аббревиатуры DSDT, которую всё чаще можно встретить в различных мануалах, касающихся инсталляции и настройки системы.

DSDT — сравнительно молодой метод в искусстве хакинтоша: он зародился пару лет назад, и сегодня стал практически незаменимым подспорьем для любого владельца «хака». Тем не менее, многие пользователи, слышавшие о хакинтоше, смутно представляют себе сущность DSDT. Ещё больше заблуждений касаются его возможностей. Сегодня мы рассмотрим случаи, в которых метод DSDT действительно полезен, и ситуации, когда он совершенно бессилен.

Для начала — расшифровка, которая, увы, мало что вам объяснит. DSDT означает Differentiated System Description Table. Эта «дифференцированная таблица описания системы» содержит сведения обо всех ключевых устройствах, из которых состоит компьютер, а также о параметрах и режимах их функционирования.

Зачем это всё нужно на хакинтоше? Не секрет, что Маки и PC устроены по-разному, и сильно отличаются по целому ряду технических параметров. Начать можно с BIOS — на Маках его вообще нет, а в качестве замены выступает EFI. И хотя появление полноценного эмулятора EFI для PC не за горами, пока приходится сглаживать это различие другими способами. Если бы не было DSDT, то для корректной работы целого ряда устройств ПК с драйверами, входящими в состав Mac OS X, потребовались бы значительные усилия: например, пропатчивание BIOS.

DSDT выступает посредником между драйверами и оборудованием, и это своего рода «подкладка» под BIOS. Специальный загрузчик Mac OS X при включении подгружает таблицу DSDT, и система думает, что имеет дело с немного другим BIOS. Файл с таблицей DSDT имеет расширение .aml, и работать с ним могут практически все современные загрузчики для хакинтоша: Chameleon, PC EFI, Boot Think и пр.

Будем считать всё вышенаписанное небольшим вступлением, и перейдём к практической части в формате FAQ.

В чём преимущества использования DSDT?

В том, что Mac OS X сможет значительно лучше взаимодействовать с рядом устройств, что благополучно скажется на стабильности и производительности системы.

Для чего подойдёт DSDT?

Вот неполный список:

  • видеокарточка сможет работать без каких-либо сторонних кекстов
  • процессор от Intel сможет работать с профилями управления питанием и производительностью Apple (иными словами, не потребуется кекст NullCpuPowerManagement.kext)
  • вы избавитесь от всевозможных проблем с USB
  • выключение и перезагрузка компьютера будут работать без каких-либо дополнительных драйверов
  • значительно повысятся шансы иметь работающий режим сна
Читайте также:  Kali linux custom image download

Поработав над правкой DSDT, можно добиться поразительных результатов. Например, на компьютере автора установлен только один дополнительный кекст — FakeSMC.kext. Всё остальное — от Apple, и отлично работает.

DSDT — это замена драйверам?

Это самое распространённое заблуждение. Нет. DSDT — не драйвер, это способ указать системным драйверам Apple, как надо работать с вашими устройствами. Таким образом, если какое-нибудь устройство даже чисто теоретически несовместимо ни с одним из кекстов Mac OS X, то никакой DSDT-патчинг делу не поможет.

Но ведь выше написано, что DSDT позволяет сократить количество кекстов! Как же так?

Противоречия нет. DSDT поможет вам избавиться от мусора вроде всяких инжекторов — для звука, графики, твиков для правильного управления питанием и пр. Но настоящие драйверы, через которые идёт работа системы с устройствами, заменить нереально.

А зачем возиться с DSDT, если со «всякими инжекторами» отлично всё работает?

Довода два. Первый — сугубо практический. Чем меньше посторонних кекстов, тем проще будет переустановить систему. Второй — для людей, думающих о будущем. Есть вероятность, то с выходом очередного обновления Mac OS X инжекторы перестанут работать. А вот с DSDT такого не произойдёт — таблица делается раз и навсегда. Подложив один небольшой файлик с ней загрузчику, вы избавите себя от рутины по установке и подстройке многих кекстов.

Неужели DSDT никогда не придётся менять?

Увы, ничто не вечно. Стоит вам заменить процессор, нарастить количество оперативки или прикупить новую видеокарточку, как DSDT утратит актуальность, и его придётся переделать.

Где взять это чудо?

Лучше нигде не брать. Строго говоря, все DSDT-таблицы уникальны. Вы можете извлечь таблицу, актуальную именно для вашего компьютера. Тем не менее, если вам попалась DSDT-таблица от вашей же материнской платы, то можете смело пробовать. Для извлечения DSDT есть целый ряд инструментов, из которого особо выделим DSDTSE.

А как происходит правка?

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

Пример DSDT-кода

Чем опасны эксперименты с DSDT?

Во-первых, система может перестать грузиться. Это лечится достаточно просто — нужно всегда иметь на диске две копии DSDT — ту, с которой всё работает и ту, с которой вы экспериментируете. В случае проблем можно указать в загрузчике другую таблицу и всё починить.

Во-вторых, можно доиграться и до аппаратных проблем. Теоретически, отклонения от нужных значений некоторых настроек могут погубить устройства, например, испортить видеокарточку. Поэтому никогда не редактируйте в DSDT то, что не знаете.

Таким образом, DSDT — мощный инструмент, открывающий большие горизонты. Каждый месяц появляются новые открытия, и польза от DSDT только растёт. Постепенно наличие DSDT становится необходимостью: например, без него установка Snow Leopard на PC будет сопряжена с дополнительными проблемами.

Читайте также:  Компас для windows 10 x64

Источник

Установка Хакинтоша методом редактирования DSDT

Внимание

Итак, что такое DSDT и с чем его едят. Differentiated System Description Table — ну или таблица системных устройств, аля Дерево устройств, аля DSDT.aml — этот файл располагается в корне диска, где установлена Mac OS X. В этом файле записана информация об устройствах вашего компьютера, о выделении им памяти, об их IRQ и другая системная информация. И если его хорошенько потрепать, то у нас полцчиться сделать этакий клон BIOS но только адаптированый под Хакинтош, и вашу собственную машину.
Заготовкой будет служить dsdt.dsl, выдраный из прошивки BIOS’а

Где 0316 — версия Биоса.
Так же можно использовать EVEREST, или BIOS Cheker с сайта производителя Материнской Платы, они так же способны определить текущую версию БИОСа.
Итак, включаем ACPI Patcher. Выбираем Типа BIOS указываем где лежит сырьевая заготовка (должна быть с расширением ROM), и указываем папку куда будет сохранен фаил DSDT.

Открываем папку с полученым фаилом DSL и переименовываем его например в Base.DSL или как угодно. Снова возвращаемся в ACPI Patcher, и теперь переходим на вкладку D/C DSDT. Ставим все три галочки около HPET Patch, RTC Patch и Aliases Patch.
Отрываем вкладку Network. Тут необходимо указать адрес для инструкций, для этого придется дюже покопатся в фаиле DSDT.dsl с помощью Notepad++, или использовать IORegistryExplorer (второй вариант лучше), указываем адрес и выбираем LAN0 или GIGE при этом не забываем про Fix GP9 + Time Machine Fix.

Теперь переходим на Graphics.

Выбираем свою Видеокарту, и ее обьем памяти. Ели у ва nVidia то ставим разьемы в зеленой графе, а так же отмечаем Use DSDT GFX. Если у вас ATI, то заполняем лишь красные поля. Аналогично Сетевой карте отмечаем ее местоположение с помощью IORegistryExplorer

Переходим на вкладку Audio и отмечаем вашу аудиокарту, или наиболее близкую к ней. Если у вас так же есть шина HD-Audio ставим галочку на HDEF Audio.

Источник

Dsdt mac os что это такое

Работа с DSDT.aml
Извлечение оригинальных файлов | Дизассемблирование ACPI-файлов | Исправление ошибок | Патчинг

Программа для редактирования и патчинга DSDT.aml — MaciASL
Следите за тем какая версия ACPI в редакторе, в версии 1.4 почему то ACPI 4.0 по умолчанию
Программа для компилирования — iASL
Положить на «рабочий стол» скачанный файл(iasl), и в терминале выполнить команду: sudo mv

/Desktop/iasl /usr/local/bin/ что бы переместить файл в /usr/bin

Добавление репозиториев в MaciASL:

  • Открыть MaciASL;
  • Настройки;
  • Выберите “Sources”;
  • Нажмите на [+];
  • Впишите имя репозитория, к примеру «Laptop-DSDT-Patch»;
  • И вставьте ссылку:

Примечание: Не пытайтесь разобрать другие ACPI файлы с помощью флага “-da“.

Method (_CRS, 0, NotSerialized)
<
If (IGDS)
<
Return (CRS)
>

Fix ( depending on the size Tag mismatch: 1 bit = CreateBitField, 8 bits = CreateByteField, 16 bits = CreateWordField, 32 bits = CreateDwordField, 64 bits = CreateQwordField ) :

Читайте также:  После обновления mac os не работает принтер

Удалить Return (RP00)

Путь к патченному файлу DSDT.aml в Clover: EFI/Clover/ACPI/patched/

Сообщение отредактировал WinSSLioN — 06.01.21, 09:43

Мануал по заводу не будешь писать самого инструмента и репозиториев.?

Сообщение отредактировал zander42 — 20.01.20, 06:27

Сообщение отредактировал zander42 — 20.01.20, 12:41

Сразу куча вопросов.
Столкнулся с тем, что разные версии DSDT Editor дают разные данные об ошибка в DSDT, MaciASL вообще третье. Кому верить?

Источник

Компиляция DSDT

Поговорим о представленных на сайте Custom DSDT. Вот вы нашли от своей материнской платы файл DSDT(dsl) — это по сути текстовый файл, и в таком виде, в жизни вашего хакинтош, он участвует косвенно, до момента, пока с ним не поступят должным образом.

Что же с ним делать, рассмотрим в данной статье, и возможные нюансы.

  • Первое, что понадобится — это компилятор iASL>Скачать\Download (Скачать\Download)
  • Положить на «рабочий стол» скачанный файл(iasl), и в терминале выполнить команду: sudo mv

    Теперь можно компилировать нужный dsl файл, лучше всего показать как это должно выглядеть в терминале:

    Переход в папку Downloads, где лежит Asus P8B75-V.dsl файл, и его компилирование.
    На выходе получаем DSDT.aml

    Для просмотра DSL файла, рекомендуем использовать редактор MaciASL.

    Полученный DSDT.aml должен лежать по пути: EFI\EFI\CLOVER\ACPI\patched\

    Нюансы:

    Когда вы работаете с кастомным DSDT, в конфиге не должно быть никаких патчей и фиксов, всё что нужно, уже присутствует в нашем DSDT.

    Единственный фикс DSDT, который может понадобится — это FixRegions, но во многих представленных DSDT, отсутствует зависимость от адресов OperationRegion.

    Источник

    Dsdt mac os что это такое

    Работа с DSDT.aml
    Извлечение оригинальных файлов | Дизассемблирование ACPI-файлов | Исправление ошибок | Патчинг

    Программа для редактирования и патчинга DSDT.aml — MaciASL
    Следите за тем какая версия ACPI в редакторе, в версии 1.4 почему то ACPI 4.0 по умолчанию
    Программа для компилирования — iASL
    Положить на «рабочий стол» скачанный файл(iasl), и в терминале выполнить команду: sudo mv

    /Desktop/iasl /usr/local/bin/ что бы переместить файл в /usr/bin

    Добавление репозиториев в MaciASL:

    • Открыть MaciASL;
    • Настройки;
    • Выберите “Sources”;
    • Нажмите на [+];
    • Впишите имя репозитория, к примеру «Laptop-DSDT-Patch»;
    • И вставьте ссылку:

    Примечание: Не пытайтесь разобрать другие ACPI файлы с помощью флага “-da“.

    Method (_CRS, 0, NotSerialized)
    <
    If (IGDS)
    <
    Return (CRS)
    >

    Fix ( depending on the size Tag mismatch: 1 bit = CreateBitField, 8 bits = CreateByteField, 16 bits = CreateWordField, 32 bits = CreateDwordField, 64 bits = CreateQwordField ) :

    Удалить Return (RP00)

    Путь к патченному файлу DSDT.aml в Clover: EFI/Clover/ACPI/patched/

    Сообщение отредактировал WinSSLioN — 06.01.21, 09:43

    Мануал по заводу не будешь писать самого инструмента и репозиториев.?

    Сообщение отредактировал zander42 — 20.01.20, 06:27

    Сообщение отредактировал zander42 — 20.01.20, 12:41

    Сразу куча вопросов.
    Столкнулся с тем, что разные версии DSDT Editor дают разные данные об ошибка в DSDT, MaciASL вообще третье. Кому верить?

    Источник

Оцените статью