경고 : 최신판이 아닙니다. 이 문서의 오래된 판을 편집하고 있습니다. 이것을 저장하면, 이 판 이후로 바뀐 모든 편집이 사라집니다. 로그인하고 있지 않습니다. 편집하면 당신의 IP 주소가 공개적으로 기록됩니다. 계정을 만들고 로그인하면 편집 시 사용자 이름만 보이며, 위키 이용에 여러 가지 편의가 주어집니다.스팸 방지 검사입니다. 이것을 입력하지 마세요!'''해킨토시'''(Hackintosh)란 [[매킨토시|맥]]이 아닌 [[PC]]에 맥 운영체제를 설치하는 것, 또는 그러한 컴퓨터를 의미한다. 과거에는 OSx86 (프로젝트)라고도 불렸지만 이는 점차 사어화되면서 해킨토시라는 용어로 굳어진다. 본래 해킨토시는 System Software를 구동하는 라사 2/10, 즉 매킨토시 XL를 뜻했는데 현재 이러한 뜻으로 해당 단어를 사용하는 사례는 없다고 봐도 무방하다. == 역사 == 초기에는 OS 자체를 개조하여 리눅스 배포판처럼 일반 PC에서 돌아갈 수 있게 하였으며, DTK가 발표된 2005년 당시에는 [https://web.archive.org/web/20060105171121/http://maxxuss.hotbox.ru:80/patch.html TPM과 SSE3 제한을 우회]하는 방식을 사용했다. 이후 Boot-132 (DTK의 부트로더 중 하나)를 기반으로 발전한 부트로더들이 여럿 나오며 운영체제를 개조할 필요가 줄어들었고, ACPI 테이블을 수정하고 주입하는 방안을 [https://github.com/Piker-Alpha Pike R. Alpha] 등이 고안하여 지금의 해킨토시 환경을 만들게 된다. 현재는 Clover와 OpenCore라는 부트로더가 사용된다. 이들 또한 DSDT/SSDT와 드라이버 주입, 기타 맥 OS를 위한 설정들을 제공한다는 큰 틀은 변하지 않았다. == 설치 == 부트로더와 드라이버, 설정 파일 등이 포함된 EFI를 ESP에 넣고 해당 장치로 부팅한 후 OS 설치 과정을 진행한다. BIOS 환경이라면 MBR에 관련 정보를 작성해야 하며, 이때 OpenCore라면 LegacyBoot 유틸리티를 사용할 수 있다. 범용적으로 설계되어 특별한 작업 없이 대부분의 x86 PC에서 사용할 수 있는 Windows 등과 다르게, 각 PC에 맞는 EFI를 구성해야 한다. EFI를 만드는 방법은 아래에 설명되어 있다. *[https://dortania.github.io/OpenCore-Install-Guide 오픈코어 설치 가이드] *[https://hackintosh.gitbook.io/r-hackintosh-vanilla-desktop-guide 클로버 설치 가이드] 특정 PC용으로 [https://github.com/daliansky/Hackintosh 이미 만들어진 EFI]가 있다면 복잡한 구성 과정 없이 손쉽게 설치 가능하며, 특히 가상 머신을 사용하면 호스트 PC에 설정을 맞춰줄 필요 없이 비교적 쉽게 설치할 수 있다. 물론 원활한 사용을 위해서는 GPU 패스스루 등이 활성화되어 있어야 한다. == 장치 호환성 == === CPU === 일단 SSE 4.1 명령어까지를 지원한다면 이론적으로 모든 x86-64 CPU를 사용할 수 있다. 그러나 지원하지 않는 CPU는 커널과 잘 맞지 않는 부분이 있기 때문에 패닉을 일으킨다. AMD CPU라면 커널 패치와 사제 [https://github.com/trulyspinach/SMCAMDProcessor 전원 관리 kext]가 있어 비교적 원할하게 사용이 가능하지만, 맥의 특성 상 인텔 CPU만을 고려한 앱의 불안정성은 불가피할 수 밖에 없다. 또한 커널 단에서 64스레드까지만 지원하므로 그 이상의 CPU는 사용할 수 없다. [https://raw.githubusercontent.com/apple/darwin-xnu/main/osfmk/i386/cpuid.h XNU 커널에서 지원하는 CPUID 목록] === GPU === 흔히 QE/CI라고 불리는 하드웨어 가속을 사용하려면 해당 GPU가 OS에서 지원되어야 하며 프레임버퍼(화면 출력)의 역할을 할 수 있어야 한다. 지원하지 않는 장치 ID를 가지고 있다면 하드웨어 가속이 불가능하거나 어려울 수 있다. 특히 AMD 카드라면 지원이 될지라도 알 수 없는 문제로 사용이 불가능한 경우가 많다. {{ㅊ|하지만 다른 선택지가 없다.}} {|class="wikitable" |- ! 아키텍처 ! 모델명 ! 지원 여부 |- | colspan="3" | '''Intel''' |- | 아이비 브릿지 | HD 4000 | * <ref name="BgSr">Big Sur까지 사용 가능</ref> |- | 하스웰 | HD 4x00 / Iris 5x00 | * <ref name="Mntry">Monterey까지 사용 가능</ref> |- | 브로드웰 | HD 5x00 / Iris 6x00 | * <ref name="Mntry" /> |- | 스카이레이크 | HD 5xx / Iris 5x0 | * <ref name="Mntry" /> |- | 카비 레이크 | (U)HD 6xx / Iris 6x0 | 지원 |- | 커피 레이크 | UHD 6xx / Iris 6x5 | 지원 |- | 아이스 레이크 | - | 지원 |} {|class="wikitable" |- ! 아키텍처 ! 지원 여부 |- | colspan="3" | '''AMD''' |- | GCN 1 | * <ref name="Mntry" /> |- | GCN 2 | * <ref name="Mntry" /> |- | GCN 3 | * <ref name="Mntry" /> |- | GCN 4 (Polaris) | 지원 |- | GCN 5 (Vega) | 지원 |- | RDNA 1 (Navi 1x) | 지원 |- | RDNA 2 (Navi 21 / 23) | 지원 |- | colspan="2" | '''NVIDIA''' |- | Kepler | * <ref name="BgSr" /> |- | Maxwell | * <ref name="OCLP">웹 드라이버를 통해 High Sierra까지 지원, 이후 OS는 [https://github.com/dortania/OpenCore-Legacy-Patcher/pull/993 OCLP]의 패치 사용</ref> |- | Pascal | * <ref name="OCLP" /> |} === 무선 통신 === WLAN은 기본적으로 브로드컴의 BCM94350과 94360(2) 칩셋을 지원하지만 별도의 kext를 통해 인텔과 일부 리얼텍/라링크 칩셋도 사용 가능하다. 단 연속성 기능에 제약이 있다. 맥의 AirPort 카드를 사용하면 모든 연속성 기능을 이용할 수 있으나, 컨버터가 필요하며 블루투스를 위한 USB 연결을 따로 해야 한다. 현재 사용 가능한 최신 제품은 블루투스 4.2를 지원하는 BCM943602CDP이며 그 이상의 제품은 온보드 방식이라 사용이 불가능하다. 블루투스는 대부분 USB 기반이라 그냥 인식되지만 제대로 작동하지 않는다면 펌웨어를 업로드해주는 별도의 kext를 사용해야 한다. Intel과 Broadcom, Atheros 등이 지원된다. CSR은 지원되는 기기 ID라면 별도의 작업 없이 사용할 수 있다. WWAN은 경우에 따라 다르며 kext 수정이 필요할 수도 있다. === 저장 장치 === AHCI라면 문제가 없지만 NVMe 인터페이스는 시스템 kext의 호환성 문제로 잘 작동하지 않는 경우가 있다. 대체로 [https://github.com/acidanthera/NVMeFix NVMeFix]<ref>[https://raw.githubusercontent.com/acidanthera/NVMeFix/master/NVMeFix/nvme_quirks.cpp 해당 모델 리스트]</ref>와 OpenCore의 SetApfsTrimTimeout로 해결이 가능하다. 부팅조차 되지 않는다면 펌웨어 업데이트를 하거나 HackrNVMeFamily 등의 개조된 kext를 사용할 수 있다. === 기타 === 맥 또한 ACPI를 사용하므로 [https://uefi.org/specifications ACPI 스펙]을 따르고 macOS용 드라이버가 있는 대부분의 장치는 해킨토시에서 작동하게 만들 수 있다. == 팁 == *커널 패닉 해석: 우선 패닉의 원인을 알기 위해서는 Verbose 모드(-v)로 부팅해야 한다. 이는 XNU 커널의 부팅 과정을 글로 보여준다. **패닉이 발생하기 전 대부분의 경우에는 이와 관련된 문장이 panic 위에 출력된다. **패닉이 발생하면 "panic"으로 시작하는 문장, 그리고 메모리 주소와 Symbol을 출력한다. 이는 어떠한 코드에서 어떠한 예외가 발생했는지 드러낸다. **그 밑에는 "Kernel Extensions in Backtrace: ~" 문장이 있는데, 이는 패닉을 유발한 kext라고 보면 된다. == 장점 == [[가성비]]가 좋다. 맥에서만 제공되는 Xcode 등의 개발 앱이나, 파컷/로직 등의 편집 앱을 사용하기 위한 고사양 시스템을 합리적인 가격에 구성할 수 있다. == 단점 == 해킨토시는 애플의 소프트웨어 사용권 계약(EULA) 위반이다. <ref>[https://www.apple.com/kr/legal/sla/ 소프트웨어 사용권 계약] "본 사용권에 명시된 사용권 부여는 귀하가 Apple 상표가 붙지 않은 타사 컴퓨터에서 Apple 소프트웨어를 설치, 사용 또는 구동하거나, 귀하가 타인에게 이를 가능케 하는 것을 허용하지 않으며, 귀하도 이에 동의합니다."</ref> 그렇지만 개인이 비영리적 목적으로 이용하는 경우라면 [[불법]]은 아니다. 그저 OS에 대한 애플의 지원을 받는 것이 곤란할 뿐이다. 국내에서는 불안정하다는 편견이 있는데, 사실 맞지 않는 드라이버와 트윅을 사용하면 어느 OS든 불안정할 수밖에 없다. 엄밀히 말하면 불안정한 것이 아니라 유지보수가 어려운 것이다. 장치를 드라이버에 맞추는 것이 아니라 드라이버를 장치에 맞추는 것이기 때문이다. 국내 해킨토시 커뮤니티의 폐쇄적인 운영으로 인해 최신 정보 갱신이 어려운 것도 해당 편견을 강화시키는 데 한몫한다. == 외부 링크 == *해외 **[http://www.tonymacx86.com/ 토니맥] 개인 블로그로 시작한 커뮤니티 사이트 **[http://www.insanelymac.com/ InsanelyMac] 위 토니맥과 사이가 좋지 않다. **[https://applelife.ru/ AppleLife] 클로버 및 오픈코어 부트로더 개발자들의 근거지 *국내 **[https://cafe.naver.com/uefi 해킨토시 카페] {{각주}} [[분류:컴퓨터]] [[분류:애플]] 요약: 리브레 위키에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-동일조건변경허락 3.0 라이선스로 배포됩니다(자세한 내용에 대해서는 리브레 위키:저작권 문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요. 글이 직접 작성되었거나 호환되는 라이선스인지 확인해주세요. 리그베다 위키, 나무위키, 오리위키, 구스위키, 디시위키 및 CCL 미적용 사이트 등에서 글을 가져오실 때는 본인이 문서의 유일한 기여자여야 하고, 만약 본인이 문서의 유일한 기여자라는 증거가 없다면 그 문서는 불시에 삭제될 수 있습니다. 취소 편집 도움말 (새 창에서 열림) | () [] [[]] {{}} {{{}}} · <!-- --> · [[분류:]] · [[파일:]] · [[미디어:]] · #넘겨주기 [[]] · {{ㅊ|}} · <onlyinclude></onlyinclude> · <includeonly></includeonly> · <noinclude></noinclude> · <br /> · <ref></ref> · {{각주}} · {|class="wikitable" · |- · rowspan=""| · colspan=""| · |} {{lang|}} · {{llang||}} · {{인용문|}} · {{인용문2|}} · {{유튜브|}} · {{다음팟|}} · {{니코|}} · {{토막글}} {{삭제|}} · {{특정판삭제|}}(이유를 적지 않을 경우 기각될 가능성이 높습니다. 반드시 이유를 적어주세요.) {{#expr:}} · {{#if:}} · {{#ifeq:}} · {{#iferror:}} · {{#ifexist:}} · {{#switch:}} · {{#time:}} · {{#timel:}} · {{#titleparts:}} __NOTOC__ · __FORCETOC__ · __TOC__ · {{PAGENAME}} · {{SITENAME}} · {{localurl:}} · {{fullurl:}} · {{ns:}} –(대시) ‘’(작은따옴표) “”(큰따옴표) ·(가운뎃점) …(말줄임표) ‽(물음느낌표) 〈〉(홑화살괄호) 《》(겹화살괄호) ± − × ÷ ≈ ≠ ∓ ≤ ≥ ∞ ¬ ¹ ² ³ ⁿ ¼ ½ ¾ § € £ ₩ ¥ ¢ † ‡ • ← → ↔ ‰ °C µ(마이크로) Å °(도) ′(분) ″(초) Α α Β β Γ γ Δ δ Ε ε Ζ ζ Η η Θ θ Ι ι Κ κ Λ λ Μ μ(뮤) Ν ν Ξ ξ Ο ο Π π Ρ ρ Σ σ ς Τ τ Υ υ Φ φ Χ χ Ψ ψ Ω ω · Ά ά Έ έ Ή ή Ί ί Ό ό Ύ ύ Ώ ώ · Ϊ ϊ Ϋ ϋ · ΐ ΰ Æ æ Đ(D with stroke) đ Ð(eth) ð ı Ł ł Ø ø Œ œ ß Þ þ · Á á Ć ć É é Í í Ĺ ĺ Ḿ ḿ Ń ń Ó ó Ŕ ŕ Ś ś Ú ú Ý ý Ź ź · À à È è Ì ì Ǹ ǹ Ò ò Ù ù · İ Ż ż ·  â Ĉ ĉ Ê ê Ĝ ĝ Ĥ ĥ Î î Ĵ ĵ Ô ô Ŝ ŝ Û û · Ä ä Ë ë Ï ï Ö ö Ü ü Ÿ ÿ · ǘ ǜ ǚ ǖ · caron/háček: Ǎ ǎ Č č Ď ď Ě ě Ǐ ǐ Ľ ľ Ň ň Ǒ ǒ Ř ř Š š Ť ť Ǔ ǔ Ž ž · breve: Ă ă Ğ ğ Ŏ ŏ Ŭ ŭ · Ā ā Ē ē Ī ī Ō ō Ū ū · à ã Ñ ñ Õ õ · Å å Ů ů · Ą ą Ę ę · Ç ç Ş ş Ţ ţ · Ő ő Ű ű · Ș ș Ț ț 이 문서에서 사용한 틀: 틀:Ref (원본 보기) (준보호됨)틀:ㅈ (편집) 틀:각주 (원본 보기) (준보호됨)