Hacker News new | ask | show | jobs
by vcanales 2623 days ago
> You can spend a year (seriously) just drilling down the source tree, more than a half million folders containing the code for every component making up the OS workstation and server products and all their editions, tools, and associated developement kits, and see what’s in there, read the file names and try to figure out what does what.

This makes me really want to know how they manage to document everything to make such a huge project easy to work with.

1 comments

Usually when you're working on the scale of operating systems, you have people focusing on particular areas e.g. kernel teams, networking teams, graphics teams etc and you also have their corresponding test teams. So no one person usually even has understanding of the entire source code.
Not even Dave Cutler? I thought he single-handedly wrote the first version of the kernel. At least that is the legend:

https://en.wikipedia.org/wiki/Dave_Cutler

Lots of great stories about him. One is recounted here:

https://capitalandgrowth.org/articles/930/xbox-co-founder-my...

The kernel is a pretty small part of the operating system. Development of Windows NT started in 1989[1], when RAM sizes of PCs were measured in MB, not GB, so there wasn't room for a lot of bloat. (NT 3.1 could run on a machine with 12 MB of RAM.[2]) Also, it wasn't the first kernel Cutler wrote. While Cutler is undoubtedly a brilliant programmer, I doubt he could keep the details of all the other parts of the system (graphics, etc.) in his head at once.

Other well known kernels were also written by very small teams. The first Unix kernel was written by two people and the first Linux kernel was written by one person.

[1] https://en.wikipedia.org/wiki/Windows_NT#Development

[2] https://en.wikipedia.org/wiki/Windows_NT#Hardware_requiremen...

> so there wasn't room for a lot of bloat

That's not how NT was seen at the time. It was quite bloated relative to other PC OSs. Of course modern OS features required a bit more overhead than the crazy world of windows 3.0.

I guess I should have said "a lot of bloat by today's standards"...

My first experience with NT was NT 3.51 on a 32 MB machine. If I remember well, it didn't feel much slower than Windows 3.1. But finally having a PC operating system that didn't crash all the time really made development much more pleasant and productive.

32MB was a lot of memory back then. Typical machines at the time had 8. 16 was extravagant.
Cutler certainly did not write the whole first kernel alone, although the initial size of the NT team was quite small, at least at the very beginning. The story of the development (until the at least the first release, IIRC) is in the book "Show Stopper!"; quite interesting.
Show Stopper is a wonderful book if you're interested in the historical development of large systems. It's second only to The Soul of a New Machine. I highly recommend it.

https://www.amazon.com/dp/1497638836

Two of my very favorites!