comp.lang.ada
 help / color / mirror / Atom feed
From: Mats Weber <matsw@mail.com>
Subject: Re: Y21C Bug
Date: 2000/01/11
Date: 2000-01-11T10:49:50+00:00	[thread overview]
Message-ID: <387B0AC9.AA4E090B@mail.com> (raw)
In-Reply-To: wcciu157w2h.fsf@world.std.com

Robert A Duff wrote:

> I thought "commit on use" (or "zero on use") meant that (as in your
> example below), virtual memory is allocated, but physical memory is not.
> Then, a read or write of that memory will trap, and the operating system
> will gin up an all-zeros page of memory.

That is what is happening on most modern systems. For instance when you
start an executable, it is mapped to virtual memory but not read into
memory. Then execution is transferred to a virtual memory address within
the mapped executable, causing a page fault which loads a few pages from
the executable, and so on. So, if you don't use some pages of code, they
will never get loaded.

> Still nobody has answered my question about which operating systems
> support these fancy things.

It works that way on VMS (that I know for sure) and most Unices and NT.
Even the current MacOS uses that scheme for loading executables.

> On the other hand, I once wrote something like:
> 
>     X: array(1..One_Zillion) of Integer := (others => 0);
> 
> and the DEC Ada compiler blew up at compile time, apparently trying to
> be clever at run time.

DEC Ada creates the allocator in the object file if everything is
static. That's why you can't compile this.




  parent reply	other threads:[~2000-01-11  0:00 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-01-02  0:00 Y21C Bug reason67
2000-01-02  0:00 ` Robert Dewar
2000-01-03  0:00   ` Tarjei T. Jensen
2000-01-03  0:00     ` Jeff Creem
2000-01-03  0:00       ` Tarjei T. Jensen
2000-01-03  0:00     ` Robert A Duff
2000-01-04  0:00       ` Robert Dewar
2000-01-04  0:00         ` Charles Hixson
2000-01-04  0:00           ` Keith Thompson
2000-01-05  0:00           ` Robert Dewar
2000-01-05  0:00             ` Y21C Bug :-) Charles Hixson
2000-01-06  0:00               ` Ted Dennison
2000-01-07  0:00                 ` Keith Thompson
2000-01-07  0:00                   ` Robert A Duff
2000-01-05  0:00           ` Y21C Bug Robert Dewar
2000-01-04  0:00       ` Tarjei T. Jensen
2000-01-04  0:00         ` Robert Dewar
2000-01-05  0:00           ` Tarjei T. Jensen
2000-01-05  0:00             ` Al Christians
2000-01-06  0:00               ` Tarjei T. Jensen
2000-01-06  0:00                 ` Robert Dewar
2000-01-06  0:00                   ` Robert A Duff
2000-01-06  0:00                     ` Larry Kilgallen
2000-01-07  0:00                     ` Florian Weimer
2000-01-07  0:00                       ` Robert A Duff
2000-01-07  0:00                         ` Robert Dewar
2000-02-04  0:00                           ` Florian Weimer
2000-02-04  0:00                             ` Robert A Duff
2000-02-04  0:00                               ` Florian Weimer
2000-01-11  0:00                         ` Mats Weber [this message]
2000-01-11  0:00                           ` Robert A Duff
2000-01-12  0:00                             ` Mats Weber
2000-01-12  0:00                               ` Thierry Lelegard
2000-01-13  0:00                                 ` Robert A Duff
2000-01-13  0:00                                   ` Larry Kilgallen
2000-01-13  0:00                                   ` Thierry Lelegard
2000-01-13  0:00                                 ` Mats Weber
     [not found]                               ` <387dfb1e.cbbf14c7@mail.com>
2000-01-13  0:00                                 ` Larry Kilgallen
2000-01-11  0:00                     ` Mats Weber
2000-01-07  0:00                   ` Tarjei T. Jensen
2000-01-07  0:00                     ` Robert Dewar
2000-01-06  0:00               ` Robert Dewar
2000-01-05  0:00             ` Robert Dewar
2000-01-06  0:00               ` Richard D Riehle
2000-01-06  0:00               ` Tarjei T. Jensen
2000-01-06  0:00                 ` Larry Kilgallen
2000-01-06  0:00               ` Georg Bauhaus
2000-01-06  0:00                 ` Tarjei T. Jensen
2000-01-04  0:00         ` Samuel Tardieu
2000-01-04  0:00         ` Robert A Duff
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox