Re: 32 bit processors / 64 bit processors

益牙 <[email protected]>
Newsgroups gmane.linux.newbie,gmane.linux.kernel.kernelnewbies
Message-ID <[email protected]>
On Oct 21, 2009, at 1:39 PM, Siddu wrote:

>
>
> On Wed, Oct 21, 2009 at 8:32 AM, Rick Brown <[email protected]>  
> wrote:
> Hi,
>
> Firstly, I'm trying to understand what exactly characterizes a
> procesor or an operating system as 32bit / 64 bit. I've read that it
> means the "native word size" of a machine. But what exactly is that?
> Register size? Address bus size? Anything else?
>
>
> When they say its 32/64 bit machine its the capability of the system  
> or processor to process so many bits at once !

I had an understanding of this being how many bits you have to address  
your RAM.

>
>
> Secondly, I'm trying to understand what exactly does a sizeof(int)
> depend on when we say it is "platform specific". Is it dependent of
> compiler being 32bit / 64 bit? Or the OS being 32bit / 64 bit? Or the
> processor being 32 / 64 bit?
>
> its dependent on processor being 32/64 bit

Just did a comparison test but it tells me otherwise. But I'm not sure  
if the test case if correct, can someone improve it?
On a 64bit CentOS:
[root@yyan ~]# more test.c
#include <stdio.h>

int main ()
{
     printf ("%d\n", sizeof(int));
     return 0;
}
[root@yyan ~]# gcc test.c
[root@yyan ~]# ./a.out
4
[root@yyan ~]# uname -a
Linux yyan.pmlab.com 2.6.18-128.el5 #1 SMP Wed Jan 21 10:41:14 EST  
2009 x86_64 x86_64 x86_64 GNU/Linux
[root@yyan ~]#

On my Leopard: (Hopefully it's a 32bit OS as it shows)
simonmac:coding yansimon$ cat test.c
#include <stdio.h>

int main ()
{
     printf ("%d\n", sizeof(int));
     return 0;
}
simonmac:coding yansimon$ gcc test.c
simonmac:coding yansimon$ ./a.out
4
simonmac:coding yansimon$ uname -a
Darwin simonmac.local 9.8.0 Darwin Kernel Version 9.8.0: Wed Jul 15  
16:55:01 PDT 2009; root:xnu-1228.15.4~1/RELEASE_I386 i386
simonmac:coding yansimon$


>
> Lastly, How are "sizes" of compiler / OS / processor inter related?
> Here is my understanding. A 32 bit processor can only be running a 32
> bit OS.
>
> No ... 32 bit OS can run anything <= 32 bit
>
> A 64 bit processor may run a 32 or a 64 bit OS.
>
> yes thats right !
>
> A 32 bit
> compiler genrates code only to be run on a 32 bit OS; ditto for 64
> bit.
>
> Not sure about this let others have their say !
> Is this right?
>
>
> Please correct me if i am wrong !
> TIA,
>
> Rick
>
> --
> To unsubscribe from this list: send an email with
> "unsubscribe kernelnewbies" to [email protected]
> Please read the FAQ at http://kernelnewbies.org/FAQ
>
>
>
>
> -- 
> Regards,
> ~Sid~
> I have never met a man so ignorant that i couldn't learn something  
> from him
>

--
益牙

http://www.google.com/profiles/simonyanix

--
To unsubscribe from this list: send the line "unsubscribe linux-newbie" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.linux-learn.org/faqs
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.