Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 01 Jul 1998 00:02:49 -0700
From:      David Greenman <dg@root.com>
To:        sja@world.std.com (Stuart J Adams)
Cc:        freebsd-questions@FreeBSD.ORG
Subject:   Re: splnet, splx and tsleep 
Message-ID:  <199807010702.AAA01024@implode.root.com>
In-Reply-To: Your message of "Tue, 30 Jun 1998 15:00:56 EDT." <199806301900.AA29089@world.std.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
>I am trying to understand the exact effects
>of splnet and splimp in the kernel. 
>
>When running at splnet/splimp a process
>cannot be preempted out due to time slicing
>right ???

   A process can't be preempted due to scheduling when running anywhere in
the kernel.

>what happens when tsleep is called while
>at splnet ??? This happens in the accept
>system call, the system can't be left at
>the splnet priority level until a connection
>is made. How does tsleep effect the current
>spl ???

   The spl prior to the sleep is saved, spl0 (splnone) is set, and another
process is scheduled. The spl will be restored later when the wakeup occurs.

>Is there a good explanation on the net or in
>book about these kernel architectural issues ??? 

   Kirk's book is usually a good reference.

-DG

David Greenman
Co-founder/Principal Architect, The FreeBSD Project

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199807010702.AAA01024>