Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 31 May 2002 20:33:17 -0400
From:      Jake Burkholder <jake@locore.ca>
To:        Julian Elischer <julian@elischer.org>
Cc:        FreeBSD current users <current@FreeBSD.ORG>
Subject:   Re: Seeking OK to commit KSE MIII-again
Message-ID:  <20020531203317.W62759@locore.ca>
In-Reply-To: <Pine.BSF.4.21.0205311340570.29361-100000@InterJet.elischer.org>; from julian@elischer.org on Fri, May 31, 2002 at 01:45:50PM -0700
References:  <20020531133212.U62759@locore.ca> <Pine.BSF.4.21.0205311340570.29361-100000@InterJet.elischer.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Apparently, On Fri, May 31, 2002 at 01:45:50PM -0700,
	Julian Elischer said words to the effect of;

> 
> 
> On Fri, 31 May 2002, Jake Burkholder wrote:
> 
> [aweful stuff]
> (always did dislike sparc)

Whatever.  It's the most fun architecture I've found to program for.

> 
> jake..
> can you show me the sequecne of operations performed on the stack
> in a syscall before and after the jump to kernel space?
> 

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).

Here is a reference:  http://www.sparc.com/standards/v9.ps.Z

Jake

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?20020531203317.W62759>