[Oberon] Ram & processors

Patrik Reali reali at acm.org
Wed Feb 5 23:15:36 CET 2003


----- Original Message -----
From: "Gérard Meunier" <gmeunier at club-internet.fr>
To: <oberon at inf.ethz.ch>
Sent: Monday, February 03, 2003 12:13 AM
Subject: Re: [Oberon] Ram & processors


> >From: Patrik Reali
> > The number of free pages can be asked with AosMemory.GetFreeK. This
pages
> > are used for stacks and heap.
>
> Ok. I begin to understand. I'll try to summarize. At the start, only a
small
> heap is allocated. This heap, when full, will grow and never shrink. The
> AosHeap.GetHeapInfo procedure gives data about the allocated heap, whereas
> AosMemory.GetFreeK gives informations about the yet non-allocated memory,
> which is divided in two areas: the low memory, below 1Mb (640 kb, more
> precisely), and the high memory, above 1 Mb. These free pages may also be
> allocated temporarily to the stack(s). So, your freeMemory procedure gives
> exactly what I need.
>
> What I don't understand is the difference, in the GetFreeK procedure,
> between the "total" parameter and the sum "low + high". Their values are
not
> equal. Why?

Total is the total number of pages in the system (including the allocated
ones).

This value is used to compute how many pages can be allocated to the heap.
The current policy is up to 95%, so that at least 5% of the pages are always
available to the stacks.

-Patrik




More information about the Oberon mailing list