<div>Hello,</div>
<div> </div>
<div>Based on the following thread regarding Linux memory map:</div>
<div><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://ozlabs.org/pipermail/linuxppc-embedded/2000-May/001333.html" target="_blank">http://ozlabs.org/pipermail/linuxppc-embedded/2000-May/001333.html</a>
</div>
<div> </div>
<div>Obviously, I am still a newbie in Linux kernel and I find it hard to grasp things especially Linux MM. I quoted some lines from this thread (from Dan's post), then some follow-up questions. I do hope you could help me out in these:
</div>
<div> </div>
<div>1.) <em>"Virtual addresses from 0 to 0x7fffffff are for user context."</em></div>
<div> a.) If TASK_SIZE is defined as 0x80000000, does this necessarily mean that 2G-2G split is used?</div>
<div> </div>
<div> </div>
<div>2.) <em>"For this reason, and since it followed prior PowerPC platform examples, I chose to map the embedded 8xx kernel to the 0xc0000000 virtual address."</em></div>
<div> a.) This 0xc0000000 virtual address must be defined as the value of PAGE_OFFSET, right?</div>
<div> b.) Does this mean that the kernel's .text section is located in this address?</div>
<div> c.) If user space is only up to 0x80000000, and the kernel starts at 0xc0000000, what could possibly be located in between?</div>
<div> </div>
<div> </div>
<div>3.) <em>"Prior to this KVM initialization, we choose to map virtual to physical addresses 1:1. That is, the kernel virtual address exactly matches the physical address on the bus. These mappings are typically done in arch/ppc/kernel/head.S, or arch/ppc/mm/init.c. Only absolutely necessary mappings should be done at this time, for example board control registers or a serial uart. Normal device driver initialization should map resources later when necessary."
</em></div>
<div> a.) Is there any chance that the mapping done here is relocated later in the initialization process?</div>
<div> </div>
<div> </div>
<div><span></span>I would really appreciate your input on this. Thank you very much!</div>
<div> </div>
<div> </div>
<div>Regards,</div><span class="sg">
<div>Shiera</div></span>