
NetBSD Code Study - jayp1418
http://silas.net.br/codereading/netbsd-code.html
======
silasdb
Author here. Thanks for posting this. This is something I wanted to continue.
The plan is still discussing NetBSD source code, as much as I can. Reading
NetBSD code is a great way to learn operating systems! :-)

~~~
manuw
I like the idea.

Few years ago there was an similar thing but with OpenBSD code. There is a IRC
channel on Freenode who a group of people go through OpenBSD code like "doas"
and stuff.

I follow your future articles :)

~~~
gnanesh
Can you share the link for OpenBSD?

~~~
mulander
Hi, I'm the guy who did the OpenBSD code reads.

The daily started in June 2017 we kept up doing it daily for 42 days straight.
In total there were 47 code reads.

[http://blog.tintagel.pl/2017/06/09/openbsd-
daily.html](http://blog.tintagel.pl/2017/06/09/openbsd-daily.html)

[http://blog.tintagel.pl/2017/09/10/openbsd-daily-
recap.html](http://blog.tintagel.pl/2017/09/10/openbsd-daily-recap.html)

~~~
gnanesh
Thank you.

------
pwdisswordfish2
I always found it noteworthy in that the designers of Microsoft Windows did
not consider co-existance with other OS on the same computer, i.e., "dual-
booting". When I install NetBSD I never have to worry about it clobbering any
code needed by other OS to boot. Not sure about today, but years ago Windows
used to require being installed in the first bootable partition. If some other
OS code occupied that position it was clobbered. On the other hand, the
designers of NetBSD seem to have considered the possible co-existence with
other OS on the same computer. To me, that is great design. NetBSD has this
author's favorite bootloaders and I consider their kernels more flexible to
boot than Linux kernels. I do not use grub. NetBSD has long supported the 1995
multiboot specification. Years ago, Linux did not. Perhaps that has changed.
It always seemed like there were only a limited number of bootloaders that
could boot Linux.

~~~
pjmlp
Because historically hardware was tied to the OS, UNIX is the only OS that
took the route of making the underlying hardware meaningless.

It is also the main reason why NeXT and Sun NeWS are the only UNIX forks that
ever provided a good desktop experience.

~~~
LeoPanthera
Are we not including macOS in this? Still the best UNIX desktop experience,
IMHO.

~~~
bch
I think MacOS == NeXT for the purpose of this discussion.

~~~
pjmlp
Indeed, that was my point.

------
yjftsjthsd-h
Oh, this is very nice:) One question: Why does this page open with a link to
FreeBSD docs? (Just general information on x86 boot process? Is this code
similar/shared between the BSD family members?)

~~~
silasdb
Yes, this is just general information on x86 boot process, but it shares some
things with NetBSD boot process, specially how the boot is divided in phases.

When I first started this doc, it was just personal writing, because of that
some links are scattered and there are TODO entries laying around. I'll fix
that one day :-)

------
GeertVL
Well done. It gives me inspiration to go through other codebases (Rust
compiler, Go compiler, .NET Roslyn, ...)

