Is 64-bit Linux "true" 64 bit thru-and-thru??

Is 64-bit Linux "true" 64 bit thru-and-thru??

Post by Brett J Heffleg » Mon, 23 Dec 1996 04:00:00



What determines 'true' 64 bit code? And is the 64 bit Linux now all 64 bit??

Do applications themselves (many, if not most) have to be _rewritten_ to
become all 64 bit? That is, not just recompiled on a 64 bit machine. If
someone can please clarify these issues (at least at the level of a
humble 'high-level' non-assmbly prgrmmr), it would be a great service.

Thanks - bjh

 
 
 

Is 64-bit Linux "true" 64 bit thru-and-thru??

Post by Albert D. Cahal » Mon, 23 Dec 1996 04:00:00



Quote:> What determines 'true' 64 bit code?

I would think sizeof(void_pointer) should be 8. It is also good if
you can access files larger than 4 GB and sizeof(some_long) is 8.

Quote:> And is the 64 bit Linux now all 64 bit??

Just about. Currently, the filesystem does not support files larger
than 4 GB. Work is underway to upgrade that, if it is not upgraded
already in the experimental 2.1.xx kernels.

Note that you need the DEC Alpha CPU for 64-bit Linux.

Quote:> Do applications themselves (many, if not most) have to be _rewritten_ to
> become all 64 bit? That is, not just recompiled on a 64 bit machine. If
> someone can please clarify these issues (at least at the level of a
> humble 'high-level' non-assmbly prgrmmr), it would be a great service.

You won't need to rewrite them unless you used int in place of long.
With 64-bit Linux, a long is 64-bit and an int is 32-bit. Linux always
keeps an int at 32 bits and the special "long long" type at 64-bits.
The long datatype varies by platform.
--
--
Albert Cahalan
acahalan at cs.uml.edu (no junk mail please - I will hunt you down)

 
 
 

Is 64-bit Linux "true" 64 bit thru-and-thru??

Post by Kristian K?hnto » Mon, 23 Dec 1996 04:00:00



Quote:>> Do applications themselves (many, if not most) have to be _rewritten_ to
>> become all 64 bit? That is, not just recompiled on a 64 bit machine. If
>> someone can please clarify these issues (at least at the level of a
>> humble 'high-level' non-assmbly prgrmmr), it would be a great service.
>You won't need to rewrite them unless you used int in place of long.

Or an int in place of a pointer or vice versa. If you have
source that compiles only with pointer-int conversion warnings,
this code is likely to blow when put on a 64 bit operating
system, where a void * is 8 bytes and an int is 4.

Kristian
--
Kristian Koehntopp, Wassilystrasse 30, 24113 Kiel, +49 431 688897
"Zur Zeit sucht der Hohe Rath der dreizehn Fiesen vom Web keinen Hofnarr,
 sondern einen neuen Pruegelknaben. Der alte hat mit Kuendigung gedroht."

 
 
 

Is 64-bit Linux "true" 64 bit thru-and-thru??

Post by Paul Garce » Tue, 24 Dec 1996 04:00:00





>> What determines 'true' 64 bit code?

>I would think sizeof(void_pointer) should be 8. It is also good if
>you can access files larger than 4 GB and sizeof(some_long) is 8.

>> And is the 64 bit Linux now all 64 bit??

>Just about. Currently, the filesystem does not support files larger
>than 4 GB. Work is underway to upgrade that, if it is not upgraded
>already in the experimental 2.1.xx kernels.

>Note that you need the DEC Alpha CPU for 64-bit Linux.

        I think I might make an exception interrupt here.  The Cyrix 6x86
is capable of both 32 and 64bit operations thanks to the fact that it
has a dual pipeline that is interlocking.  Each pipe (X&Y)on the Cyrix
6x86 is 32bits wide.  When interlocked, they become one 64bit word
that the Cyrix 6x86, afaik (probably need to research this more), can
access and address in 64bit form.  

        The Cyrix 6x86, again, afaik, can define a 64bit far pointer if
the assembly programmer so desires using this interlock process,
though I'm not sure what pc desktop (generic term) needs to address a
1.85x10^19 hard drive address (2^64) or memory reference at this point
in time other than possibly a Cray.  A Pentium wouldn't know what to
do with it and would probably choke...either that or crash and burn
[what a pleasant and interesting image...a PentiumPro slowly
smoldering into ash after attempting to access a 64bit far
pointer...brings a smile to this wizened face...ah, the smell of
burning silicon ;-)]

        If this is an accurate deduction, then it would be an easy thing
to say that where Pentium is a 16/32bit machine, Cyrix 6x86 is a
32/64bit machine.  If indeed this is the case, then there is already a
processor available (at a fraction of the cost of a DEC Alpha CPU)
that is capable of handling 64bit operations, the Cyrix 6x86.

Nothing real can be threatened.
   Nothing unreal exists.