<
  • Главная
Статьи

Mac на PC. Частина I - Що таке Хакінтош?

  1. Історії та чутки
  2. офіційно
  3. Нові Mac використовують EFI
  4. Чим важливий EFI?
  5. Bootloader - як це працює?
  6. Завантажувач Clover служить для обох цілей

Історії та чутки   У середовищі користувачів Mac відома історія про те, що на початку двохтисячних один з інженерів Apple показав Стіву Джобсу ноутбук на базі Intel із запущеною версією Mac OS X

Історії та чутки

У середовищі користувачів Mac відома історія про те, що на початку двохтисячних один з інженерів Apple показав Стіву Джобсу ноутбук на базі Intel із запущеною версією Mac OS X. Ніяких підтверджень тому не було, поки в 2012 році на ресурсі Quora була опублікована запис від імені Кім Шейнберг (Kim Scheinberg), дружини Джона Кулльманна (John Kullmann), інженера Apple, який пропрацював в компанії 13 років.

***
Влітку 2000 року життєві обставини Джона складаються таким чином, що його сімейства потрібен був переїзд на східне узбережжя штатів і можливість працювати в компанії віддалено. Останнє означало, що він більш не може бути учасником групового проекту і йому буде потрібно вести незалежну розробку.
Джон відправляє своєму начальнику, Джо Соколу (Joe Sokol), лист з темою "Intel", в якому пропонує обговорити можливість призначення його відповідальним за Intel-версію Mac OS X, пояснивши, що він вже тиждень працює з платформою, знаходить це цікавим і якщо проект порахують важливим, то він міг би займатися цим весь час.
Минуло 18 місяців. У грудні 2001 року Сокіл повідомляє Джону про те, що йому потрібно якось "виправдати його зарплату" і просить повідомити йому про поточні роботах.
До цього моменту в офісі Джона вже було три PC і ще стільки ж будинку, куплених у одного, що займається продажами "кастомних" PC. На всіх була запущена Mac OS X.
Сокіл з подивом спостерігає за тим, як Джон завантажує PC зі знайомою написом на екрані: "Welcome to Macintosh".
У якийсь момент Джо замовкає і каже: "Я зараз повернуся". Через кілька хвилин він повертається з Бертраном Серл ( Bertrand Serlet ), Який також спостерігає за демонстрацією завантаження і питає Джона: "Скільки вам потрібно часу, щоб запустити це на Vaio?", - на що отримує відповідь: "недовго". Бертран перепитує: "Два тижні? Три? ", - Джон відповідає щось на кшталт« два години .. максимум три. "
Бертран відправив Джона в найближчий Fry (відомий магазин комп'ютерної техніки), щоб купити самий топовий і дорогий Vaio, який буде в наявності. О 7:30 вечора того ж дня Vaio вже завантажується Mac OS X.
На наступний день Стів Джобс летить на зустріч з президентом компанії Sony.

Невідомо, що в цій історії правда, а що - ні. Але зустріч з Sony мала місце бути.

офіційно

6 червня 2005 на Worldwide Developers Conference (WWDC) Apple анонсує плани переходу на процесори Intel і пропонує окремим розробникам Developer Transition Kit за 999 $
6 червня 2005 на Worldwide Developers Conference (WWDC) Apple анонсує плани переходу на процесори Intel і пропонує окремим розробникам Developer Transition Kit за 999 $. Ентузіасти здійснюють спроби запуску Mac OS X на сторонньому "залозі", але отримують помилку про те, що "дана конфігурація не підтримується" (деякі старожили подейкують, що успіхи все-таки були).
10 січня 2006 року в Macworld Conference & Expo, всесвітній виставці-конференції, присвяченій платформі Macintosh і продуктам для неї, Стів Джобс оголошує, що наступний iMac буде з процесором Intel. Звісно ж операційна система Mac OS X Tiger, яка буде встановлена ​​(версія 10.4.4) на все нові комп'ютери Mac. І що важливо, нові моделі підтримують EFI (Extensible Firmware Interface), а не Open Firmware, яке використовувалося в попередніх системах платформи PowerPC.
Через місяць, 14 лютого того ж року, з'являється новина про реліз першого "хака", що дозволяє запустити Mac OS на комп'ютері немає від Apple. Через годинник виходить оновлення 10.4.5, але вже через два тижні той же програміст під ніком crg92 випускає наступний "хак".
І по сьогоднішній день ентузіасти постійно працюють над можливостями запуску Mac OS X (тепер уже macOS) на звичайних PC.
Такі комп'ютери згодом стали називати "Хакінтош".

Нові Mac використовують EFI

Перша специфікація EFI була розроблена компанією Intel, однак в липні 2005 року розробка була припинена на версії 1
Перша специфікація EFI була розроблена компанією Intel, однак в липні 2005 року розробка була припинена на версії 1.10 і надалі передана об'єднаному форуму EFI, а сама специфікація була перейменована в Unified Extensible Firmware Interface (UEFI). У той же час компанія Intel залишає за собою право надання ліцензій для всіх продуктів, що використовують EFI.
EFI призначений для заміни BIOS - інтерфейсу, традиційно використовується всіма IBM-PC-сумісними персональними комп'ютерами.
По суті це інтерфейс між операційною системою і мікропрограмами, які керують низькорівневими функціями обладнання. Основне призначення EFI - коректно форматувати обладнання при включенні системи і передати управління завантажувача операційної системи. На відміну від 16-бітного BIOS, що використовує 64кб, EFI 32 і 64-бітний, займає від 4Мб і позиціонується як апаратно-незалежний. В реальності UEFI BIOS апаратно-залежний.

Чим важливий EFI?

Спочатку користувачі "Хакінтош" могли запускати Mac OS X на звичайних ПК, використовуючи модифіковане ядро ​​системи, що обходять звернення до EFI.
Однак, на початку листопада 2007 року було розроблено спосіб емуляції EFI, який використовує змінений завантажувач (bootloader) Darwin. На ділі це означало, що з'явилася можливість "уявити" PC для Mac OS X таким чином, що система "вважала" його комп'ютером Mac і працювала з "нерідною" залізом. З використанням емуляції EFI, комп'ютер міг завантажувати немодифіковані ядра операційної системи і використовувати оригінальні розширення (Kernel Extensions). З'являються і спеціальні завантажувачі, bootloader, які дозволяють зробити пряму UEFI завантаження, а також завантаження за допомогою звичайного завантажувального сектора, який найчастіше використовується на комп'ютерах, оснащених традиційним BIOS.
Станом на 2015 рік, одним з найбільш використовуваних є завантажувач Clover , Що належить до сімейства RealEFI.

Bootloader - як це працює?

Щоб запустити Хакінтош, потрібен спеціальний завантажувач
Щоб запустити Хакінтош, потрібен спеціальний завантажувач. Існує безліч різних завантажувачів, але по своїй основі розділити на два класи: FakeEFI і RealEFI (більш докладно про їх видах можна прочитати на сторінках OSx86 Project ).
FakeEFI був винайдений David Elliot багато років тому і працює за простим принципом: він створює видимість того, що EFI вже відпрацював. В пам'яті залишаються сліди активності (boot-args і дерево таблиць) і запускається ядро ​​mach_kernel. Завантажувач Chameleon справляється з цим, за винятком проблем, на зразок відсутності підтримки панелі завантажувального диска. У той же час Apple "надала" та інші складності, пов'язані з відсутніми Rutime Services. Наприклад, в січні 2013 року через недостатню функції SetVariable () перестав працювати iMessage. Згодом проблема була вирішена, але з'явилися й інші. Варіанти legacy-завантажувачів: Chameleon, enoch, Chimera, PC-EFI, revoboot.
RealEFI прошивається замість існуючого BIOS, але є метод використання довантажувати завантажувача для плат, яким BIOS потрібен.
Система такого завантаження була розроблена компанією Intel і зараз знаходиться в активній розробці з відкритими початковими кодами на сайті tianocore.org. Цей завантажувач називається DUET, але у нього є проблеми: він завантажує EFI, але не передбачає завантаження Mac OS X, тому потрібно пристосувати DUET під вимоги Mac OS X. Незважаючи на те, що на нових материнських платах EFI вже є, він непридатний для завантаження Хакінтоша. Варіанти EFI-завантажувачів діляться на дві категорії: для PC BIOS - bareboot, XPC, і для UEFI BIOS - Ozmosis.

Завантажувач Clover служить для обох цілей

Назва Clover даний завантажувач отримав від одного із засновників проекту, kabyl'а, який побачив подібність клавіші "Command" з чотирилисник.
EFI - це не тільки початковий етап завантаження операційної системи: створюються таблиці даних, що містять інформацію про платформу, завантажувальні і runtime-сервіси, які доступні для завантажувача операційної системи і для неї самої. Працездатність системи залежить від коректності цього етапу. На вбудованому UEFI завантажити Mac OS X не можна, також як і зробити це з чистого DUET. CloverEFI і CloverGUI виконують чималу роботу по коригуванню вбудованих таблиць для можливості запуску Mac OS X.
Clover - це EFI завантажувач операційних систем, для комп'ютерів вже мають UEFI BIOS (Unified EFI ...), і для комп'ютерів, які не мають такого. При цьому самі операційні системи можуть підтримувати EFI- завантаження (OSX, Windows 7-64EFI, Linux), або ні (Windows XP). В останньому випадку передбачений legacy-boot: повернення до старої схеми BIOS-завантаження через завантажувальні сектора. Якщо бути точніше, то Clover - це не завантажувач, а скоріше Boot Manager, який виконує підготовку та запуск рідних загрузчиков різних ОС (boot.efi, grub.efi, bootmgr.efi).

При включенні або при перезавантаженні комп'ютера завантаження операційної системи за допомогою boot manager відбувається за наступним шляхом:
Варіант 1. Комп'ютер заснований на BIOS (legacy-завантаження)
BIOS> MBR> PBR> boot> CLOVERX64.efi> OS loader (boot.efi в разі Mac OS X,
bootmgr.efi для Windows, grub.efi для Linux).
Варіант 2. Комп'ютер, заснований на UEFI BIOS (нова схема, UEFI-завантаження)
UEFI BIOS> CLOVERX64.efi> OS loader

Таким чином, маючи підготовлений завантажувач, ми можемо "потрапити" в потрібну нам систему. Але перед цим потрібно її встановити, підготувавши ще один окремий завантажувач, додати необхідні розширення ядра для установки, а також розширення і драйвера для роботи системи в цілому.

***
У наступній статті: що з себе представляє установка Хакінтош, які складнощі можуть виникнути в роботі і думки про комерційне використання Хакінтош.

Bootloader - як це працює?
Бертран перепитує: "Два тижні?
Три?
Чим важливий EFI?
Bootloader - як це працює?


Новости
  • Виртуальный хостинг

    Виртуальный хостинг. Возможности сервера распределяются в равной мере между всеми... 
    Читать полностью

  • Редизайн сайта

    Редизайн сайта – это полное либо частичное обновление дизайна существующего сайта.... 
    Читать полностью

  • Консалтинг, услуги контент-менеджера

    Сопровождение любых интернет ресурсов;- Знание HTML и CSS- Поиск и обновление контента;-... 
    Читать полностью

  • Трафик из соцсетей

    Сравнительно дешевый способ по сравнению с поисковым и контекстным видами раскрутки... 
    Читать полностью

  • Поисковая оптимизация

    Поисковая оптимизация (англ. search engine optimization, SEO) — поднятие позиций сайта в результатах... 
    Читать полностью