Flames ahoy
Matthew Dillon
dillon at apollo.backplane.com
Thu Apr 8 18:43:54 PDT 2004
:I really don't want this to turn bad, so please keep
:emotions out of it. I am just curious as to why you(Matt)
:chose to base DragonFly on FreeBSD 4.x and not NetBSD? Those
:NetBSD guys seem to be keeping things sane..
I'm most familiar with the FreeBSD kernel, having used it from the
mid 90's on and worked on it throughout. FreeBSD-4.x was best positioned
for me to start DragonFly with... it had basic SMP features but did not
have the mess (in my view) that FreeBSD-5 has become, and we were
able to begin with the advantage of knowing all the things that were
done wrong between FreeBSD-4 and 5 and thus were able to avoid areas
that I considered to be huge design mistakes in 5. In particular,
the FreeBSD-5 mutex model and its continuance of a stack-context-centric
kernel multi processing model (something which all the BSDs share but
which DragonFly does not, any more).
I also tend to prefer the FreeBSD mach-based VM system (i.e. the
VM Object model) over both earlier BSD VM systems and contemporary
systems like UVM.
Also, there isn't much of a point starting with an operating system
focused on multi-platform support when some of the basic goals I wanted
to accomplish were going to require the rewriting of most of the
core assembly (e.g. in order to implement LWKT properly), and hence
we would have had to throw away all of that support anyway. Even in
DFly I've had to throw away alpha and PC98 support. That may seem a bit
backwards, but the fact of the matter is that the more architectures you
support, the more your core assembly APIs get locked in and become
unchangeable.
-Matt
Matthew Dillon
<dillon at xxxxxxxxxxxxx>
More information about the Kernel
mailing list