RE: Support for HIGHMEM ...can any one explain my Q&A ..

From: Mukund JB.
Date: Mon Aug 23 2004 - 23:12:13 EST


Thanks a lot for the response.
Will u be able to provide me a link that will be able to help in making
this PAGE-OFFSET and related issues more clear.

Also, it seems to be whats going on here is high-end expertise level
stuff.

I am new to Driver Writing even though I was working on linux before
this. So, will u be able to suggest me a list where in I can post my
basic issues about Memory management issues, Time Control issues and
Driver Control, so on.

Or else is it ok if I post them here.


Thanks for that again.

Regards,
Mukund jampala


-----Original Message-----
From: eric@xxxxxxxxxxxxxxxxxxxxxxxxx
[mailto:eric@xxxxxxxxxxxxxxxxxxxxxxxxx] On Behalf Of Eric W. Biederman
Sent: Monday, August 23, 2004 7:59 PM
To: Mukund JB.
Cc: linux-kernel@xxxxxxxxxxxxxxx
Subject: Re: Support for HIGHMEM ...can any one explain my Q&A ..

"Mukund JB." <mukundjb@xxxxxxxxxxxxxxxxxxxxx> writes:

> Hi all,
> Sorry if I asked any thing that basic level stuff?
> This is the paasge I found in the net while surfing for details about
> HIGHMEM stuff.
>
> During 2.3 kernel development (I think), "HIGHMEM" support was added.
> Normally, the kernel can only address (4GB-PAGE_OFFSET)/PAGE_SIZE
pages
> of RAM, since all physical pages must be mapped to kernel addresses
> between PAGE_OFFSET and 4GB. (So if PAGE_OFFSET is 3GB, only 1GB of
> physical RAM can be used - not even that, in practice, due to fixed
> kernel mappings and so forth.) The HIGHMEM patches allow the kernel to
> use more than 1G of memory by mapping the additional pages into the
high
> part of the kernel address space just below 4GB as necessary. They
also
> allow high-memory pages to be mapped into user process address space.
>
>
> ***) Does the above passage mean that PAGE_OFFSET is the starting
> address of my RAM ?

No. PAGE_OFFSET is the virtual address at which physical address
0 is mapped into an arch/i386 kernel.

> I understood so from the below line
> "since all physical pages must be mapped to kernel addresses between
> PAGE_OFFSET and 4GB".
>
> ***) Does it mean that the lowest portion of the 4GB os nothing but
RAM
> ?

No. 0-PAGE_OFFSET is the virtual address space provided to user space.
So it has an arbitrary mapping to virtual memory.



Eric
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/