[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

RE: PROPOSED: 32/64 bit coexistence

> -----Original Message-----
> From: Vulture [mailto:t.sippel-dau@ic.ac.uk]
> Sent: Wednesday, September 19, 2001 3:53 PM
> To: Andreas Jaeger
> Cc: fhs-discuss@ucsd.edu; lsb-spec@linuxbase.org; Marcus Kraft
> Subject: Re: PROPOSED: 32/64 bit coexistence
> Andreas Jaeger wrote:
> > 
> > What do you think?  Have we reached consensus - or where is 
> still room
> > for clarification?
> ....
> >    Note: FHS does not mention the case of one architecure being
> >    capable different binaries like /libPPC or /libPPC64 (but
> >    provides a naming convention scheme for it: /libNN)
> > 
> >    On 'pure' 64bit systems the natural location would be /lib
> >    for those libraries and 32bit libs would be placed in /lib32
> >    (Linux for iA64, L/Alpha, and L/zSeries have started this
> >    way).
> A "pure" 64 bit system would surely be ILP64, by definititon an
> int in C can be added to a pointer to obtain another pointer of
> the same type. LP64 with 32 bit ints would not allow a program
> address chars in a memory image of a file over 2 Gigabyte in size -
> a DVD movie image, say.

The last time I looked, the C standard said that an implementation must
have an *integer type* big enough to hold all bits of a pointer. This
integer type did not have to be an int--it could be a long. Your
underlying architecture does not have to have native instructions to
manipulate data longer than its "natural" representation of an integer
as it can be handled without the user knowing. Version of pcc (portable
C compiler) did exactly this, as did many early version of x86

> This may not be a problem now, but in time it will be. For example, 
> if you model air flow through a complete aero engine, 10 to 50 
> Tb of memory (1 to 6 Terabytes) would certainly come in handy,
> and addressing the points in the structure with 32 bit ints becomes 
> difficult.

That we will have to be building systems to support terabytes of memory
is beyond doubt. The only items which, practically speaking, must be
natively 64-bits long are the pointers.

I am glad some people are discussing what happens when there 128-bit
architectures is good. If our 64-bit solution does not yield an obvious
path to 128 bits, we've almost certainly got the 64-bit solution wrong.
David VomLehn	David.VomLehn@Compaq.com	Voice: 512-432-8729	
		Fax: 512-432-8037	

This is my opinion. Compaq may disagree.

Reply to: