DragonFlyBSD threading model
alexjeffburke at gmail.com
Mon Aug 1 05:25:31 PDT 2005
I have been reading up about how the different BSD systems are
handling SMP and threading. I gather NetBSD uses scheduler
activations, where userland programs are given virtual CPUs which then
get mapped to kernel threads for execution (please correct me if my
analysis is wrong). FreeBSD appears to use a variant of this idea
called KSEs. I believe this is known as M:N.
I am not however sure exactly how DragonFlyBSD threads work - each CPU
has an LWKT scheduler, and that above this layer there is also a
userland scheduler (partially equivalent to the functionality provided
by sched_4bsd.c under FreeBSD?) - but my question is how that relates
to userland programs - when they have threads..does each program
thread map directly to one of the LWKT schedulers on one of the CPUs?
Does that make it 1:1?
I apologise if this seems like an extremly novide question, this stuff
is all very new to me.
Thanks in advance, Alex J Burke.
More information about the Kernel