Update :
5세대 설치방법 :http://cafe.naver.com/uefi/5370 http://cafe.naver.com/uefi/1774
6세대 : http://cafe.naver.com/uefi/5128 http://cafe.naver.com/uefi/3059
그동안 윈도우즈를 사용하여 오면서 제일 짜증나는 것이 바이러스 문제였고 시간이 갈수록 느려터져만 가는 시스템 문제가 제일 왕짜증이었다.
아시다시피 바이러스백신 프로그램은 윈도우즈에는 필수불가결하게 사용하여야 하고 대신 시스템 성능의 희생을 담보해야만 하였다.
그래서 고민하였던 것이 맥이냐 우분투냐 라는 고민을 하게 되었는데 둘다 설치해본 결과 맥으로 결정하게 되었다.
맥프로는 애플사에서 370만원 이상의 가격으로 판매를 한다. 맥프로 애기이고 위 그림을 참고.
물론, 워크스테이션 급이고 일반 PC와는 달리 CPU와 램, 그리고 메인보드 에서 많은 차이가 난다.
단순히, 케이스만 시중에서 10 - 30만원대에 판매되고 있다.
하지만, 애플사가 파워칩에서 인텔칩으로 시스템을 바꾼 이후 일반 PC에서 맥프로급의 성능을 가진 OSX 시스템을 설치할 수 있게 되었다.
Vmware등의 가상머신에 설치하는 OS X 는 비교적 설치하기가 용이하지만 Native설치방식을 이용하여 PC에 설치하기 위해서는 CPU, 메인보드, 그래픽 카드 그리고 네트웍카등에서 많은 제약사항이 있다.
이런 부품의 제약사항을 극복하기 위해 부품 호환성이 많이 요구되어지고 이른바 국민보드와 그래픽 카드를 이용하여 호환성을 만족하게 되면 8-90% 이상의 맥시스템(?)을 가질수 있다. 물론, 소프트웨어 업데이트도 문제없이 된다. 또한, 종종 커널 패닉같은 문제가 발생한다는데 스노우레오파드이 아직 그런문제는 발생하지 않는다. 당근 나름 설치했다고는 하지만 제대로 설치하지 않았을 경우에는 패닉이 발생하게 되므로 설치하기 나름이다.
현재까지 이런 제약사항을 극복하여 PC에 OSX를 설치하는 사용자들이 많다.
해킨토시 기술을 세대별로 다음과 같이 나누어보았다.
1세대
Maxxuss가 세계 최초로 Tiger를 PC에 설치하는 방법을 공개한 이후로 Kiko등이 주도한 EFI개발팀에서 MAC 시스템의 EFI롬을 추출하여 일반PC에 적용할 수 있는 방법을 연구하였다. Ritz님도 멤버였답니다. 주로 disassemble 방식을 이용하여 커널의 보안로직을 무력화하는 방법을사용하였다. 이 당시에 많은버전의 크랙커널이 이용되었고 배포본에 포함되어 사용되었다.
2세대
Ritz의 권유로 해킨커널의 개발진에 참여한 Vitality(Mifky)가 세계 최초로 다윈오픈소스 커널을 이용하여 PC에 적합하게 재컴파일하는데 성공하였다. 즉, 커널을 disassemble 하는 방식보다 한단계 진보히였다.
3세대
EFI개발팀에서 연구한 자료와 rEFIt 오픈소스를 이용하여 Netkas가 USB에 탑재하여 EFI롬을 에뮬레이팅하는 PC_EFI부트로더를 개발해 내었으며 Ritz등이 이를 일반PC에 설치성공하여 부팅하는 방법을 입증하였다. 또한 이 방법을 이용하여 싸이스타라는 회사가 생겨 이슈가 되기도 하였다. 이후 이 방식은 Chameleon 오픈소스 프로젝트의 일환으로 지금까지 개발진행되어 오고 있으며 Chameleon, PC_EFI, Boot Think등의 간편한 GUI환경의 BootLoader등으로 개발되어져 사용되어지고 있다. 특히, 이 단계에서 주목할 점은 iPhoneTom의 XPC 부트로더이다. PC_EFI방식보다 조금 더 진보된 부트로더로서 심지어 0.42a 버전에서는 dsmos.kext(구 FakeSMC.kext)를 XPC부트로더에 탑재하여 P5W DH Deluxe 메인보드에 Ritz님이 실현한 시스템은 사운드 드라이버 이외에는 추가 드라이버가 필요 없을 정도로 완성도가 뛰어났다. 하지만, XPC 부트로더 팀원중 iPhoneTome의 폐쇄적인 개발진행에 염증을 느낀 Slice가 XPC부트로더 소스를 코드 하나하나 전부 수정하여 Clover 부트로더로 오픈소스화하여 재개발 하는 데 성공함으로써 또 다른 최고의 부트로더를 탄생시키는 비화가 있기도 하다.
4세대
스페인의 roisoft 등이 참여한 DSDT.aml 화일을 로딩하는 방식을 사용하여 Mac 시스템 구조를 PC에 반영하는 방식이며 Mac의 시스템 구조를 DSDT.aml 에 적용하여 시스템 구조를 맥과 유사하게 동작하게 해주는 기술이다. 현재 많이 사용하고 있는 방식이다. 당시 Kiko와 Ritz등의 EFI팀에서는 MSI사가 PC에서 최초로 EFI방식의 롬(펌웨어)을 체택한 모델을 시판한다는 소식에 흥분 하였지만 여러가지 제약사항(특히 펌웨어의 공간)으로 인하여 결국 실현화 시키지는 못하다가 6세대에 이르러서야 실현할 수 있었다.
5세대
기존 4세대의 DSDT.aml을 CMOS 롬바이오스에 적용하여 DSDT.aml화일이 필요없이 OS X 를 부팅할 수 있는 기술이며 일부 메인보드를 제외하고 이 방법은 아직까지는 일반적으로 이용되지 않고 있는 상황이다. 특히 cartri, roisoft등은 이 방법을 아예 cmos에 적용하여 AHCI Table 구조를 하드웨어 적으로 구현하기도 하였지만 BIOS ROM 사이즈의 제약사항으로 인하여 많은 발전은 이루어지지 않았다. 즉, DSDT.aml 화일이 필요없게 되는 기술이다. 정확하게는 Apple사의 uefi를 PC의 CMOS BIOS 에 적용한 방법이다. 안타깝게도 0.8버전까지 나온 이 프로젝트는 중단되었지만, 소수 전문가들에 의해 많이 이용되고 있는 기술이다.
6세대 해킨토시
결국 6세대에 와서야 EFI팀에서 기대하던 기술의 성과가 집약되었다.
부트로더나 DSDT.aml 등등의 구성이 필요없다.
이미 리얼맥처럼 펌웨어에 집적화하여 버렸으므로
DSDT정도는 기본적으로 집약되어지고 그럼에도 불구하고 공간적인 제약으로 인하여 이 요소들을 펌웨어에 집적화하는 고도의 기술이 요구된다.
거의 맥과 유사하다. 단점은 맥의 하드웨어와 비슷한 시스템으로 구성되어야 하기 때문에 기존 해킨처럼 하드웨어 호환성이 중요하다.
Update : Aslock, ASUS 등의 PMPatch를 요하는 저가형 일부보드도 이 기술을 사용할 수 있음이 입증되었다. http://cafe.naver.com/uefi/3577
일반 사용자는 거의 맥을 사용하고 있는 것처럼 느껴질 것이다. 기술적으로는 5세대까지의 기술이 집약되어 적용되지만 그 노하우가 거의 공개되지는 않고 소수의 전문가들에 의해 적용되어 사용되고 있다. 5세대까지의 기술이 집적이 되었으며 1세대의 기술을 바탕으로 법적으로도 문제가 없는 거의 완벽한 기술이 적용되어 사용자는 Mac OS X 를 비롯한 현존하는 대부분의 운영체제, 윈도우즈 리눅스 유닉스등을 사용할 수 있다. Maxxuss를 비롯한 Kiko, Ritz등의 EFI 프로젝트 팀의 궁극적인 목적이 실현된 기술이기도 하다. 5세대나 6세대 현재는 다른 방향으로 가고 있긴 하지만 Clover부트로더 개발진인 Slice 등이 6세대에도 적극적으로 참여하여 현재는 하이브리드 방식을 이용하는 소수 전문가들도 있다.
이런 전반적인 기술을 모르는 혹자는 6세대 기술보다 5세대 기술이 더 편하다고 말하기도 한다.
한번 밤샘해가며 부트로더를 설치해본 경험이 있다면 절대 이런말을 못할 것이다.
물론 업그레이드할 때마다 부트로더 업그레이드등을 진행해본 경험이 있다면 더더욱 그러할 것이고
항상 1세대에서 2세대로 혹은 2세대에서 3세대로 넘어갈 때 항상 있어 왔던 일들이다.
무식하면 용감하다.
맥프로 웍스테이션과 일반 PC와의 차이점은 워스테이션과 PC라는 차이점이라는 큰틀을 감안하고도 구체적으로 그러면 무엇이 차이가 날까?라고 고민하여 보았을때 단연 EFI롬 구조와 CMOS 롬의 구조적인 차이이다.
하지만 이 차이점도 CMOS기반위에 EFI칩의 보안및 기타기술을 에뮬레이터 혹은 회피하는 부트로더등의 개발로 이 차이점을 극복하게 되었다.
그 중에서 가장 많이 사용되어지고 있는 기술들과 설치방법등을 간단하게나마 다음과 같이 정리하여 본다.
I. ROM BIOS MOD
I-1. MainBoard :
ROM BIOS 내용자체 즉, 제조사및 제품명, 시리얼 넘버까지 수정하여 사용하는 방법이 있는데, 맥클론에 가깝게 만들기 위하여 메인보드 자체를 Mac Pro로 변경시키는 방법이다.
TheKing, AquaMac, roisoft 등 여러 개발자들이 이 방식을 적용하는 방법을 공개하였고, Chameleon 개발팀은 이 부분을 Bootloader방식으로 보완하여 많이 사용되고 있으며 특히, 최근에 나온 XPC/UEFI Bootloader방식을 이용하면 완벽(?)하게 해결가능하다.
* ✒MSI P45 Neo2-FR메인보드나 혹은 ✒P5Q 시리즈 메인보드는 기본적으로 수정된 Bios를 이용해야 하는 특수한 경우가 있다.
I-2. Graphic Card :
최근에는 주로 Netkas 가 PC용 HD 4870을 Mac Pro에 연동시키기 위하여 맥프로에 장착된 4870용 ROM을 PC용 4870그래픽 카드에 적용하여 맥프로에 설치하여 사용할 수 있는 방법을 공개하였는데, PC에서는 이렇게 하지 않고 Natit 드라이버 설치나 혹은 EFI-String으로 간단하게 설치할 수 있다. 이외에도 레퍼런스 보드 Rom을 이식하여 사용을 하는 방법도 있다.
2010년 2월에는 ATI HD 5750 그래픽 카드를 롬플레싱 방법을 이용하여 VESA모드르 구현하여 해킨토시에 적용하는 방법으로 이용되어지고 있으며 5750등 그래픽 드라이버가 정식으로 Apple사에 의해 공개되어져 그래픽 가속 기능까지 지원되고 있다.
I-3. 기타 PC용 SCSI카드 등을 구형 Mac 에 연동시키기 위해 오래전 사용되었던 MAC용 SCSI롬을 PC용 스카시 콘트롤러에 롬플레싱내지는 교환등으로 적용하여사용하는 사례가 있었지만 현재는 LSI 칩 콘트롤러만 사용되어지고 있으며 맥과 호환가능한 RAID 콘트롤러(HighPoint rocketraid 제품등)를 추가로 구성하여 설치하는 추세지만, 역시나 안정성면에서 어려움이 많다고 한다. 특히 레이드 구성은 한번 깨지면 재 복구가 불가능하기 때문에 주의를 요한다.
II. 부트로드
EFI 칩이 없는 PC에서 OSX를 부팅하기 위해서는 반드시 부트로드가 필요하며 EFI 방식의 드라이버를 에뮬레이션하고 나아가 그래픽 카드의 디바이스 아이디도 에뮬레이션(?)하여 준다. 부트로드는 또한 ✒Retail 설치방식에 많이 사용되어지며 해킨배포본에는 기본적으로 탑재되어 있다.
II-1. ✒Chameleon(Boot-132) : 이 방식은 근래에 Chameleon 2.0RC1이 공개되어 GUI를 지원하여 줌으로서 많은 사용자들이 이용하고 있습니다. Chameleon은 Snow 지원. Boot-132 Snow 지원 버전은 II-6 참고.
II-2. PC_EFI : Netkas가 2007년도에 rEFIt 오픈소스를 이용하여 개발한 방식으로 현재는 Snow Leopard 64 커널 로딩까지 지원이 됩니다. II-1. Chameleon방식과 혼용하여 적용하면 좀 더 좋은 환경이 됩니다. 이 방식을 세계 최초로 테스트하여 적용성공한 Ritz님의 애기로는 그때는 이 방식으로 인하여 Maxxuss 이후 최대의 진보적인 기술적인 방식이라고 흥분해 하며 Maxxuss가 1세대 해킨토시의 창시자라면 2세대는 다윈커널을 PC에 적용한 기술, 3세대는 단연 Netkas의 PC_EFI부트로더 방식을 꼽을 수 있다고 합니다.
현재는 카멜레온 부트파일을 대체하여 Snow Leopard용으로 많이 사용합니다. 설치는 맥이나 해킨 시스템이 있는 상황에서 설치할 수 있습니다.
II-3. ✒XPC 혹은 UEFI : 이 방식도 근래에 GUI를 지원하여 주는 XPC 0.45 x64 bugfix 2 가 공개되어 X64 커널까지 지원하여 줍니다. 하지만, AHCI모드 지원관련하여 문제점이 있더군요, <<< 수정. 현재는 AHCI까지 완벽하게 지원됩니다. Ritz님의 애기로는 ASUS P5W DH DELUXE 보드같은 경우, 별다른 해킨 드라이버 없이 XPC 부트로더만 이용해서 OSX를 구동할 수 있다고 합니다.
현재 상황의 Boot Loader로서는 맥에 제일 가까운 부트로드인 것 같군요.
testing: http://ul.to/irgvyz, 한때는 이 방법이 설치하기에 가장 쉬웠던 때가 있었습니다. XPC 부트로더가 설치된 USB메모리 스틱을 이용하여 부팅하고 OS X Retail DVD 를 로딩하여 설치하는 방법으로서 . Lion까지 설치가능하며 무엇보다도 Windows에서 설치가능하다는 장점이 있습니다.
II-4. ✒Boot Think : 중국에서 만들어진 또 다른 부트로더, 카멜레온이나 xpc에 비해 또다른 많은 장점을 가지고 있습니다. Snow Leopard까지 지원하여 멀티부팅시에 많이 사용되고 있습니다.
특히, MAC용 뿐만 아니라 Windows용도 있어서 설치후, .bat 화일 하나더 실행하여주는 것만 조심하면 윈도우즈에서도 Leopard와 Snow Leopard 설치가 용이합니다.
윈도우즈에 먼저 Boot Think를 설치하여 부팅하고 Retail DVD나 이미지가 담긴 usb나 하드디스크를 선택하여 설치가능.
II-5. ✒Rebel EFI : 사실 pc_efi와 bootcd를 채용하여 pc_efi에 넣어도 무방하나 따로 분리하였습니다.
Snow Leopard만 지원. 기가바이트 보드라면 XPC보다 설치가 극단적으로 편합니다. Rebel EFI CD로 부팅을 하여 Snow Retail DVD나 이미지가 담긴 하드디스크 혹은 USB를 선택하여 설치해야 합니다. Windows에서 설치가능.
II-6. ✒Snow Leopard용 Boot-132 : 현재까지는 Vanilla 커널이 지원되고 CPU가 SSE3를 지원하는 Intel시스템만 사용가능합니다. Boot-132가 설치된 CD로 부팅을 하여 Snow Retail DVD나 이미지가 담긴 USB혹은 하드디스크 파티션을 선택하여 설치합니다. Windows없이 설치가능.
III. 설치 이미지
설치 이미지는 ✒자신의 시스템을 파악하고 또한 ✒파티션은 어떻게 할당하며 설치시에 해킨 이미지를 이용할 것인지 아니면 Retail DVD를 이용한 설치를 할 것인지 고려하여야 합니다.
III-1. Retail DVD 이미지, 반드시 위 세가지 방식의 Bootloader중 하나를 따로 설치하여 주어야 합니다.
III-2. ✒Idenb 설치 이미지, 이미지 내에 위 BootLoader 포함
III-3. ✒XxX 설치 이미지, 이미지 내에 위 BootLoader 포함
III-4. ✒iATKOS 설치 이미지, 이미지 내에 위 BootLoader 포함
III-5. ✒Kalyway 설치 이미지, 이미지 내에 위 BootLoader 포함
III-6. ✒iPC 설치 이미지, 이미지 내에 위 BootLoader 포함
III-7. ✒myHack Installer Snow용 설치 스크립터. 부트로더는 pc_efi를 사용.
- 맥에서 설치스크립터를 돌려서 snow용 해킨 이미지 CD를 만들어 설치하는 방식.
* 이부분까지 적용하여 ✒하드디스크 구성만 제대로 하여 설치하여도 그럭저럭 잘 돌아갑니다.
하지만, 진정한 해킨의 기술은 다음 부터입니다.
IV. ✒Kexts. 초보이신 분들은 간단하게 ✒OSX시스템의 드라이버라고 보시면 됩니다. 보통 이 드라이버들은 Chameleon/XPC/Boot Think 등을 이용할때는 /Extra/Extensions.mkext라는 화일에 포함되어 있습니다. 물론, ✒Extensions.mkext화일이 없을 경우에는 /Extra/Extensions/ 에 자기 메인보드에 맞는 드라이버를 설치하고 난 후, ✒다음툴을 이용하여 만들어주면 /Extra/Extensions/ 폴더안에 화일이 위치하게 됩니다.
iV-1. ✒Boot Think는 /Darwin 폴더내에 위치합니다.
IV-2. XPC는 Extra_Kext 폴더에 위치합니다.
V. ✒ACPI Dump를 통한 맥시스템과의 완벽 동기화
이 사항은 사실 맥클론 최상위 기술이라고 할 수 있습니다.
Windows나 Linux를 실행하여 시스템의 ACPI관련 덤프를 받아서 맥에서 사용하는 ACPI구조로 변경하여 적용하는 기술인데, 이 기술을 구현하면 거의 맥과 유사하게 시스템을 구축할 수 있으며 TheKing, roisoft 등이 이 기술을 선도하고 있으며 서서히 일반유저들이 적용해가는 상황입니다.
ACPI 관련 주로 사용하는 아키텍처 부분은 다음과 같습니다.
V-1. SSDT
V-1. DSDT
V-3. 기타
V-4. 잡다한 기초적인 코덱덤프.
* 국내에서도 서서히 이러한 기술을 적용해 나가고 있는 추세입니다. 이 기술을 현실적으로 정용할려면 기존 맥시스템의 ahci구조에 대한 자료를 확보하여야 하는데, 역시나 이 부분이 약한 것 같고 일부분 알려진 모듈은 적용을 하는 경우가 있습니다. 지금 이 글을 읽으시는 당신이 혹시 그 전문가?? ^ ^
* 여러분들은 어떤 방식을 선호 혹은 이용하시는 지.....
위 IV까지의 영역을 적용하였다면 당신은 해킨의 진정한 초고수! ^ ^
VI. 설치가이드 : http://j.mp/dAvLHX
다음 그림은 cmos setup에서 기본적으로 세팅해주어야 할 ahci 모드입니다.
그런데 ASUS P5W DH DELUXE 메인보드는 두번째 Onboard SATA/IDE Ctrl Mode를 Basic, 즉, ide 모드로 설정해 주어야 Snow Leopard가 커널패닉없이 돌아갑니다.
Update 01-21, 2010, 10.6.2 Snow 버전부터는 ahci로 설정해도 무방
* 마지막으로 ✒기타 툴 입니다. 이런 툴들이 있으면 시스템 설치 및 드라이버 교체 등등 여러가지로 다양하게 활용할 수 있습니다.