The elevator pitch lacks numbers. Here are some numbers. The first running Keykos kernel, including swapping and persistence, was just over 64KB of code. We knew there were missing features and avoided the temptation of shrinking it to the magic 64K. The mature IBM 370 kernel was nearly 128KB of assembler code. When we began porting to other architectures while maintaining fair compatibility, and switching to the language C, the kernel code grew to about 256KB. It has not grow much more.

The last time I summed the size of reliance sets for a few simple applications, which includes code defining objects not in the kernel, I came up with about another factor of two. The claim is thus that ½ MB of machine code serves as an estimate of a typical reliance set.