title: How come a 32 bit kernel can run a 64 bit binary?
body: <p>On my OS X box, the kernel is a 32 bit binary and yet it can run a 64 bit binary.
  How does this work?</p>
  
  <pre>
  cristi:~ diciu$ file ./a.out
  ./a.out: Mach-O 64-bit executable x86_64
  cristi:~ diciu$ file /mach_kernel
  /mach_kernel: Mach-O universal binary with 2 architectures
  /mach_kernel (for architecture i386):   Mach-O executable i386
  /mach_kernel (for architecture ppc):    Mach-O executable ppc
  cristi:~ diciu$ ./a.out
  cristi:~ diciu$ echo $?
  1
  </pre>