Date: Sat, 29 Jul 95 17:26:23 MDT From: terry@cs.weber.edu (Terry Lambert) To: bakul@netcom.com (Bakul Shah) Cc: freebsd-hackers@freebsd.org Subject: Re: pthreads Message-ID: <9507292326.AA09991@cs.weber.edu> In-Reply-To: <199507292251.PAA23854@netcom20.netcom.com> from "Bakul Shah" at Jul 29, 95 03:51:55 pm
next in thread | previous in thread | raw e-mail | index | archive | help
> > > While we're on the topic of threads, is there any work on getting > > > kernel level threads into bsd? > > > I think that this is a natural consequence of allowing kernel reentrancy > > in the SMP port... the kernel becomes internally preemption-safe. > > I think Marty Leisner is talking about multiple threads of > control in a single address space. If so, this can be > handled without kernel preemption. AFAIK kernel preemption > is really only required to handle realtime processes. Well, he said "kernel level threads". Unless you buy into the SVR4 definition, in which case a blocking operation will block the scheduling unit instead of becoming an async operation and a thread context switch. The SVR4 model has some serious drawbacks; if you do blocking calls in all your threads, you must have N kernel threads for N user threads. In general, there is little benefit to the SVR4 model other than causing people to program in a more event driven way (which could be argued) and a shared open file table and more complex signal and exception handling requirements. The Dynix "sfork()" interface provides the same functionality without adding silly restrictions on stack preallocation and scheduling quantum competition. > BTW, nice description of `priority inversion' w.r.t. > prioritized realtime processes on MP systems (in your other > message about Scheduling Algorithms). Why am I the only one who first found out about it from the IBM white paper? Does everyone else on the planet call it "priority inversion" instead of "priority lending"? 8-(. Terry Lambert terry@cs.weber.edu --- Any opinions in this posting are my own and not those of my present or previous employers.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9507292326.AA09991>