Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 31 May 2002 18:54:41 -0700 (PDT)
From:      Julian Elischer <julian@elischer.org>
To:        Jake Burkholder <jake@locore.ca>
Cc:        FreeBSD current users <current@FreeBSD.ORG>
Subject:   Re: Seeking OK to commit KSE MIII-again
Message-ID:  <Pine.BSF.4.21.0205311853360.29361-100000@InterJet.elischer.org>
In-Reply-To: <20020531211925.X62759@locore.ca>

next in thread | previous in thread | raw e-mail | index | archive | help


On Fri, 31 May 2002, Jake Burkholder wrote:

> Apparently, On Fri, May 31, 2002 at 05:49:59PM -0700,
> 	Julian Elischer said words to the effect of;
> 
> > interesting but not exactly brief.. :-)
> > 
> > 
> > On Fri, 31 May 2002, Jake Burkholder wrote:
> > 
> > > 
> > > The system call stubs in libc are leaf functions; basically just a
> > > trap instruction followed by a return.  They do not touch the stack
> > > at all, or change the stack pointer.  One of the first few instructions
> > > on entry to the kernel is a save, which rotates the register window
> > > and logically saves the call-safe registers onto the user stack
> > > (the outs become the ins, and the kernel gets new ins and locals,
> > > with the old ones being saved to the user stack once a flush is
> > > performed or they get spilled out).
> > 
> > the question is "when does it switch to the kernel stack?"
> > (and back?)
> 
> This is not done by the hardware.  Its done by the trap code after
> the save is executed.

so if the software did it in the opposite order,
you'd save to the kernel stack?
(I doubt it but I have to ask..)


> 
> > 
> > 
> > > 
> > > Here is a reference:  http://www.sparc.com/standards/v9.ps.Z
> > 
> > downloaded... 300+ pages.. hmm.
> > 
> > 
> > > 
> > > Jake
> > > 
> 
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-current" in the body of the message
> 


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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0205311853360.29361-100000>