From: gprabhunath@gmail.com (Prabhu nath)
To: kernelnewbies@lists.kernelnewbies.org
Subject: Basic HighMeM Question
Date: Mon, 27 Jun 2011 14:58:15 +0530 [thread overview]
Message-ID: <BANLkTi=Jtp0K912N6ceg1Kgq_k5E9jRJBg@mail.gmail.com> (raw)
In-Reply-To: <BANLkTikYk=wRADbEpsyGRPZ18LQP9q-xNA@mail.gmail.com>
Please see inline.
On Mon, Jun 27, 2011 at 2:42 PM, piyush moghe <pmkernel@gmail.com> wrote:
> I have very basic some question's related to HighMem Memory Mapping:
>
> 1) Why can't we directly map memory in highmemory?
>
This question is incorrect ? Typically on a intel architecture, the
physical address space is divided into LOWMEM and HIGHMEM region. Lower 896
MB is marked as LOWMEM region and >896MB as HIGHMEM. More likely in the
intel architecture the memory is always decoded from 0x00000000. For Eg. If
you have memory of 1GB, then 896MB is decoded to LOWMEM and the rest is
decoded in HIGHMEM.
>
> 2) As documents at many places why is the limit of 896MB for ZONE_NORMAL?
>
Since this 896 MB of physical address space is directly mapped to
the Kernel linear virtual address space i.e from (0xC0000000 to 0xF8000000).
Also, there is a Fixed constant offset relation between VA to PA i.e. VA =
PA + 0xC000000. This has been done to avoid any page table walk for
translating kernel virtual address to physical address.
Thus when kernel virtual address is generated for execution, PA is
calculated by MMU directly, thus making kernel code execution faster.
All the above explaination strictly holds good for Intel architecture on
Desktop machines.
Regards,
Prabhunath
>
>
> Regards,
> Piyush
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20110627/333e493c/attachment-0001.html
next prev parent reply other threads:[~2011-06-27 9:28 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-27 9:12 Basic HighMeM Question piyush moghe
2011-06-27 9:28 ` Prabhu nath [this message]
[not found] ` <BANLkTinp6_n0z6OAzo1R6sq_nLynyo_3Xg@mail.gmail.com>
2011-06-27 11:15 ` Prabhu nath
2011-06-28 5:51 ` piyush moghe
2011-06-28 10:16 ` Mulyadi Santosa
2011-06-28 10:49 ` Prabhu nath
2011-06-28 15:26 ` Mulyadi Santosa
2011-06-29 6:30 ` piyush moghe
2011-06-29 6:38 ` Mulyadi Santosa
2011-06-29 7:34 ` Paraneetharan Chandrasekaran
2011-06-29 9:03 ` Mulyadi Santosa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='BANLkTi=Jtp0K912N6ceg1Kgq_k5E9jRJBg@mail.gmail.com' \
--to=gprabhunath@gmail.com \
--cc=kernelnewbies@lists.kernelnewbies.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).