* FengYue <[EMAIL PROTECTED]> [001128 18:31] wrote:
> 
> On Tue, 28 Nov 2000, FengYue wrote:
> ->->No it wouldn't.  The async nature of the call would prevent the
> ->->process from blocking therefore the threads wouldn't block either
> ->->blocking.
> ->->
> ->
> ->Sorry for being unclear.  I actually meant "Would the async system calls
> ->considered the case for 'preemptive at kernel level'".
> 
> Never mind, I see what you meant:)  Would you mind give me 
> a scenario which is considered as preemptive at kernel level for fbsd
> threads?  Thanks.

FreeBSD 4.x:
Once you're running in the kernel you are not preemptive until you
explicitly yeild via tsleep or an interrupt you haven't masked via
spl comes in.  Even if an interrupt comes in you will only be
preempted to allow that interrupt to complete, then you will resume
running until you sleep.

This means that if you have an expensive codepath in the kernel
you can exceed your timeslice by quite a bit before letting go
of the processor.

In FreeBSD 5.x we hope to be mostly preemtable.

-- 
-Alfred Perlstein - [[EMAIL PROTECTED]|[EMAIL PROTECTED]]
"I have the heart of a child; I keep it in a jar on my desk."


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to