From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,6be476fd23132bb7 X-Google-Attributes: gid103376,public From: geert@gonzo.sun3.iaf.nl (Charlie Root) Subject: Re: Segmentation Fault Date: 1997/04/15 Message-ID: <5j0uo6$7b4$1@gonzo.sun3.iaf.nl>#1/1 X-Deja-AN: 235234270 References: <335358C5.43F8@reading.ac.uk> <33538A67.709A@reading.ac.uk> Organization: La Calandre Infortunee Newsgroups: comp.lang.ada Date: 1997-04-15T00:00:00+00:00 List-Id: William Paul Berriss (W.P.Berriss@reading.ac.uk) wrote: When I change the 64X64X64 to a 128X128X128 they both crash at run-time giving Segmentation Fault. Thus I cannot ask for a 6 megabyte chunk of memory on a Sun. Is this correct? Why? It may be that you do not allocate the memory dynamically using "new", but implicitly declaring a local variable for example. In that case it typically is allocated on the stack, which should be large enough. Use the Storage_Size pragma for the task that allocates these large chunks of memory, setting the size to 30 MB for example. On most modern systems having a large stack doesn't hurt as long as you do not touch it. So the memory is only actually needed when you *use* the whole stack. I do think however that Ada compilers should provide larger stacks by default on platforms as described above. Bob Duff recently described a good approach for this, without requiring too much virtual address space. Regards, Geert