Mentre soluzioni come AnduinOS 2.0 si concentrano sull'integrazione di app Windows e Android, il progetto open source Kakehashi sposta l'attenzione verso l'ecosistema Apple. Sviluppato in Rust da Vladislav Kalinkin, questo layer sperimentale permette l'esecuzione di binari macOS (formato Mach-O) direttamente su hardware Linux ARM64, eliminando la necessità di virtualizzazione o emulazione completa del sistema operativo.
Traduzione delle syscall in userspace
Kakehashi non agisce come una macchina virtuale, ma opera interamente in userspace. Il software carica il binario macOS in memoria e intercetta le chiamate di sistema (syscall) tipiche del kernel Darwin, convertendole al volo nei loro equivalenti Linux. Questo approccio evita l'uso di moduli kernel o privilegi di root, rendendo il processo estremamente leggero rispetto a soluzioni tradizionali. Attualmente, il progetto supporta strumenti da riga di comando come curl e 7-Zip, sebbene le prestazioni siano circa un quinto rispetto all'esecuzione nativa.
Abbattere i costi della Continuous Integration
L'obiettivo primario di Kakehashi non è sostituire l'esperienza desktop di macOS, ma risolvere un problema economico per i DevOps. Molti progetti richiedono nodi CI su hardware Mac, che risultano significativamente più costosi dei server Linux. Secondo l'autore, l'utilizzo di un layer di compatibilità per i tool CLI potrebbe ridurre i costi della CI fino a 10 volte, permettendo di eseguire test di base su istanze Linux ARM64 senza dover noleggiare infrastrutture Apple dedicate.
Limiti tecnici e compatibilità
Il progetto è strettamente limitato ai binari ARM64 (aarch64) e non supporta l'architettura x86. Inoltre, Kakehashi non implementa i framework grafici di Apple come Cocoa, SwiftUI o l'API Metal. Si tratta quindi di un ambiente destinato esclusivamente a programmi CLI che non dipendono da librerie proprietarie complesse. La sfida principale resta la manutenzione della coerenza tra le diverse versioni di Darwin e Linux, per evitare che un programma appaia funzionante senza però produrre risultati identici a quelli ottenuti su macOS.
Prospettive per l'ecosistema ARM
L'iniziativa si inserisce in un trend di maggiore convergenza tra hardware Apple Silicon e Linux, parallelamente agli sforzi del team Asahi Linux per migliorare il supporto ai chip M-series. Mentre Kakehashi lavora sulla compatibilità software in userspace, altri sviluppatori continuano a ottimizzare i driver kernel per l'hardware Apple, come dimostrato dai recenti fix per il driver NVMe necessari per supportare i chip M4.

Ancora nessun commento. Puoi essere il primo!