4 ms·
> It's extremely fast and reliable because of this simplicity, and because Linus knows how filesystems and kernel caches work. I would add an additional reason
by TorKlingberg 11y ago
> It's extremely fast and reliable because of this simplicity, and because Linus knows how filesystems and kernel caches work.
I would add an additional reason that may be unpopular here: It is written in C. A version control system doesn't need to be in C, and indeed Mercurial is written in Python, but C makes it faster.
- randcraw 11y agoC also makes Linux uncomplicated in ways that hackers love. Because the language is simple and unsexy, the developer's focus is only on what you're doing. You don't have to learn someone else's model in order to add code -- a bunch of proprietary legacy data structures, conventions, and methods. You contribute directly to the koan of Unix in its native tongue, with minimimal mental impedence.
- mbrock 11y agoAnd with Git, for example, you know that the project you're contributing to won't be dependent on some strange runtime, so all kinds of people and projects will find it easier to trust it as a core part of their infrastructure... so long as the project can maintain a reputation of secure coding practices...
- ktRolster 11y agoCan you imagine if the kernel had been written in C++? With each iteration, C++ looks like a completely different language. If Linux had gone through those changes since the early 90s, it would look like a baroque conglomeration, like the strange twin-spires of chartres cathedral.
- xorcist 11y agoThe choice of language is uniquely important. Not so much that C "makes it faster", but it is so much more approachable. I believe that one reason that Linus started over with git instead of extending monotone was that the latter is C++.