Vulnerability Development mailing list archives

Re: Smashing the Stack?


From: Kim Reece <sorel () ugcs caltech edu>
Date: Wed, 17 Jul 2002 13:55:39 -0700 (PDT)

That article is from 1996. About that time 16bit machines were state of
the art. Nowadays, we work on 32bit systems. Along with doubling the
bits, the alignment of variables in memory changed too. From 4Byte to
8...

At least that's what I'd think it is... Correct me if I'm wrong.
(last messed with c/asm a year ago :-) )


If i recall correctly, the purpose of 4-byte allignment is to extend the
range for some of the intel addressing modes.  The end result at the
how-bits-fit-in-the-instruction level was that the last two bits could be
implicit in these addresses, which expanded the range by a factor of 4.
This aspect of the instruction format has not been changed in their 32 bit
architectures, therefore i see no reason why they would have moved to
8-byte allignment.  Then again, my computer architecture class could have
had totally wrong specs for the pentiums, anything is possible.



Current thread: