既然本帖是讨论运行于PC上的Mac OS X,因此之前的版本都不在讨论范围内,感兴趣的XD可以自行Google科普。
Mac OS X的内核以及引导方式都与Windows有很大差别,直接在PC上面安装Mac OS是行不通的,因此也有了黑苹果的说法。
首先需要了解Mac OS X及其启动方式:基于Darwin核心,此核心来自于FreeBSD,加上Apple自主的Aqua用户界面组成了Mac OS X。
虽然在x86架构的CPU上跑Unix并不是难事,但问题在于,Mac使用了EFI作为机器的引导设备,而非BIOS。此处的EFI,并不是普通PC主板采用的UEFI,因此即使PC主板采用UEFI,也无法直接引导Mac OS X。另外,Mac OS使用的磁盘分区格式并非MBR,而是GPT,磁盘格式也非FAT或者NTFS,而是HFS,因此在安装Mac OS X之前,还有很多准备工作要做。
磁盘分区格式也算比较好解决的问题:我的做法通常是,使用引导器从光盘启动,将硬盘格式化为Mac OS X可识别的格式,然后安装系统。对于希望在单盘内安装双系统或多系统的人来说,此方法不适用。应该首先在Windows下为Mac OS X预留好足够的磁盘分区空间,然后再使用Mac OS安装程序,甚至DiskGen之类的软件单独格式化这个分区。
解决了引导和磁盘问题后,只是在PC安装Mac OS X的道路上仅仅迈出了一小步。阻碍PC完美运行Mac OS X的最大问题在于:硬件配置和驱动程序。
众所周知,Mac的硬件配置相对与PC来说,基本属于固定不变的,例如去年年初,Mac Pro的最高配置版本使用的显卡,仍然是HD4870,也可自行够买Mac版GTX285。相对于PC来说,Mac的硬件配置更新换代速度可以算是龟速的。这也就为配置千变万化的PC运行Mac OS X带来了不小的困难。
就目前来说,由于Mac从未使用过Intel Core系列之外的CPU,因此非Intel Core平台用户要想安装Mac OS X,就必须使用破解内核(例如全体AMD平台用户,Atom用户等等)。
其次是对主板的要求。Mac OS X自上市之初,就采用了一系列较新的技术,比较典型的便是AHCI。这也造成了不含AHCI选项的主板,或没有打开AHCI的主板,在安装Mac OS X会遇到一些困难。解决办法是,在BIOS内打开AHCI,或使用特殊的驱动强制让Mac OS识别IDE设备。另外,由于Mac在05年才转入Intel平台,因此对于05年之前上市的大部分硬件设备,支持都不算很好。
由于显卡BIOS的问题,要想让Mac OS X正常识别显卡(注意,只是识别,还不是驱动),就需要特殊的文件来实现。NV显卡主要依靠Bootloader或者Injector或者EFI String实现这个目的。AMD显卡没那么幸运,必须从几十甚至上百个采用不同FrameBuffer的Boot文件中找到一个适合自己显卡的文件,替换掉系统原版boot文件。同时,两家厂商的非公版显卡又是最难解决的,甚至连输出接口类型和顺序都会影响到显卡的正常工作。(发句牢骚,曾经有一片二线品牌的5770,我硬是花了两个通宵的时间才搞定,从此发誓不在装有AMD显卡的机器上安装Mac OS X)
Mac OS看似支持很多显卡,不过实际用起来没什么问题的显卡也就那么几张,并且AMD较新型号的显卡,例如HD5000和HD6000系列在安装时,还会有不小的难度(需要根据显卡型号不同,使用不同FrameBuffer的Boot文件,每个具体型号对应一个boot,比如5870公版和5870毒药就不能使用同样的boot文件)。
同时,跟Windows下同理,能够调节分辨率,并不代表显卡已经被正常驱动。Mac OS X仅在检测到支持OpenGL的显卡后,才会启用图形加速,也就是Core Image和Extreme Quartz。不过在Mac OS X 10.6.3及后面的版本当中,Core Image和Extreme Quartz的概念已经被淡化(系统概述的显卡页面已经没有QE/CI项目),Apple将其统称为OpenGL加速。
有线网卡相对来说要简单得多,这倒不是说Mac OS X内已经集成了多少网卡驱动,而是不知为何,各个网卡芯片厂家都非常好事的,主动为Mac OS X开发了网卡驱动.....因此,基于螃蟹,Intel以及Marvell的网卡,几乎全都有很完美的驱动可用。无线网卡就没那么幸运了,仅有极少数的无线网卡能够工作在Mac OS X下面,例如Intel一两款型号,Broadcom一两款型号。
接下来是I/O接口驱动和外部设备驱动。有人觉得奇怪,Windows下从来没听说过键盘鼠标还需要单独安装驱动的,但在Mac OS X下面,如果你的键盘鼠标是PS/2接口,或者你是在笔记本电脑上安装Mac OS X,那么你还需要安装PS/2 Controller驱动,否则鼠标键盘,或者笔记本触摸板之类的设备都无法工作。
最后一条,也是个人认为最蛋痛的问题:CPU驱动......WTF,CPU还需要驱动???至少在Mac OS X下面确实如此。之前说过,Mac OS X的内核不同于Windows,主板也不同于Windows,因此要想让多核心CPU正常工作,并且支持自动频率调节(Speed Step,CNQ),还需要修改部分系统文件,让Mac OS X不仅能成功识别多个核心,还能正常调用多个核心。
OK,黑苹果的大概情况就是这样了,我写这篇帖子都写得头大,各位要是看得不头疼还真是奇怪了.....个人建议是,如果你只是想装个Mac OS X来尝鲜,请使用虚拟机。如果你硬要在PC上安装Mac OS X并完美运行,希望你确实是由于工作或者其他原因迫不得已(至少我就是这样,不过现在还是搞了个MacBook Pro),同时,请你在安装Mac OS X之前,仔细斟酌机器配置,以免到时候抓狂~~~
谢谢观赏
作者: Edison 时间: 2011-4-3 02:24
其实 windows 下 CPU 一直都有 driver,所以不是什么新鲜事。