I keep to keep track of the size of different operating systems that I come into contact with or hear about. I'm not sure why. Perhaps partially because I believe the systems we design today are too complex. And perhaps partially to act as a reminder of the difference between academia and the real world.
lines of code
Synthesis (Sun 3) 5k experimental kernel read it somewhere
Plan 9 (SG Power) 15k experimental kernel dmr@research.att.com
V (Sun 3) >15k experimental kernel measured?
Unix 32/V (VAX) 17k basic unix measured
Minix 1.5 (286) 30k basic unix measured
Tenth Edition Unix (VAX) 40k unix read it somewhere
Ninth Edition Unix (Sun 3) 80k unix read it somewhere
BSD 4.3 (VAX) 90k unix measured
BSD 4.3 Tahoe (VAX) 100k unix measured
System V R3.2 (3b2) 120k unix measured
Linux 0.99.9 (x86) 90k unix measured
Linux 1.1.62 (x86) 270k unix adam@yggdrasil.com
AIX 3.2.0 (Power) 500k unix anon.
NetBSD 1.0 (x86) 350k unix deraadt@fsa.ca
NetBSD 1.0 (all 6 archs.) 700k unix deraadt@fsa.ca
SunOS 4.0.3 (Sun 3 + Sun 4) 440k unix measured
SunOS 4.1.3 (Sun 4) 470k mp unix measured
SunOS 5.0 (Sun 4) 560k mp unix measured
SunOS 5.1 (Sun 4) 650k mp unix measured
SunOS 5.2 (Sun 4) 680k mp unix measured
IRIX 5.3 (MIPS) 570k mp unix lm@sgi.com
Umax 4.2 (NS32k) 280k mp unix measured
Mach 2.0 (VAX) 140k mp unix (minimal kernel) measured
Mach 2.0 (VAX) 400k mp unix (full kernel) measured
Mach 3.0 (x86) 100k mp distributed kernel ?
Chorus 3.2 (x86) 60k mp distributed kernel measured
Chorus 3.2 + SVR3 (x86) 200k mp distributed kernel and unix measured
lines of code
Minix 1.5 (x86) 170k measured
Unix 32/V (VAX) 180k measured
BSD 4.3 (VAX) 640k measured
System V 3.2 (3b2) 960k measured
Mach 2.0 (VAX) 1000k measured
BSD 4.3 Tahoe (VAX) 1000k measured
Umax 4.2 (NS32k) 1800k measured
SunOS 4.03 (Sun 3, Sun 4) 2400k measured
NT (x86) 4000k from Unigram