[FAQ] Tutto quello che c'è da sapere

matem6

Utente Èlite
4,222
1,008
CPU
AMD Ryzen 7 1700
Scheda Madre
Gigabyte AX370-Gaming 5
HDD
SSD Crucial M500 240GB + Seagate Barracuda 2TB + Seagate Barracuda LP 500GB + 2x160GB 2.5"
RAM
G.Skill TridentZ (2x8GB) 3600MHz CL16
GPU
GTX 1080 Gigabyte G1 Gaming
Audio
Realtek
PSU
XFX Pro 750W
Case
Cooler Master Storm Stryker
OS
Windows 10 Pro x64 UEFI
In questo thread, vi spiegherò tutto quello che c'è da sapere per creare il proprio hackintosh, e sopratutto saranno spiegati molti delle terminologie usate

Cominciamo dalla base, questi sono i sistemi operativi compatibili con il progetto OSX86, in ordine di uscita:
Mac OS X Tiger 10.4
Mac OS X Leopard 10.5
Mac OS X Snow Leopard 10.6
Mac OS X Lion 10.7
Mac OS X Mountain Lion 10.8*
Mac OS X Mavericks 10.9*

*Mountain Lion è il primo ad introdurre il supporto nativo per Ivy Bridge
*Mavericks è l'unico che supporta haswell nativamente

Da Snow Leopard è stato introdotto il supporto a 64 bit per le applicazioni, tramite apposite flag al boot è possibile selezionare la modalita di avvio a 32 o 64 bit.

KEXT

Passiamo a qualcosa di più tecnico, i KEXT, questi corrispondo ai driver su Windows, sono molto più difficili da trovare in quanto molte componenti non sono ufficialmente supportate, in questi casi le possibilita sono due:
1) Una cummunity/coder sviluppa partendo da driver linux il kext per aggiungere il supporto della periferica
2) Viene introdotta sul mercato una scheda di espansione per mac pro che ha lo stesso chipset. Un esempio molto recente è riscontrabile nei controller sata 3, inizialmente non supportati, LaCie ha introdotto una scheda di espansione per Mac Pro con lo stesso controller, e grazie a qualche piccola modifica è stato possibile utilizzare i driver anche sulle schede madri con controller integrato

I KEXT che sono forniti con il sistema operativo si trovano in /System/Library/Extensions altri KEXT invece aggiuntivi per il funzionamento di un hackintosh si trovano in /Extra/Extensions

Installare KEXT non compatibili, oppure KEXT doppi ovvero con la stessa funzione può portare all'instabilità del sistema e al Kernel Panic*

*Equivalente di BSOD in Windows

BOOTLOADER

Esistono vari Bootloader per Mac OS X, i bootloader supportano tutti i sistemi operativi inclusi Windows e Linux.
I piu conosciuti sono:
- Chamaleon: il primo bootloader compatibile con Mac OS X da cui derivano tutti gli altri.
- Chimera: fork di chameleon con varie implementazioni per il supporto hardware.
- Enoch: fork di chameleon con varie implementazioni per il riconoscimento nativo di molte schede video.
- Clover EFI: primo bootloader ad inserire il supporto alla modalita UEFI per le nuove schede madri.

Il bootloader oltre a permettere l'avvio di altri sistemi operativi si occupa di precaricare i kext importanti nella cartella /Extra/Extensions così da emulare un vero Mac
Il bootloader possiede anche un file di configurazione rintracciabile nella cartella /Extra con due nomi a seconda della versione del bootloader "org.chameleon.Boot.plist" o "com.apple.boot.plist".
Di seguito un esempio:

Codice:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>EthernetBuiltIn</key>
    <string>Yes</string>
    <key>GenerateCStates</key>
    <string>Yes</string>
    <key>GeneratePStates</key>
    <string>Yes</string>
    <key>GraphicsEnabler</key>
    <string>Yes</string>
    <key>Kernel</key>
    <string>mach_kernel</string>
    <key>Kernel Flags</key>
    <string>darkwake=0 npci=0x3000</string>
    <key>Legacy Logo</key>
    <string>Yes</string>
    <key>Timeout</key>
    <string>2</string>
    <key>UseKernelCache</key>
    <string>Yes</string>
</dict>
Per ulteriori approfondimenti riguardo le flag, vi riporto qui: Org.chameleon.Boot.plist - tonymacx86 Wiki.

DSDT

Il "Differentiated System Description Table" è la tabella principale della parte ACPI del BIOS.
Uno dei maggiori problemi di OS X è l'avere un'implementazione dell'ACPI incompleta e questo può portare ad incompatibilità hardware, la modifica del DSDT può incrementare la compatibilità e/o il supporto di alcuni dispositivi da parte di Mac OS X. Purtroppo patchare un DSDT non è un'operazione facile e varie per ogni bios e scheda madre, vi riporto ad una guida per approfondire l'argomento: How to make your own DSDT with DSDT Editor.

AMD

I Processori AMD non sono supportati nativamente dal Kernel per questo non è possibile installare Mac OS X senza prima modificarlo, esistono varie distribuzioni che introducono il supporto per i processori AMD, è possibile anche applicare la modifica al kernel autonomamente seguendo le guide sulla rete, il mio consiglio è di lasciare stare, anche con un kernel modificato, i problemi e le incompatibilità a cui si va incontro sono sempre tante rispetto ad hardware Intel.


 

lexoten

Utente Attivo
153
13
CPU
Intel® Core™ i3-3220-
Scheda Madre
Asus P8Z77-M
HDD
vari
RAM
Corsair 8GB DDR3 1600Mhz
OS
vari
Mi pare inopportuno linkare/sponsorizzare per gli approfondimenti a forum e/o siti specialistici che rappresentano solo parzialmente la comunità Hackintosh:sisi:
 

matem6

Utente Èlite
4,222
1,008
CPU
AMD Ryzen 7 1700
Scheda Madre
Gigabyte AX370-Gaming 5
HDD
SSD Crucial M500 240GB + Seagate Barracuda 2TB + Seagate Barracuda LP 500GB + 2x160GB 2.5"
RAM
G.Skill TridentZ (2x8GB) 3600MHz CL16
GPU
GTX 1080 Gigabyte G1 Gaming
Audio
Realtek
PSU
XFX Pro 750W
Case
Cooler Master Storm Stryker
OS
Windows 10 Pro x64 UEFI
Mi pare inopportuno linkare/sponsorizzare per gli approfondimenti a forum e/o siti specialistici che rappresentano solo parzialmente la comunità Hackintosh:sisi:
e perchè mai? sono approfondimenti, potresti completare tu le parti di approfondimento in un apposito thread cosi poi linko quello
 

lexoten

Utente Attivo
153
13
CPU
Intel® Core™ i3-3220-
Scheda Madre
Asus P8Z77-M
HDD
vari
RAM
Corsair 8GB DDR3 1600Mhz
OS
vari
e perchè mai? sono approfondimenti, potresti completare tu le parti di approfondimento in un apposito thread cosi poi linko quello


Quello che non ha mai fatto funzionare questa sezione sono i continui link a forum esterni, sicuramente più efficienti e specializzati, allora io mi domando che senso ha stare qui se ho tutto quello che cerco altrove?
Quindi o uno le cose le sa e le dice o evita il link salvo casi eccezionali.
Questo è il mio punto di vista, non sono io stabilire le regole.


Ciaooo!!:ciaociao:
 

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!