OSx86

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

OSx86 (сочетание OS X и x86) — хакерский проект, связанный с реализацией возможности запуска и использования OS X, операционной системы от Apple на персональных компьютерах c микропроцессорами архитектуры x86.

Проект был начат вскоре после того, как на WWDC в июне 2005 года Apple анонсировала переход c аппаратной платформы PowerPC на x86.

Отличный от Mac компьютер, на котором установлена OS X, называют хакинтошем (hackintosh[1], от англ. hack и Macintosh).[2][уточнить]

История взлома Mac OS X[править | править вики-текст]

Mac OS X Tiger[править | править вики-текст]

6 июня 2005 года компания Apple объявила о платной доступности Developer Transistion Kit, являющегося предвыпускной версией Mac OS X Tiger, способной запускаться на x86-аппаратном обеспечении при верификации TPM. Хакер MAXXUSS успешно применил взлом ядра и ряда компонентов для запуска предвыпускных сборок Mac OS X. После получила распространение первая взломанная сборка Mac OS X 10.4.1.

10 января 2006 года компания Apple выпустила первую версию операционной системы Mac OS X 10.4.4 для новых компьютеров Mac на базе процессоров Intel — iMac и MacBook Pro. В ПЗУ этих машин вместо BIOS использовался EFI. 14 февраля 2006 года в интернете появилась первая взломанная Mac OS X 10.4.4.[3] Спустя несколько часов Apple выпустила обновление до версии 10.4.5[4], которое также было «пропатчено» тем же автором уже через пару недель. 3 апреля 2006 года вышло обновление до версии 10.4.6[5], и вновь спустя две недели появились патчи этого обновления — пользователи x86-компьютеров могли обновиться до последней версии системы, хотя само ядро не обновлялось до версии 10.4.6. В июне того же года хакеры выпустили пропатченное обновление до версии 10.4.7.

Вплоть до выпуска обновления до версии 10.4.8 хакеры использовали ядро версии 10.4.4, в то время как остальная часть системы обновлялась до версии 10.4.8. Однако обновлённые части системы полагались на обновлённое ядро, поэтому с выходом версии 10.4.8 у пользователей появился ряд проблем. Apple также сделала ставку на использование инструкций процессора SSE3, что создало ещё больше сложностей для пользователей, чьи процессоры поддерживали только SSE2 (например, Pentium 4).

Mac OS X Leopard[править | править вики-текст]

Уже после появления сборки 9A466 Mac OS X Leopard, сообщество располагало версией этого выпуска для не-Apple-машин. Хакер BrazilMac одним из первых проработал процесс «патчинга», позволяющий пользователям стороннего оборудования устанавливать законно полученную розничную версию OS X. После этого появилось сразу несколько дистрибутивов OSx86, использующих этот патч. Четыре наиболее популярных из них — это JaS, Kalyway, iATKOS[6] и iDeneb[7], хотя довольно скоро эти дистрибутивы перешли на набирающий популярность способ Boot-132 (см.ниже). Дистрибутивы стали регулярно размещаться в Интернете и регулярно обновляться, не столько для сохранения совместимости с выпусками от Apple, сколько для включения всё новых патчей для всё более расширяющегося круга аппаратного обеспечения.

Mac OS X Snow Leopard[править | править вики-текст]

С появлением первых сборок Mac OS X Snow Leopard, предназначенных для разработчиков ПО, члены сообщества OSx86 получили возможность загружать новую версию операционной системы, используя загрузчик, предоставленный хакером netkas. Позже в свет вышли несколько «хакинтош»-сборок — Universal, Hazard, iAtkos и т. д. С развитием Chameleon и OSx86-сообщества в целом установка ОС на ПК стала более дружественной.

Mac OS X Lion[править | править вики-текст]

