Установка Mac OS X на PC. Часть 8: О процессорах AMD

Пришла пора вернуться к нашему долгому разговору о премудростях установки и настройки Mac OS X на обычные PC-компьютеры. Читатели давно просили нас расставить все точки над i в сложных взаимоотношениях Mac OS X и процессоров AMD, именно этим мы и займёмся сегодня.

AMD позиционирует свои процессоры как недорогие, но качественные решения для домашних пользователей. Традиционный козырь Advanced Micro Devices — цена, и благодаря этому спрос на их продукцию относительно стабилен. И вполне закономерно, что всё больше пользователей AMD, наслышанные о достоинствах Mac OS X, намереваются превратить свои компьютеры в хакинтоши.

Что их ждёт? Их ждут многочисленные проблемы. Мы не утверждаем, что поставить Mac OS X на AMD нереально. Impossible is nothing, это доказывается и на примере неинтеловских процессоров :) Но стоит ли оно того — большой вопрос.

Но главная проблема состоит в ядре системы. Как мы уже не раз говорили, родное ядро Mac OS X запускается только на родных для Маков процессорах Intel (и схожих с ними по технологическому процессу производства экземплярах). В случае с AMD ни о какой схожести говорить не приходится — по сравнению с Intel всё совершенно иначе.

Как быть, если не запускается родное ядро? Безусловно, искать на просторах Интернета ядро пропатченное. И такие ядра есть, но выходят они намного позже, чем появляется обновление Mac OS X с новым родным ядром.

Если вы думаете, что все проблемы AMD-шников ограничиваются постоянными извращениями с ядрами системы, то ошибаетесь. Когда улаживается вопрос с ядром, появляется следующая, ещё более неприятная проблема. Это «пропатчивание бинарников».

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

Очень многие программы содержат в своём коде упоминания CPUID, по которым определяется не только происхождение процессора, но и его возможности. Соответственно, программы могут решать, как оптимизировать работу с процессором для повышения скорости этого взаимодействия. Если программа обнаружит несовпадающий CPUID, то она или не запустится, или вылетит в самый неподходящий момент, или повесит всю систему. Более того, особая концентрация CPUID наблюдается в коде самой системы (что наверняка не случайно). В общем, без подмены CPUID на интеловские вы вряд ли сможете загрузиться, а если и сможете, то будете неприятно удивлены качеством работы системы.

Эта проблема тоже решаема: есть специальная программа Marvin’s AMD Utility, которая сканирует все бинарные файлы программ на компьютере и создаёт скрипт, запустив который при загрузке компьютера, вы подмените все CPUID на нужные. А теперь подумайте: если злоключения с ядром достаточно редки, и начинаются лишь с выходом новой версии Mac OS X, то проблема CPUID будет встречаться гораздо чаще: после установки почти любой программы вам, по идее, придётся снова патчить бинарники. А установка любого апдейта от Apple (не только для всей системы, а например, для AirPort или QuickTime) может напрочь убить хакинтош.

В конце 2008-го года появилось замечательное изобретение, которое коренным образом изменило жизнь AMD-хакинтошников. Было выпущено ядро Voodoo, которое умело патчить бинарники на лету. При этом замедление работы системы было незаметно глазу, и создавалось впечатление, что Mac OS X работает на родном ядре. Это действительно было замечательно, и устраняло все глюки, связанные с CPUID. Но время шло, менялись версии Mac OS X, на смену Leopard пришёл Snow Leopard, а воз и ныне там. Проект ядра Voodoo безнадёжно заглох, и вряд ли можно ждать его реанимации. По крайней мере, пока нормального аналога Voodoo для систем 10.6.x так и не вышло.

Для Mac OS X Snow Leopard в Интернете можно найти несколько ядер, которые умеют патчить часть бинарников (но не все). Поэтому приходится снова возвращаться к Marvin’s AMD Utility.

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

Подводим итоги. Вот сегодняшние выводы:

1) Если вы раздумываете о том, на базе какого процессора собрать новый компьютер, и намерены превращать его в хакинтош, то покупайте ТОЛЬКО Intel. Наиболее оптимальный вариант на настоящий момент — процессоры Core i5 750 и Core i7 860. Они установлены в последнем поколении iMac.

2) Если вы пытаетесь ставить Mac OS X на AMD, то вам нужно патченное ядро. Вам нельзя будет обновлять систему до момента выхода нового пропатченного ядра соответствующей версии.

3) На AMD вы регулярно должны будете запускать специальную утилиту обработки бинарных файлов для того, чтобы новые и обновлённые программы не переставали работать. Любое обновление от Apple (даже самое мелкое) способно убить всю систему.

4) На AMD крайне сложно завести хоть какое-то подобие управления питанием. Отсюда, как правило, вытекают неработающий режим сна и низкая производительность системы.

Список доводов «против» можно расширять и дальше. В списке доводов «за» только цена. В общем, AMD — отличные процессоры для PC, но это отвратительный вариант для хакинтоша.

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