Vou começar no núcleo e trabalhar para sair:
- O Mach é um microkernel, destinado a fornecer apenas recursos básicos de comunicação entre processos.
- O XNU é um kernel híbrido, consistindo do microkernel Mach com componentes de um kernel unix BSD mais tradicional ("monolítico"). Também inclui a capacidade de carregar extensões de kernel em tempo de execução (para adicionar recursos, drivers de dispositivos, etc.).
- Darwin é um sistema operacional Unix que consiste no kernel XNU, juntamente com uma variedade de utilitários de código aberto, bibliotecas, etc. Alguns dos utilitários em Darwin vêm de outros tipos de BSD Unix, alguns do projeto GNU, alguns foram desenvolvidos pela Apple, etc.
- O OS X é o Darwin, além de muitos componentes proprietários, mais notavelmente suas APIs de interface gráfica.