Cos’è Darwin e come supporta Mac OS X?

Risposta pungente: Darwin è un fustercluck completo di Mach e POSIX e BSD e NEXTSTEP e Dio sa cos'altro, tutto inchiodato, incollato, spillato e legato insieme in questo strano mostro di Frankenstein che tuttavia in qualche modo riesce ad avviarsi.

Risposta seria:

Darwin è un sistema operativo che costituisce lo strato base di macOS. Se lo vedeste, non pensereste a macOS: è solo il kernel, la linea di comando e altre cose, senza interfaccia grafica e senza la possibilità di eseguire applicazioni Mac.

macOS è Darwin con un sacco di roba stratificata sopra: la GUI, ovviamente, e il Finder, ma anche i framework e le API Carbon e Cocoa, i Core Services (che includono circa un zilione di cose che vanno dai Core Data al suono e al MIDI alle utility per le immagini disco alla gestione della posizione al networking al Bluetooth al multimedia a... potrei continuare tutto il giorno, ma avete capito il punto), il framework e le API di accelerazione hardware della grafica Metal, AppKit, le API vettoriali Accelerate, e molto altro oltre a questo.

Quindi potete pensare a Darwin come al livello più basso del sistema operativo - il telaio, se volete.

Se questo è macOS:

main-qimg-66cb3118cdb72720d7229fd9556751b9

Quindi questo è Darwin:

main-qimg-9237ea197ffb6c57a4191b99fda7e23d