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

Re: Ideal Swap Partition Size

On Fri, 2009-01-23 at 14:47 -0600, Aaron Konstam wrote:
> On Fri, 2009-01-23 at 11:34 -0430, Patrick O'Callaghan wrote:
> > On Fri, 2009-01-23 at 08:53 -0600, Aaron Konstam wrote:
> > >  All this avoids the question I asked. VM processing involves paging
> > > between a memory space and an address space. The question is where is
> > > the address space of the process? It can't be the computer's real
> > > memory because that would be the memory space. 
> > 
> > Now you're confusing me. What do you mean by "memory space" and "address
> > space"? Paging involves (among many pther things) moving data between
> > main memory and a backing store. The data belongs to the "address space"
> > of a process, or possibly several processes in the case of shared pages.
> > "Address space" is a logical concept meaning the range of addressable
> > memory locations in the process virtual memory. I've no idea what you
> > mean by "memory space" unless it's the physical main memory.
> > oo
> > poc
> > 
> The  whole philosophy of virtual memory is based on the idea that you
> want to run your programs in an environment that has more memory than
> the real memory of the machine. So you  operate in a large memory called
> the address space.

There are two meanings of "address space". 1) Computer architects mean
"the maximum amount of memory any process can potentially address,
without consideration of physical memory", i.e. 2^n bytes (in modern
machines) for n-bit address registers. 2) OS designers can also loosely
use the term to mean "the process virtual memory". The two are different
if the virtual memory has holes in it, which it usually does.

> This address space is broken up into pages as is real
> memory.. When a page is accessed by the cpu that page of memory may be
> in the real memory (as noted in page tables) or not.
> If not the page is moved into real memory  and processed. Eventually the
> real memory will be full so pages no longer needed will be placed back
> in the address space. It is this process that is most properly called
> Virtual Memory.

As I've been explaining to computer science majors for 25 years. I
repeat my question, which you didn't answer: what do *you* mean by
"memory space"?

> This is explained in nearly all textbooks on Computer Architecture. So
> the question remains, where is the address space in Linux.

The process occupies parts of main memory and/or backing store, which
taken together hold the contents of its address space in the sense of
meaning (2) above. Is that any clearer?


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