В феврале 2011 года вышел первый выпуск для разработчиков ПО Mac OS X Lion. С помощью загрузчика XPC хакер netkas смог запустить операционную систему на отличном от Mac x86-совместимом компьютере. Разработчиком usr-sse2 был придуман способ установки Mac OS X 10.7 Developer Preview 1, используя XPC Bootloader. Позже в свет вышел Chameleon, способный загружать новую операционную систему.

Mac OS X Mountain Lion[править | править вики-текст]

Вскоре после выпуска Developer Preview 1, неизвестным разработчикам удалось установить эту версию OS X на ПК, используя усовершенствованный загрузчик Chameleon. Модификации загрузчика стали доступны в основном проекте Chameleon начиная с версии r1997.[8]

После официального выпуска OS X Mountain Lion несколько пользователей сообщили об успешной установке при помощи установщика, приобретённого в Mac App Store, совместно с обновлённой версией Chameleon и другими инструментами. Сначала был выпущен дистрибутив Niresh 10.8 (только для процессоров Intel), затем он был обновлён до версий 10.8.2 (с поддержкой процессоров AMD и Intel) и 10.8.5 (с поддержкой UEFI и процессоров AMD и Intel). Дистрибутив iAtkos ML2 был выпущен после Niresh.[9][10] [11] [12]

Mac OS X Mavericks[править | править вики-текст]

Разрабатывается множество новых ядер 10.9 для «хакинтоша», хотя всё ещё существуют незначительные трудности с большинством из них. Большинство ядер предназначены для запуска OS X Mavericks на процессорах AMD и старых процессорах Intel, т.е. на процессорах, не поддерживающих наборы инструкций самых новых процессоров Intel. Значительные усилия потребовались для эмуляции набора инструкций SSE3, которые отсутствуют на процессорах AMD K10 и старых Intel, таких как Intel Core Duo.

Новейшие процессоры AMD, начиная с Bulldozer, содержат почти все наборы инструкций, и следовательно, могут быть выпущены ядра с полной поддержкой SSE4. Спустя два месяца дистрибутив Niresh был выпущен для Mavericks с поддержкой процессоров AMD и новейших процессоров Intel. Он также содержит специализированные ядра, которые позволяют загрузить Mavericks на процессорах Intel Atom. Niresh это единственный свободный дистрибутив выпущенный для Mavericks, поскольку iAtkos решили выпустить свой дистрибутив Mavericks для определённых аппаратных конфигураций за счёт пожертвований.[13] [14]

Mac OS X Yosemite[править | править вики-текст]

После первого выпуска OS X Yosemite 10.10 BETA, множество разработчиков принялись за доработку различных загрузчиков для этой системы. Команда форума Insanelymac принялась за доработку EFI загрузчика Chameleon для нового выпуска OS X. Некоторое время спустя независимый разработчик Niresh опубликовал инструмент под названием Yosemite Zone, который позволял устанавливать новую версию OS X автоматически с минимальным участием пользователя и поддерживал различные возможности на компьютерах сторонних производителей. Этот способ состоял из раздачи по протоколу BitTorrent OS X 10.10 в формате DMG и записи его на USB-накопитель с установщиком MacPwn Vanilla Installation. Позже Unibeast был обновлён для поддержки дистрибутивов Yosemite и YosemiteZone, в т.ч. и на процессорах AMD. Также поддерживается полностью ванильная установка Yosemite при помощи Pandora Box Beta 2.0 от Insanelymac. При установке используется как можно меньшее количество дополнительных драйверов (англ. kexts), поэтому данный способ высоко оценён опытными пользователями.[15] [16]

Способы взлома[править | править вики-текст]

Патч ядра XNU[править | править вики-текст]

Два программиста, известные в интернете как Mifki и Semthex, выпустили свои версии ядра, взяв за основу исходный код проекта XNU и написав для него патчи, позволяющие запускать Mac OS X на не-Apple-машинах.

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

Оба ядра позволяли запускать большинство обновлённых фреймворков и расширений ядра, что позволяло сконфигурировать обычный PC так, чтобы для системы он выглядел как обычный Mac.

