Hackintosh

OSx86是把蘋果公司出品的macOS作業系統在x86架構的非蘋果電腦上執行的駭客協作計劃。此計劃的構思始於2005年6月的蘋果全球開發者大會，當時蘋果宣佈他們將把其個人電腦從PowerPC架構轉向英特爾架構。OSx86名字源於macOS系統的原名“OS X”與英特爾處理器架構名“x86”。此計劃有一些廣為人知的名字，比如Hackintosh或Hackint0sh。在中國大陸和臺灣還有很多人形象的稱其為“黑蘋果”。蘋果公司的終端使用者許可協議不允許將macOS安裝在一臺沒有蘋果商標的硬體上。一些公司試圖以此計劃牟利，如和。蘋果使用數字千年版權法，贏得對Psystar等公司的訴訟。歷史.Mac OS X 10.4 "Tiger".2005年6月6日，在WWDC 2005上，蘋果公司宣佈遷移至英特爾平臺的計劃，並向指定開發者銷售999美元的開發者過渡工具。一些開發者嘗試在非蘋果電腦上執行Mac OS X，但並沒有成功。2005年8月10日，HardMac網站聲稱一匿名駭客已經完全破解開發者版本的Mac OS X 10.4.1 "Tiger"，而且該網站還收到了匿名駭客送來的兩段影片，展示Mac OS X x86系統在一臺採用Pentium M 735處理器的Mitac 8050D筆記本上的執行情況。Mac OS X 10.4.1 "Tiger"是最早被駭客破解的版本。2006年1月10日，蘋果釋出了Mac OS X 10.4.4與第一代基於Intel x86架構的Mac電腦，而非傳統x86主機板中的老式BIOS。2006年2月14日，駭客maxxuss在網際網路上釋出了Mac OS X 10.4.4的最初破解版本。幾小時後蘋果將Mac OS X的版本更新到10.4.5，maxxuss在兩週之內破解了它。2006年4月3日蘋果推出10.4.6更新後，兩週內又有人將其破解並能夠讓大多數的非蘋果電腦安裝，儘管其核心並沒有升級到10.4.6。同年6月，駭客釋出了使用10.4.4核心的Mac OS X 10.4.7破解版本。直到10.4.8更新發行，所有OSx86補丁用的都是10.4.4版核心，而更新的系統使用10.4.8版核心。但是，新的框架依賴於新的核心，這導致使用10.4.8核心的使用者遇到一些問題。同時，蘋果在硬體上更多地使用SSE3指令集，這也讓那些只支援SSE2的CPU難以完全相容。為了解決這一難題，OSx86的成員釋出了使用SSE2模擬新指令集的核心，不過對效能有一定的影響。Mac OS X 10.5 "Leopard".早在Mac OS X Leopard 9A466編譯版本釋出時，OSx86社群提供一個可在非蘋果電腦上執行的10.5版本。駭客BrazilMac製作出最早能在第三方硬體上安裝合法的、零售版本的蘋果Mac OS X的補丁。儘管Boot-132愈發流行，很多人還是利用BrazilMac的補丁輕而易舉地製作出Mac OSx86的“發行版”並獲得成功。五種最流行的版本依名稱順序為JaS，Kalyway的團隊破解了Darwin 9.4.0。正是由於他們的貢獻，網際網路上可以下載到各種的Mac OSx86安裝器。他們仍在不斷改進和釋出新的版本，不只是為了保持與蘋果的相容，也為了與越來越多的第三方元件相容。Mac OS X 10.6 "Snow Leopard".當Mac OS X Snow Leopard“雪豹”系統釋出後，俄國駭客netkas做出一個能夠啟動Mac OS X 10.6的Chameleon版本，不過由於某些特殊問題，許多人需要修改DSDT或使用特定的kext。與此同時，駭客modbin和dmitrik也開發出了能夠在AMD平臺上啟動的雪豹核心。Qoopz與Pcj釋出了穩定版的雪豹XNU核心。有很多破解版都是基於官方零售版的，如Universal。OS X 10.7 "Lion".當蘋果釋出第一個開發者版本後，俄國開發者usr-sse2首先找到破解方法。在快閃記憶體盤中部署OS X Lion映象，然後透過XPC UEFI引導來啟動。Chameleon經過某些原始碼的改動後，修改過的OS X Lion的映象也可以透過它啟動。Dimtrik釋出。OS X 10.8 "Mountain Lion".首個開發者預覽版釋放後，一些開發者使用稍作修改的Chameleon引導成功啟動該版本的OS X。OS X Mountain Lion的安裝方式與OS X Lion基本相同，Chameleon等引導及其他工具也隨之更新。至於破解版系統，Niresh的10.8；iAtkos ML2緊接著Niresh的10.8釋出。OS X 10.9 "Mavericks".OS X Mavericks的安裝方式與OS X Mountain Lion基本相同，只是原映象核心位置改變。許多為10.9設計的新核心仍在開發中，這些核心允許AMD。開發者透過模擬的方法讓缺少新指令集的CPU支援10.9，但或多或少有一些小問題。從推土機架構開始，AMD的CPU幾乎包含所有新指令集，一些為AMD開發的、帶有完整SSE4支援的核心也隨之釋出。Niresh的10.9破解版支援AMD及最新的Intel CPU，甚至還提供英特爾Atom的核心支援。不過，iAtkos團隊選擇透過接受捐贈，為特定硬體製作10.9破解版本。OS X 10.10 "Yosemite"及之後版本.自從OS X Yosemite首個公開測試版釋出，開發者不斷更新系統引導器。Niresh。從OS X El Capitan開始，UniBeast替換成 Clover 引導，Clover 取代 Chameleon 成為主流引導器。2019 年，OpenCore 引導開始成為主流。在 macOS Big Sur 中，蘋果更新了 macOS 的引導方式，導致現有的引導器均無法引導此版本的 macOS。目前，OpenCore 和 Clover 已支援到 macOS Ventura。破解方式.核心破解.當OSx86計劃剛開始時，開發者發現一些處理器不能正常啟動Mac OS X Tiger。Rosetta是一個二進位制轉換器，能讓Intel處理器執行PowerPC程式，需要處理器支援SSE3指令集。為了解決這一問題，OSx86社群的開發者釋出了核心補丁，允許處理器透過SSE2指令集模擬SSE3的指令。2005年10月，蘋果向開發者提供10.4.3更新，加入了處理器NX位的需求。隨後社群也釋出了相關破解補丁，也提供了對AMD處理器的支援。在Mac OS X Leopard釋出後的數小時內，OSx86社群很快跟進了核心的修改，釋出了AMD/Intel SSE2/3的核心修補程式，它能從原始的mach_kernel檔案的要求。OS X Mavericks核心使用了SSSE3指令，開發者也釋出了模擬SSSE3的破解核心。載入程式與EFI.可延伸韌體介面，是一個介於作業系統與平臺韌體的軟體介面。因為這種方法並不需要獲取與修改macOS原始檔，這被認為是在非蘋果電腦上安裝macOS的最佳合法途徑。2007年11月早期，俄羅斯駭客團體Netkas使用了David Elliot修改過的Boot-132程式碼，找到了一個方法 ，讓修改過的Darwin啟動器模擬EFI環境，從而進入macOS。這意味著一個滿足最低硬體需求的普通PC， 能被作業系統當作真正的Mac電腦。由於這種方式不用對核心進行修改，系統能執行地更加透明和穩定。這個創造性方法立刻在網上流傳開，DigitMemo.com詳細介紹了這個成就以及它的使用方法。完全的EFI模擬對於OSx86社群來說是一筆極大的財富。使用這些EFI補丁，Hackintosh能從未修改的核心與核心擴充套件中啟動。這不僅允許系統進行未來的升級，同時也增強了它的穩定性。此方法還繞過了蘋果公司終端使用者許可協議中的某些部分，因為其協議指出修改其非開源部分的作業系統程式碼是禁止的。2008年中期，一個全新的商業產品EFi-X釋出，他們宣稱能夠完全、簡單地從Mac OS X Leopard官方安裝光碟中啟動安裝，並且無需額外修改與補丁。但後來，EFi-X與Rebel EFI被證實使用了經修改的開源Boot-132引導器及OSx86社群的開源軟體，而非使用真實的EFI。Boot-132與Chameleon.Boot-132 由蘋果釋出，是一個用於載入 XNU 核心的開源載入程式。2008 年年中，出現了一個新的 Boot-132 修改版本 。這種方法允許使用者使用從零售店裡買來的 Mac OS X Leopard 光碟，將 Mac OS X Leopard 直接安裝在電腦上，還能直接下載並安裝更新，而無需使用 JaS 與 Kalyway 等破解版本。Boot-132 啟動器會在系統上載入一個用於啟動 Mac OS X 的基本環境，引導會將一些必要的檔案放入一個本地資料夾或者轉儲成一個 .img 映象檔案。修改後的 Boot-132 儘管不違反數字千年版權法，但違背了 macOS 的終端使用者許可協議。Boot-132 啟動器的行為類似於Linux核心：它使用一個與 mboot 相容的啟動器，在找到 .img 檔案後會使用裡面的kext檔案引導系統，這就不用替換光盤裡的檔案了。然而，這隻能執行在那些與系統相容的機器上。近年來，隨著破解核心釋出，AMD 使用者也能執行零售版了。不過這些破解核心都需要在裝有 Boot-132 啟動器的安裝盤上進行燒寫。從 Mac OS X Snow Leopard 的早期開發者版本開始，OSx86 社群的成員們使用 Netkas 的 PC EFI 或者 Voodoo 團隊的 Chameleon載入程式來啟動新版本系統。Chameleon 基 於David Elliot 的 Boot-132 開發，支援ACPI、SMBIOS、顯示卡和乙太網等注入。macOS 能否在 PC 上執行取決於其硬體是否被 macOS 官方驅動或者 OSx86 社群支援。Chameleon 有很多不同的分支版本，目前官方的最新版本為 2.2。由於 Clover 的流行，Chameleon 的使用人數越來越少，目前已停止更新。DUET及UEFI BIOS.DUET啟動器由Tianocore開發，它能夠讓不支援EFI的電腦進入模擬EFI環境。一些基於DUET的啟動器，能讓電腦在快閃記憶體中透過模擬EFI環境來啟動macOS。自2011年起，大量使用UEFI BIOS的x86相容機與主機板進入了市場並逐漸流行。OSx86社群的一些開發者透過向UEFI BIOS加入Ozmosis引導，只使用主機板的UEFI直接引導macOS，實現類似於Mac電腦的原生功能。Clover引導器也支援直接從主機板UEFI BIOS載入並啟動系統。Live DVD.在Live DVD中，您可以使用和安裝macOS。2007年3月，OSx86社群製作了Mac OS X 10.4.8的Live DVD版本，併成功引導執行。2009年1月2日，InsanelyMac釋出了製作Live DVD的新方法，允許使用者使用光碟或USB快閃記憶體盤啟動完整的Mac OS X 10.5.x系統。新方法使用了蘋果的Netboot和Imageboot功能，只需一個指令碼，方便製作。值得注意的是，Live DVD也適用於Mac電腦。虛擬機器.使用虛擬機器軟體VMware Workstation、VirtualBox可以安裝及執行macOS，但這種方式不受官方支援。因此使用虛擬機器執行通常需要對macOS映象檔案或虛擬機器軟體進行修改，而且虛擬機器對macOS驅動支援不佳，使用模擬的顯示卡會無法開啟硬體加速。硬體支援.CPU.intel的CPU大多可以安裝黑蘋果，AMD可以透過AMD Vanilla的方法進行安裝顯示卡.AMD.由於Mac使用的顯示卡大多為 AMD 顯示卡，所以很多 AMD 顯示卡在macOS都是免驅或可以仿冒的，注意，APU的核心顯示卡是無法驅動的Nvidia.Nvidia 的顯示卡，除部分Kepler架構的顯示卡免驅(蘋果曾經使用過，最高可到BigSur版本，但代號GK106及GK208會於10.12.6以上破圖)，其它型號需安裝 WebDriver 驅動(但只限於700系列至1000系列，其它如1600，2000，3000系列等，皆不支援任何一個版本的蘋果系統)，且 Nvidia 不再提供驅動，因此大部份 Nvidia 顯示卡最高只能安裝到 macOS High Sierra版本膝上型電腦.對於膝上型電腦來說，除了某些支援 SLI 技術的筆記本外，大多數只能驅動核心顯示卡而無法驅動獨立顯示卡，因此在筆記本上面安裝後顯示效能會較低。安裝方法.目前，黑蘋果的安裝技術已經成熟許多，包括中國在內的許多國家都有很多關於黑蘋果的論壇，如中國大陸的遠景論壇等網站，因此安裝起來相對容易很多。目前使用比較多的是 OpenCore 引導器來引導並安裝 macOS 系統。目前共有clover與opencore兩種引導方式，opencore相對較新，在配置配置檔案時也較複雜，但opencore因其受到較多kexts作者的相容和本身的易用性而得到相當數目使用者的追捧，關於兩者不同，在條目Opencore中有表格體現法律問題.蘋果沒有將macOS授權給其他x86電腦使用。從宣佈遷移到英特爾平臺開始，蘋果就採取了一些技術手段，阻止非蘋果電腦執行macOS。蘋果公司的終端使用者許可協議，避開蘋果保護macOS的防複製技術。具體來說，蘋果指控Psystar透過“避開、繞過、移除、解擾、解密、停用、破壞蘋果保護機制”等途徑，獲取未經授權的程式碼等。2009年11月13日，法院批准蘋果的簡要判決。2012年蘋果公司最終贏得了對Psystar的訴訟。2008年12月1日，連線網站的Gadget Lab板塊上釋出了一則在MSI Wind膝上型電腦上安裝macOS的影片教程，但隨後被蘋果投訴，網站將影片刪除。儘管文字說明仍存在，但放上了免責宣告。是否終結.2020年11月11日，蘋果公司釋出M1晶片，M1是採用5納米制程的SoC晶片，其架構為ARM。2020年11月至2021年11月，蘋果陸續釋出了搭載M1(M1 Pro)晶片的Mac Mini、MacBook、iMac等產品釋出。這是否會終結基於x86的黑蘋果，還有待觀察。M1晶片發表後，蘋果的膝上型電腦、桌上型電腦、迷你機等陸續在新機種捨x86改搭載M1晶片，但Mac Pro CPU的選擇尚未明朗。於2019年釋出的Mac Pro搭載了Intel Xeon W 處理器，根據相關媒體的猜測2022年即將釋出最新款的Mac Pro將會使用英特爾至強W-3300系列處理器。M1 CPU效能未必足以支援高階使用場景，因此新系統在短時間內還需支援x86架構，推斷無法在未經轉譯下不能使用此技術尚有一段時間。尚且就算蘋果完全轉換為ARM架構，以虛擬機器或是轉譯等方式繼續進行亦未嘗不可。同時Opencore已經可以仿冒CPU，但不知道對於apple更換至自主研發的Apple M1導致的問題是否會有幫助。