OSx86是把蘋果公司出品的macOS操作系統在x86架構的非蘋果電腦上執行的黑客協同運作計劃。此計劃的構思始於2005年6月的蘋果全球開發者大會(WWDC 2005),當時蘋果宣佈他們將把其個人電腦從PowerPC架構轉向英特爾架構。
此條目應避免有陳列雜項、瑣碎資料的部分。 (2021年10月11日) |
OSx86名字源於macOS系統的原名「OS X」與英特爾處理器架構名「x86」。此計劃有一些廣為人知的名字,比如Hackintosh[1]或Hackint0sh[2](黑客「hack」與現蘋果電腦機型名「Macintosh」的混成詞)。在中國大陸和台灣還有很多人形象的稱其為「黑蘋果」。
蘋果公司的終端使用者授權合約(EULA)不允許將macOS安裝在一台沒有蘋果商標的硬件上。[3]一些公司試圖以此計劃牟利,如Psystar和PearC。[4]蘋果使用數字千年著作權法,贏得對Psystar等公司的訴訟。[5]
歷史
2005年6月6日,在WWDC 2005上,蘋果公司宣佈遷移至英特爾平台的計劃,並向指定開發者銷售999美元的開發者過渡工具。[6]一些開發者嘗試在非蘋果電腦上執行Mac OS X,但並沒有完全成功。[7]
2005年8月10日,HardMac網站聲稱一匿名黑客已經完全破解開發者版本的Mac OS X 10.4.1 "Tiger",而且該網站還收到了匿名黑客送來的兩段影片,展示Mac OS X x86系統在一台採用Pentium M 735(1.6GHz)處理器的Mitac 8050D筆記本上的執行情況。Mac OS X 10.4.1 "Tiger"是最早被黑客破解的版本。[8]
2006年1月10日,蘋果發佈了Mac OS X 10.4.4與第一代基於Intel x86架構的Mac電腦(iMac和MacBook Pro)。這些電腦上使用了統一可延伸韌體介面(UEFI),而非傳統x86主機板中的老式BIOS。2006年2月14日,黑客maxxuss在互聯網上發佈了Mac OS X 10.4.4的最初破解版本。[9]幾小時後蘋果將Mac OS X的版本更新到10.4.5,[10]maxxuss在兩周之內破解了它。[11]2006年4月3日蘋果推出10.4.6更新後,[12]兩周內又有人將其破解並能夠讓大多數的非蘋果電腦安裝,儘管其內核並沒有升級到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(如老版的奔騰4)難以完全相容。為了解決這一難題,OSx86的成員發佈了使用SSE2模擬新指令集的內核,不過對效能有一定的影響。
早在Mac OS X Leopard 9A466編譯版本發佈時,OSx86社區提供一個可在非蘋果電腦上執行的10.5版本。黑客BrazilMac製作出最早能在第三方硬件上安裝合法的、零售版本的蘋果Mac OS X的修補程式。儘管Boot-132愈發流行,很多人還是利用BrazilMac的修補程式輕而易舉地製作出Mac OSx86的「發行版」並獲得成功。五種最流行的版本依名稱順序為JaS,Kalyway(頁面存檔備份,存於互聯網檔案館),iATKOS(頁面存檔備份,存於互聯網檔案館),iPC(頁面存檔備份,存於互聯網檔案館)和iDeneb。然而,這些「發行版」均依賴於對內核修改。這些內核由Lorem(9A466)、SynthetiX(9A499、9A527和9A559)、ToH(9A581、9B13和9B18)等破解。距離現在較近的是一個稱為「StageXNU」(目前名為Voodoo)的團隊破解了Darwin 9.4.0。正是由於他們的貢獻,互聯網上可以下載到各種的Mac OSx86安裝器。他們仍在不斷改進和發佈新的版本,不只是為了保持與蘋果的相容,也為了與越來越多的第三方組件相容。
當Mac OS X Snow Leopard「雪豹」系統發佈後,俄國黑客netkas做出一個能夠啟動Mac OS X 10.6的Chameleon版本,不過由於某些特殊問題,許多人需要修改DSDT或使用特定的kext。與此同時,黑客modbin和dmitrik也開發出了能夠在AMD平台上啟動的雪豹內核。Qoopz與Pcj發佈了穩定版的雪豹XNU內核。有很多破解版都是基於官方零售版的,如Universal(只支援Intel平台)、Hazard、Mike™ 和iAtkos(頁面存檔備份,存於互聯網檔案館)。自從10.6.2的Nawcom後,Qoopz和Andy Vandijck為不支援的CPU開發傳統內核(Legacy Kernel)。
當蘋果發佈第一個開發者版本後,俄國開發者usr-sse2首先找到破解方法。在USB手指中部署OS X Lion鏡像,然後通過XPC UEFI引導來啟動。Chameleon經過某些原始碼的改動後,修改過的OS X Lion的鏡像也可以通過它啟動。Dimtrik(Bronzovka)製作了支援AMD CPU的內核,幾個月後帶AMD支援的10.7.3破解版與iAtkos L2(10.7.2,僅支援Intel)發佈。[13]
首個開發者預覽版釋放後,一些開發者使用稍作修改的Chameleon引導成功啟動該版本的OS X。OS X Mountain Lion的安裝方式與OS X Lion基本相同,Chameleon等引導及其他工具也隨之更新。至於破解版系統,Niresh的10.8(只支援Intel)率先發佈,接着更新到了10.8.2(支援AMD與Intel),10.8.5(加入UEFI支援);[14]iAtkos ML2緊接着Niresh的10.8發佈。
OS X Mavericks的安裝方式與OS X Mountain Lion基本相同,只是原鏡像內核位置改變。許多為10.9設計的新內核仍在開發中,這些內核允許AMD(K10架構等)和較舊的Intel CPU(如Core Duo)執行,這些CPU缺乏新指令集支援(SSSE3等)。開發者通過模擬的方法讓缺少新指令集的CPU支援10.9,但或多或少有一些小問題。從推土機架構開始,AMD的CPU幾乎包含所有新指令集,一些為AMD開發的、帶有完整SSE4支援的內核也隨之發佈。[15]Niresh的10.9破解版支援AMD及最新的Intel CPU,甚至還提供英特爾Atom的內核支援。[16]不過,iAtkos團隊選擇通過接受捐贈,為特定硬件製作10.9破解版本。
自從OS X Yosemite首個公開測試版發佈,開發者不斷更新系統引導器。Niresh(一個獨立 OSx86 開發者)發佈了 Yosemite Zone,該軟件能在非蘋果電腦上自動安裝新系統,並附帶多種實用功能。Yosemite Zone 軟件通過BT 協定下載系統鏡像,並使用 MacPwn 部署到USB手指進行安裝。[17]使用 InsanelyMac 的 Pandora Box 與 tonymacx86 的 UniBeast 也可以安裝 OS X Yosemite。需要注意的是,與之前的系統版本不同,為了保證系統的穩定性,OS X 10.10 及之後版本,需要使用未修改的 OS X 安裝程式進行,而非互聯網上的破解版,並且儘可能少使用kext(驅動)。
從OS X El Capitan開始,UniBeast(和 MultiBeast)將原先的 Chimera 引導(基於 Chameleon)替換成 Clover 引導,Clover 取代 Chameleon 成為主流引導器。2019 年,OpenCore 引導開始成為主流。在 macOS Big Sur 中,蘋果更新了 macOS 的引導方式,導致現有的引導器均無法引導此版本的 macOS。目前,OpenCore 和 Clover 已支援到 macOS Ventura。[18][19][20]
破解方式
當OSx86計劃剛開始時,開發者發現一些處理器不能正常啟動Mac OS X Tiger。Rosetta是一個二進制轉換器,能讓Intel處理器執行PowerPC程式(以及當時的系統內核),需要處理器支援SSE3指令集。為了解決這一問題,OSx86社區的開發者發佈了內核修補程式,允許處理器通過SSE2指令集模擬SSE3的指令。2005年10月,蘋果向開發者提供10.4.3更新,加入了處理器NX位的需求。[21]隨後社區也發佈了相關破解修補程式,也提供了對AMD處理器的支援。[22]
在Mac OS X Leopard發佈後的數小時內,OSx86社區很快跟進了內核的修改,發佈了AMD/Intel SSE2/3的內核修補程式,它能從原始的mach_kernel檔案(Mac OS核心組件之一)移除對高精度事件計時器(HPET)的要求。
OS X Mavericks內核使用了SSSE3指令,開發者也發佈了模擬SSSE3的破解內核。
可延伸韌體介面(EFI),現名為統一可延伸韌體介面(UEFI),是一個介於作業系統與平台韌體的軟件介面。因為這種方法並不需要取得與修改macOS原始檔,這被認為是在非蘋果電腦上安裝macOS的最佳合法途徑。
2007年11月早期,俄羅斯黑客團體Netkas使用了David Elliot(又稱作dfe)修改過的Boot-132代碼,找到了一個方法 ,讓修改過的Darwin啟動器模擬EFI環境,從而進入macOS。[23][24][25]這意味着一個滿足最低硬件需求的普通PC, 能被作業系統當作真正的Mac電腦。由於這種方式不用對內核進行修改,系統能執行地更加透明和穩定。這個創造性方法立刻在網上流傳開,DigitMemo.com詳細介紹了這個成就以及它的使用方法。[26]
完全的EFI模擬對於OSx86社區來說是一筆極大的財富。使用這些EFI修補程式,Hackintosh能從未修改的內核與內核擴充中啟動。這不僅允許系統進行未來的升級,同時也增強了它的穩定性。此方法還繞過了蘋果公司最終用戶許可協定中的某些部分,因為其協定指出修改其非開源部分的操作系統代碼是禁止的。[3]
2008年中期,一個全新的商業產品EFi-X發佈,他們宣稱能夠完全、簡單地從Mac OS X Leopard官方安裝光碟中啟動安裝,並且無需額外修改與修補程式。但後來,EFi-X與Rebel EFI(同期的另一個商業產品)被證實使用了經修改的開源Boot-132引導器及OSx86社區的開源軟件,而非使用真實的EFI。[27][28]
Boot-132 由蘋果發佈,是一個用於載入 XNU 內核的開源引導程式。[29][30]2008 年年中,出現了一個新的 Boot-132 修改版本 。[31]這種方法允許用戶使用從零售店裏買來的 Mac OS X Leopard 光碟,將 Mac OS X Leopard 直接安裝在電腦上,還能直接下載並安裝更新,而無需使用 JaS 與 Kalyway 等破解版本。Boot-132 啟動器會在系統上載入一個用於啟動 Mac OS X 的基本環境,引導會將一些必要的檔案(如Kext檔案等)放入一個本地資料夾或者轉儲成一個 .img 鏡像檔案。修改後的 Boot-132 儘管不違反數字千年著作權法,但違背了 macOS 的終端使用者授權合約。[32]
Boot-132 啟動器的行為類似於Linux內核:它使用一個與 mboot 相容的啟動器,在找到 .img 檔案後會使用裏面的kext(或mkext)檔案引導系統,這就不用替換光碟里的檔案了。然而,這只能執行在那些與系統相容的機器上。近年來,隨着破解內核發佈,AMD 用戶也能執行零售版了。[33]不過這些破解內核都需要在裝有 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 的使用人數越來越少,目前已停止更新。[34]
DUET啟動器由Tianocore開發,它能夠讓不支援EFI的電腦進入模擬EFI環境。一些基於DUET的啟動器(如iBOOT、XPC和Clover),能讓電腦在快閃記憶體中通過模擬EFI環境來啟動macOS。
自2011年起,大量使用UEFI BIOS的x86相容機與主機板進入了市場並逐漸流行。OSx86社區的一些開發者通過向UEFI BIOS加入Ozmosis引導,只使用主機板的UEFI直接引導macOS,實現類似於Mac電腦的原生功能。[35]Clover引導器也支援直接從主機板UEFI BIOS載入並啟動系統。[36]
在Live DVD中,您可以使用和安裝macOS。2007年3月,OSx86社區製作了Mac OS X 10.4.8的Live DVD版本,並成功引導執行。2009年1月2日,InsanelyMac發佈了製作Live DVD的新方法,允許用戶使用光碟或USBUSB手指啟動完整的Mac OS X 10.5.x系統。[37]新方法使用了蘋果的Netboot和Imageboot功能,只需一個指令碼,方便製作。值得注意的是,Live DVD也適用於Mac電腦。
使用虛擬機器軟件VMware Workstation、VirtualBox可以安裝及執行macOS,但這種方式不受官方支援。[38]因此使用虛擬機器執行通常需要對macOS鏡像檔案或虛擬機器軟件進行修改(如VMware需要Unlock-all修補程式解鎖),而且虛擬機器對macOS驅動支援不佳,使用模擬的顯示卡會無法開啟硬件加速。[39][40]
硬件支援
intel的CPU大多可以安裝黑蘋果,AMD可以通過AMD Vanilla的方法進行安裝(僅需將內核修補程式合併OpenCore的config.plist即可)。
由於Mac使用的顯示卡大多為 AMD 顯示卡,所以很多 AMD 顯示卡在macOS都是免驅或可以仿冒的,注意,APU的核心顯示卡是無法驅動的。
Nvidia 的顯示卡,除部分Kepler架構的顯示卡免驅(蘋果曾經使用過,最高可到BigSur版本,但代號GK106及GK208會於10.12.6以上花屏),其它型號需安裝 WebDriver 驅動(但只限於700系列至1000系列,其它如1600,2000,3000系列等,皆不支援任何一個版本的蘋果系統),且 Nvidia 不再提供驅動,因此大部份 Nvidia 顯示卡最高只能安裝到 macOS High Sierra版本。
對於手提電腦來說,除了某些支援 SLI 技術的筆記本外,大多數只能驅動核心顯示卡(整合顯示卡)而無法驅動獨立顯示卡,因此在筆記本上面安裝後顯示效能會較低。
安裝方法
目前,黑蘋果的安裝技術已經成熟許多,包括中國在內的許多國家都有很多關於黑蘋果的討論區,如中國大陸的遠景討論區等網站,因此安裝起來相對容易很多。目前使用比較多的是 OpenCore 引導器來引導並安裝 macOS 系統(因為大部分 kexts 驅動的作者已經停止了對 Clover 引導的相容性測試),只需要組態好合適的設定檔(config.plist)並放好合適的 kexts 驅動檔案就可以安裝黑蘋果,部分情況下需要更換 macOS 所支援的無線網卡,也可以使用 USB 無線網卡(不建議)。音效卡可以使用仿冒音效卡驅動(AppleALC)或者萬能音效卡驅動(VoodooHDA)。
目前共有clover與opencore兩種引導方式,opencore相對較新,在組態設定檔時也較複雜,但opencore因其受到較多kexts作者的相容和本身的易用性而得到相當數目用戶的追捧,關於兩者不同,在條目Opencore中有表格體現。
法律問題
蘋果沒有將macOS授權給其他x86電腦使用。從宣佈遷移到英特爾平台開始,蘋果就採取了一些技術手段(被誤認為是可信平台模組,事實上是蘋果專門開發的系統管理控制器SMC)[41],阻止非蘋果電腦執行macOS。[42]。
蘋果公司的終端使用者授權合約(EULA)並不允許將macOS安裝在一台沒有蘋果商標的硬件上。[3]2008年7月3日,蘋果向Psystar公司提起訴訟,宣稱Psystar違反了數碼千年著作權法(DMCA),避開蘋果保護macOS的防複製技術。具體來說,蘋果指控Psystar通過「避開、繞過、移除、解擾、解密、停用、破壞蘋果保護機制」等途徑,取得未經授權的代碼等。[43]
2009年11月13日,法院批准蘋果的簡要判決。2012年蘋果公司最終贏得了對Psystar的訴訟。[5][44][45]
2008年12月1日,連線網站的Gadget Lab板塊上發佈了一則在MSI Wind手提電腦上安裝macOS的影片教程,但隨後被蘋果投訴,網站將影片刪除。[46]儘管文字說明仍存在,但放上了免責聲明。[47]
是否終結
2020年11月11日,蘋果公司發佈M1晶片,M1是採用5納米製程的SoC晶片[48],其架構為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系列(IceLake-SP)處理器。M1 CPU效能未必足以支援高端使用場景,因此新系統在短時間內還需支援x86架構,推斷無法在未經轉譯下不能使用此技術尚有一段時間。尚且就算蘋果完全轉換為ARM架構,以虛擬機或是轉譯等方式繼續進行亦未嘗不可。
同時Opencore已經可以仿冒CPU,但不知道對於apple更換至自主研發的Apple M1導致的問題是否會有幫助。
參見
- 蘋果的英特爾平台遷移
- Macintosh相容機
參考
外部連結
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.