why integer size says 4 bytes on 64 bit processor

Michael Powell nightrecon at verizon.net
Mon May 25 11:48:25 UTC 2009

Shakil Khan wrote:

> Hi All,
> Pardon me if I am writing this mail to the wrong group as I am too new to
> BSD and programming stuff. You can redirect me to right group without
> howling. By seeing some recent conversations(About the top status ;)) in
> this group it made me nervous to ask for a silly question like this, but
> it intrigued my mind too much so thought to delve into it keeping aside my
> fear.
> I have a 64bit intel processor, Dual core machine and I have installed 64
> bit Linux as well as FreeBSD and thought of seeing the size of integer. On
> both the platform my integer is showing 4 bytes which is 32 bit. I thought
> integer are the most basic of the data types and governs the architecture
> as 32 bit or 64 bit, so why integer shows me 4bytes instead of 8. Does
> this means that even on 64 bit architecture we are limited to just 4GB of
> RAM.

No, because INT is not the only variable type available for numerical 
operations. Long and Long Long are 64 bits, and utilizing these types allows 
for larger than 4GB RAM addressing. 


More information about the freebsd-questions mailing list