Я постараюсь ответить на этот вопрос, основываясь на том, что я знаю. Я предупреждаю, что я не эксперт в этом вопросе, и , возможно, в Интернете есть лучшие сайты, которые занимаются этими вопросами . Однако я уверен, что то, что я скажу, может быть перепроверено, учитывая достаточное количество источников. При этом давайте начнем с вершины.
... за несколько лет до OSX ... можно было запускать только в процессорах PowerPC ...
Это правда, пока не появился Tiger (версия 10.4). Тем не менее, это не верное утверждение, как есть. Вы можете «эмулировать» архитектуру PowerPC на процессоре x86-64 (как если бы вы эмулировали старую игровую консоль или аркадную систему). Я сомневаюсь, что это было бы возможно.
Я помню, что была попытка заставить Panther (версия 10.3) работать с процессорами x86-64, что потребовало бы переписать большую часть того, что существовало в OSX в то время.
... но это изменилось, когда Apple приняла процессор Intel, открывая возможности установки OSX на ПК
Правда и ложь. Что изменилось, так это тот факт, что приложения OSX теперь могут работать с архитектурой x86-64, помимо архитектуры PowerPC. Работа на немодированной системе практически невозможна, потому что, хотя процессор переключился на тот, который используется большинством ПК, аппаратное обеспечение - нет.
Однако был преодолен самый большой контрольно-пропускной пункт, и поэтому вы можете установить специальные версии OSX на некоторые ПК. В чем разница между специальной версией OSX и обычной?
Специальные версии OSX имеют модификации базовой структуры операционной системы, чтобы учесть различия на аппаратном уровне. Одним из таких отличий является тот факт, что OSX не использует BIOS, используемый большинством компьютеров, а вместо этого прибегает к системе EFI для загрузки устройств в систему.
Под некоторыми компьютерами я имею в виду, что даже при открытой дверце процессора у Apple есть несколько устройств, которые они представляют на своих компьютерах. Таким образом, получение kexts или строк EFI (то есть драйверов) для этих устройств является сложным процессом. Таким образом, большинство компьютеров отказывают в этой части.
Исходное ядро для OSX требует набора инструкций SSE3, но есть некоторые ядра, которым удается эмулировать функции, предоставляемые набором инструкций SSE3 с использованием более старого SSE2. Это не большая проблема, так как большинство современных процессоров имеют набор инструкций SSE3, и поэтому они актуальны только для очень старых процессоров.
Почему они сделали это так сложно?
Apple понимает, что не хочет, чтобы люди устанавливали OSX на компьютеры, которые они не производят. Они не смогут поддерживать пользователей. Кроме того, это сокращает расходы, уменьшает количество ошибок и в целом дает лучший пользовательский опыт, имея очень стандартизированную и унифицированную линейку продуктов.
Как они делают это так сложно?
Как говорилось ранее, это не сложно ; Вам нужно провести предварительное исследование, и вы сможете быстро получить работающую установку OSX. Это не значит, что он работает полностью, но вы можете перемещать щелчок мышью по элементам и тому подобное.