Jason Zhao wrote:
> Adam Leventhal wrote:
> > Hi Jason,
> >
> > It would appear that your shell is a 32-bit process and you're
> > recording the stack on entry to exece rather than the return. That is
> > to say, you're recording the stack of your shell rather than the stack
> > of the 64-bit ls process:
> >
> > # dtrace -n 'syscall::exece:return{ stack(); ustack(); }'dtrace:
> > description 'syscall::exece:return' matched 1 probe
> > CPU ID FUNCTION:NAME
> > 1 82155 exece:return
> > unix`sys_syscall32+0x1fc
> >
> > 0xfffffd7fff3bd8da
>
> Yes, my shell is 32-bit, as following:
>
> # file /usr/bin/bash
> /usr/bin/bash: ELF 32-bit LSB executable 80386 Version 1 [FPU],
> dynamically linked, stripped
>
> In other words, I should have run 64-bit bash other than 32-bit one. So
> that I could get 64-bit address.
Solaris doesn't ship a 64bit version of "bash" (yet ; I'll work on that
soon), right now the only 64bit shell shipped with the OS is ksh93, e.g.
- /usr/bin/ksh93 is a link to "isaexec" which selects a 32bit or 64bit
version of ksh93 based on /usr/bin/isalist output
- /usr/bin/i86/ksh93 is 32bit/i386
- /usr/bin/amd64/ksh93 is 64bit/AMD64
- /usr/bin/sparcv7/ksh93 is 32bit/SPARC
- /usr/bin/sparcv9/ksh93 is 64bit/SPARC
- /usr/bin/s390/ksh93 is 32bit/SystemZ
- /usr/bin/s390x/ksh93 is 64bit/SystemZ
----
Bye,
Roland
--
__ . . __
(o.\ \/ /.o) [email protected]
\__\/\/__/ MPEG specialist, C&&JAVA&&Sun&&Unix programmer
/O /==\ O\ TEL +49 641 3992797
(;O/ \/ \O;)
_______________________________________________
dtrace-discuss mailing list
[email protected]