[vox-tech] lame question on memory allocation
Ryan Zeeturt
vox-tech@lists.lugod.org
Tue, 21 Jan 2003 11:40:24 -0800 (PST)
A word is 2 bytes I think on x86. Then after that there is double-word,
quad-word and paragraph, and more nerdy names I'm sure.
Word-aligned means that you can't have a memory address starting at
anything that isn't a multiple of 2. So for different types of alignments,
let's say it were aligned to N bytes, then you couldn't have a memory
address
starting at anything that isn't MEM_ADDRESS mod N.
-ryan
On Tue, 21 Jan 2003, Peter Jay Salzman wrote:
>
> you'd think by now i'd know stuff like this. i'm embarrased to have to
> ask this, but here it goes.
>
> i'm reading the man page for electric fence, and i'm not fully
> understanding the sections on EF_ALIGNMENT and "WORD-ALIGNMENT AND
> OVERRUN DETECTION". i feel like i "almost" understand them.
>
> i think i understand the concept of memory page as being the minimum
> chunk of memory the kernel handles internally (8192 bytes minimum
> allocation of memory on x86) and alignment, but i guess i don't know
> what a word is.
>
> for example, the man page says that malloc() may be required to return
> word aligned memory pages, so in the diagram:
>
>
> 1 page allocated by malloc()
> x ------------
> x+1 | |
> x+2 | 8192 |
> | bytes on |
> | x86 |
> | |
> ------------
>
> i guess that places a restriction on what "x" is, but because i don't
> know what a word is, i don't know what that restriction is.
>
> what's a word? :)
>
> or does it mean that there's a restriction on *size* of the page and not
> the starting point?
>
> pete
>
> --
> First they ignore you, then they laugh at you, then they fight you,
> then you win. -- Gandhi, being prophetic about Linux.
>
> Fingerprint: B9F1 6CF3 47C4 7CD8 D33E 70A9 A3B9 1945 67EA 951D
> _______________________________________________
> vox-tech mailing list
> vox-tech@lists.lugod.org
> http://lists.lugod.org/mailman/listinfo/vox-tech
>