Mifki обновил своё ядро лишь однажды, в то время как Semthex стал выпускать регулярные обновления, добавив в последующих версиях поддержку AMD, VMware и SSE2. Semthex также опубликовал исходный код патченного ядра на своей веб-странице. 24 декабря 2006 года, в качестве подарка сообществу, он также опубликовал последние патчи к ядру SSE3 как, например, diff-файл различий по отношению к оригинальной ветке исходников XNU. Стоит также обратить особое внимание на его работу совместно с Rufus’ом по эмуляции инструкций SSE3 — это была первая опубликованная полная эмуляция SSE3; существовавшие до этого варианты были существенно неполны, эмулируя лишь 3 инструкции SSE3. Это достижение позволило полноценно выполнять на SSE2-процессорах программы, требующие SSE3 (например iTunes 7 и большинство 3D-программ).

Загрузчики и эмуляторы[править | править вики-текст]

Эмуляция EFI[править | править вики-текст]

Extensible Firmware Interface (EFI) — это спецификация, определяющая программный стык между операционной системой и аппаратным обеспечением. Данная технология давно используется в серверных материнских платах многих производителей, но в ноутбуках и десктопных материнских платах почти не используется.

В начале ноября 2007 года группа хакеров (возглавляемая Netkas), используя модифицированную ветку исходников Boot-132 от David Elliot, разработала способ эмуляции EFI[17], используя особым образом изменённый загрузчик Darwin. На деле это означало, что стало возможно представить обычный ПК для OS X таким образом, что OS X будет считать машину компьютером Mac, а ядро системы без модификаций будет работать с «неродным» аппаратным обеспечением. На основе этого приёма появилось сразу несколько рабочих решений. Подробное описание этого достижения вместе с пошаговым руководством появилось на сайте DigitMemo.com.

Эмуляция EFI была крайне востребованным вкладом в проект. До этого, пользователи могли использовать OS X на обычных ПК, лишь используя пропатченное ядро, обходящее обращения к EFI. С использованием эмуляции EFI, «хакинтош» смог загружать немодифицированные (ванильные) ядра операционной системы и использовать оригинальные расширения. Это сделало систему совместимой с будущими обновлениями и, кроме того, значительно повысило её надёжность.

В середине 2008 года появился коммерческий продукт EFi-X (модуль, подключаемый к USB), предоставляющий возможность загружать и устанавливать Leopard без каких-либо патчей.

Позднее в сети появилась информация о том, что пользователь под ником AsereBLN произвёл вскрытие устройства EFI-X и показал, что устройство есть не что иное, как обычный USB-Flash накопитель с загрузчиком Chameleon. Позднее пользователь публично извинялся и сообщал[18] о судебных исках против него от компании ASEM, производителя EFI-X

Примерно в 2014 году, в сети появилась информация о новом загрузчике ozmosis, который целиком прошивается и хранится в NVRAM. Благодаря этому, стало возможным обходиться без сторонних компонентов и пользоваться «чистой» OS X. К тому же теперь не требуется держать загрузчик в EFI разделе жесткого диска, а это значит, что «хакинтош» ещё на один шаг приблизился к оригинальным компьютерам Apple.

По состоянию на 2015 год, одним из самых используемых является загрузчик Clover, который принадлежит к семейству RealEFI и позволяет произвести истинную UEFI загрузку, а также загрузку с помощью обычного загрузочного сектора, который чаще всего используется на компьютерах, оснащенных традиционным BIOS.

Boot-132[править | править вики-текст]

В середине 2008 года также появился новый способ установки, известный как Boot-132.[19] Этот способ позволил использовать для установки законно приобретённую версию Leopard, не требующую взломанных инсталляций, таких как JaS или Kalyway. Загрузчик Boot-132 подготавливает для установки среду, в которой Leopard может загружаться и работать. Необходимые патчи (kext-файлы) подаются для него в виде .img-файла или просто складываются в папку. Преимущество этого способа в том, что можно загружаться и устанавливаться прямо с оригинального DVD и даже обновлять систему прямо с сайта Apple. Переустановка системы также не требует повторного применения необходимых патчей.

