Another example:

Google Fuchsia's kernel is 199,570 lines of C, C++, and assembly, not including a suitable C/C++ toolchain (it uses GNU extensions, so we'll assume GCC is necessary - about a million lines of code). It supports two architectures, x86 and arm64. It takes about 22 minutes to build on server-grade hardware. It also doesn't work and is far from complete.

The entire self-hosting plan 9 system, including its compiler and entire userspace, desktop windowing system, text editors, POSIX compatibility layer, games, media players, and so on - is 268,001 lines of code. It supports seven architectures and takes less than 10 minutes to build the entire operating system on a raspberry pi.

Also worth pointing out that Fuchsia's kernel is an, ehem, "microkernel", in only the strictest sense of the word... so that number doesn't even include any drivers

The Minix microkernel (which I can say with a straight face) is ~18,000 lines of C, supports two architectures, and is deployed in production spying on your computer from ring -2

Follow

@sir
Google created Fuchsia instead of modifying Minix because they are C++ fans?

Sign in to participate in the conversation
Mastodon

mstdn.io is one of the instance in the fediverse. We're an open-minded generalistic instance. Learn more here!