Re: Largest size array in Gnat 2005 for the PC?
- From: Adam Beneschan <adam@xxxxxxxxxx>
- Date: Tue, 30 Oct 2007 12:06:39 -0700
On Oct 30, 10:27 am, a...@xxxxxxxx (anon) wrote:
Since your using 32-bit version of XP. then it is linmited to 32 bits.
GNAT is ported to over 30 operating systems and CPUs. Here is a
subset of a few type and sizes
if your CPU and operating system is limited to 32 bits then GNAT
defines:
System.Memory_Size : constant := ( 2 ** 32 ) ;
else using the ia64/Alpha/s390x/86-64 processors and a 64-bits
OS then GNAT set the size to:
System.Memory_Size : constant := ( 2 ** 64 ) ;
I should point out that you should *not* use System.Memory_Size for
this purpose unless you're using GNAT and are absolutely certain your
code will not be compiled with another compiler. The original
definition of Memory_Size had to do with the amount of available
memory, not the amount of memory that could be accessed with an
address (whether the memory existed or not); starting with Ada 95, the
AARM has said:
It is unspecified whether this refers to the size of the address
space, the amount of physical memory on the machine, or perhaps some
other interpretation of "memory size." In any case, the value has to
be given by a static expression, even though the amount of memory on
many modern machines is a dynamic quantity in several ways. Thus,
Memory_Size is not very useful. [13.7(33.a)]
-- Adam
.
- References:
- Prev by Date: Re: Largest size array in Gnat 2005 for the PC?
- Next by Date: Re: virtual memory, was Re: Largest size array in Gnat 2005 for the PC?
- Previous by thread: Re: Largest size array in Gnat 2005 for the PC?
- Next by thread: Re: Largest size array in Gnat 2005 for the PC?
- Index(es):
Relevant Pages
|