Загрузчик работает как ядро Linux: он может использовать mboot-совместимый загрузчик (обычно используется патченый syslinux), который подаёт boot-dfe .img-файл (пользователям Linux он известен как RAM-диск или initrd), и boot-dfe использует его для получения kext/mkext-файлов. Однако, это работает только на совместимых машинах. Но в последнее время, с выходом ядра Voodoo[20], пользователи AMD также получили возможность устанавливать ОС с оригинального DVD. Это требует размещения пропатченного ядра на диске с boot-132.

Chameleon[править | править вики-текст]

Начиная с ранних сборок Mac OS X 10.6, участники проекта OSx86 запускали новую операционную систему используя новый загрузчик, называемый PC EFI, предоставляемый русским хакером Netckas, или загрузчик от команды Voodoo — Chameleon, который основан на Boot-132 от David Elliot. Загрузчик поддерживает ACPI, SMBIOS, графику, Ethernet и некоторые другие дополнения, что позволяет загрузить Mac OS X на стороннем оборудовании. Chameleon поддерживает многие процессоры AMD и графические процессоры Nvidia. Существует множество ответвлений от этого проекта от различных разработчиков. На сегодняшний день загрузчик является морально устаревшим и не поддерживает последние версии OS X, его место заменил Clover.

Live DVD[править | править вики-текст]

В марте 2007 года сообщество проекта OSx86 достигло успехов в создании Live DVD, позволяющего загрузить систему и работать в ней, не устанавливая на компьютер. В тот момент удалось таким образом запустить Mac OS X 10.4.8.

2 января 2009 года LiveDVD-команда форума InsanelyMac опубликовала новый способ, позволяющий создавать LiveDVD для Mac OS X Leopard.[21] Этот способ более надёжен, поскольку использует возможности Netboot и Imageboot самой системы, и работает так, как-будто система запущена с сетевого диска. Кроме того, этот способ проще в осуществлении — требуется добавить всего один сценарий к существующей установке. Любопытно, что этот способ был успешно опробован на обычном Mac.

Виртуализация[править | править вики-текст]

Существует возможность запускать OS X внутри виртуальной машины под другими операционными системами, используя программное обеспечения для виртуализации, такое как VirtualBox.[22][23] Следует отметить, что такое использование нарушает лицензионное соглашение Apple и официально не поддерживается создателями средств виртуализации. Этот способ обычно использует некоторые программные изменения операционной системы, перечисленные выше, для выполнения фактической установки.

Преследования со стороны Apple[править | править вики-текст]

Лицензионное соглашение с конечным пользователем (EULA) на OS X запрещает установку системы на компьютеры сторонних производителей (англ. non Apple-labeled hardware)[24].

Компания Psystar в течение нескольких месяцев выпускала компьютеры под маркой «Open Computer», которые являлись клонами Mac.

3 июля 2008 года Apple подала иск против Psystar Corporation за нарушение EULA.[25]

14 января 2009 года сайт Gadget Lab, принадлежащий журналу Wired, опубликовал видео-руководство по установке Mac OS X на ноутбук MSI Wind. После жалобы со стороны Apple, видео было убрано, хотя текст руководства остался на сайте, с предупреждением о возможном нарушении EULA.[26]

13 ноября 2009 года Apple одержала победу в судебной тяжбе против компании Psystar. Федеральный суд США постановил, что производитель компьютеров-клонов нарушает права Apple, продавая ПК с предустановленной системой Mac OS X.[27]

Производители клонов Mac[править | править вики-текст]

  • Bizon Computers (Россия)
  • OpeniMac (Аргентина)[28]
  • PearC (Германия) — использует лазейку в законодательстве Германии, позволяющую продавать в Европе PC с предустановленной OS X[29]
  • Psystar (США)
  • Quo Computing[30]

