<br><br><div class="gmail_quote">On Mon, Jun 27, 2011 at 3:58 PM, Paraneetharan Chandrasekaran <span dir="ltr"><<a href="mailto:paraneetharanc@gmail.com">paraneetharanc@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br><br><div class="gmail_quote"><div class="im">On 27 June 2011 14:58, Prabhu nath <span dir="ltr"><<a href="mailto:gprabhunath@gmail.com" target="_blank">gprabhunath@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Please see inline.<br><br><div class="gmail_quote"><div>On Mon, Jun 27, 2011 at 2:42 PM, piyush moghe <span dir="ltr"><<a href="mailto:pmkernel@gmail.com" target="_blank">pmkernel@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I have very basic some question's related to HighMem Memory Mapping:<div><br></div><div>1) Why can't we directly map memory in highmemory?</div></blockquote></div><div> 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. <br>
</div><div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204, 204, 204);padding-left:1ex"><div><br></div><div>2) As documents at many places why is the limit of 896MB for ZONE_NORMAL?</div>
</blockquote></div><div> 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. <br>
Thus when kernel virtual address is generated for execution, PA is calculated by MMU directly, thus making kernel code execution faster. <br></div></div></blockquote></div><div><br>Does this mean MMU doesnt look into TLB or pagetable when the kernel virtual address is referenced? how does the MMU know the range of direct mapping ( i.e offset-ed mapping)? <br>
</div></div></blockquote><div> Ideally yes, MMU should hold the range information. I do not know about Intel architecture but I have learnt that in PowerPC architecture there is a BAT register which will hold the offset information. <br>
Any comments ?<br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div class="gmail_quote"><div>
</div><div class="im"><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204, 204, 204);padding-left:1ex"><div class="gmail_quote"><div><br>All the above explaination strictly holds good for Intel architecture on Desktop machines.<br>
<br>Regards,<br>Prabhunath<br></div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204, 204, 204);padding-left:1ex">
<div><br></div><div><br></div><div>Regards,</div><div>Piyush</div>
<br>_______________________________________________<br>
Kernelnewbies mailing list<br>
<a href="mailto:Kernelnewbies@kernelnewbies.org" target="_blank">Kernelnewbies@kernelnewbies.org</a><br>
<a href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" target="_blank">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
<br></blockquote></div><br>
<br>_______________________________________________<br>
Kernelnewbies mailing list<br>
<a href="mailto:Kernelnewbies@kernelnewbies.org" target="_blank">Kernelnewbies@kernelnewbies.org</a><br>
<a href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" target="_blank">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
<br></blockquote></div></div><font color="#888888"><br><br clear="all"><br>-- <br>Regards,<br>Paraneetharan C<br>
</font></blockquote></div><br>