Примечания[править | править вики-текст]

  1. Turning PC Into Apple Macintosh: Hackintosh «A „Hackintosh“ is a computer that runs Apple’s OS X operating system on non-Apple hardware.»
  2. Яков Шпунт http://www.pcmag.ru/solutions/detail.php?ID=32695 — Что такое «хакинтош». PC Magazine/RE (2008-12-16). Проверено 10 августа 2009.
  3. Paul Miller. Apple's OS X 10.4.4 for Intel already cracked?. Engadget (14 февраля 2006). Проверено 7 августа 2009. Архивировано из первоисточника 29 февраля 2012.
  4. Apple Computer. Mac OS X Update 10.4.5. Apple Computer (14 февраля 2006). Проверено 10 августа 2009. Архивировано из первоисточника 29 февраля 2012.
  5. Apple Computer. Mac OS X 10.4.6 for Intel. Apple Computer (3 апреля 2006). Проверено 10 августа 2009. Архивировано из первоисточника 29 февраля 2012.
  6. iATKOS OSx86 Project
  7. iDeneb
  8. Chameleon r1997 Mountain Lion.
  9. UniBeast: Install OS X Mountain Lion on Any Supported Intel-based PC (14 August 2012). Проверено 20 марта 2013.
  10. How to install OS X Mountain Lion on your PC with Unibeast (25 July 2012). Проверено 20 марта 2013.
  11. Niresh Mac OS X Mountain Lion 10.8.5 DvD ISO Image - With AMD & Intel (15 April 2012). Проверено 20 апреля 2013.
  12. How to install OS X Mountain Lion on your PC with Niresh (15 April 2012). Проверено 20 апреля 2013.
  13. AMD 10.9/10.9.1/10.9.2 kernel UPDATE III with full sse4 support - Kernels - osx86.net
  14. Niresh Mavericks 10.9 with AMD & Intel - USB & ISO - Hackintosh ISO (Hackintosh Distro) - Hackintosh Zone
  15. Hackintosh Yosemite with Intel & AMD Installation Instructions and Guide (9 November 2014). Проверено 21 ноября 2014.
  16. Hackintosh OS X Yosemite Zone 10.10.1 (9 November 2014). Проверено 21 ноября 2014.
  17. netkas. W00t - released. (5 ноября 2007). Проверено 10 августа 2009. Архивировано из первоисточника 29 февраля 2012.
  18. EFI-X™ Opensource Alternative: Dear Readers
  19. New modified BOOT-132 allows you to boot retail DVDs (30 июня 2008). Проверено 8 августа 2009. Архивировано из первоисточника 22 августа 2011.
  20. Xnu-dev — проект на Google Code
  21. 2009 Live DVD, howto make a simple, working osx livedvd. Insanelymac.com. Проверено 7 августа 2009. Архивировано из первоисточника 29 февраля 2012.
  22. How to Run Mac OS X in VirtualBox on Windows. Архивировано из первоисточника 26 июня 2012.
  23. How to Install Mac OS X Snow Leopard in VirtualBox on Windows 7. Архивировано из первоисточника 26 июня 2012.
  24. Apple Inc. Apple Inc. Software License Agreement for Mac OS X (PDF). Apple Inc.. Проверено 3 сентября 2008. Архивировано из первоисточника 22 августа 2011.
  25. Fried, Ina Apple sues clone maker Psystar. News.cnet.com (15 июля 2008). Проверено 7 августа 2009. Архивировано из первоисточника 29 февраля 2012.
  26. Gadget Lab Video: Running OS X on a Netbook. Blog.wired.com (1 декабря 2008). Проверено 7 августа 2009. Архивировано из первоисточника 29 февраля 2012.
  27. Apple выиграла судебный спор с Psystar
  28. OpeniMac offers cut-rate, aesthetically challenged Apple clones direct from Argentina
  29. PearC
  30. New Mac clone maker to open retail store in California

См. также[править | править вики-текст]

Ссылки[править | править вики-текст]