From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from wa-out-1112.google.com (wa-out-1112.google.com [209.85.146.176]) by ozlabs.org (Postfix) with ESMTP id 40458DDED5 for ; Mon, 2 Jul 2007 19:50:52 +1000 (EST) Received: by wa-out-1112.google.com with SMTP id m28so2203309wag for ; Mon, 02 Jul 2007 02:50:50 -0700 (PDT) Message-ID: <1a866be30707020250p7145b143j71042c3b115d01c4@mail.gmail.com> Date: Mon, 2 Jul 2007 18:50:50 +0900 From: "SHIERA LYN DELUSA" To: linuxppc-embedded@ozlabs.org Subject: Linux Process Address Space MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_94874_15145690.1183369850153" List-Id: Linux on Embedded PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , ------=_Part_94874_15145690.1183369850153 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline Hello, Based on the following thread regarding Linux memory map: http://ozlabs.org/pipermail/linuxppc-embedded/2000-May/001333.html 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: 1.) *"Virtual addresses from 0 to 0x7fffffff are for user context."* a.) If TASK_SIZE is defined as 0x80000000, does this necessarily mean that 2G-2G split is used? 2.) *"For this reason, and since it followed prior PowerPC platform examples, I chose to map the embedded 8xx kernel to the 0xc0000000 virtual address."* a.) This 0xc0000000 virtual address must be defined as the value of PAGE_OFFSET, right? b.) Does this mean that the kernel's .text section is located in this address? c.) If user space is only up to 0x80000000, and the kernel starts at 0xc0000000, what could possibly be located in between? 3.) *"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." * a.) Is there any chance that the mapping done here is relocated later in the initialization process? I would really appreciate your input on this. Thank you very much! Regards, Shiera ------=_Part_94874_15145690.1183369850153 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline
Hello,
 
Based on the following thread regarding Linux memory map:
 
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:
 
1.)  "Virtual addresses from 0 to 0x7fffffff are for user context."
     a.) If TASK_SIZE is defined as 0x80000000, does this necessarily mean that 2G-2G split is used?
 
 
2.)  "For this reason, and since it followed prior PowerPC platform examples, I chose to map the embedded 8xx kernel to the 0xc0000000 virtual address."
     a.)  This 0xc0000000 virtual address must be defined as the value of PAGE_OFFSET, right?
     b.)  Does this mean that the kernel's .text section is located in this address?
     c.)  If user space is only up to 0x80000000, and the kernel starts at 0xc0000000, what could possibly be located in between?
 
 
3.)  "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."
      a.)  Is there any chance that the mapping done here is relocated later in the initialization process?
 
 
I would really appreciate your input on this.  Thank you very much!
 
 
Regards,
Shiera
------=_Part_94874_15145690.1183369850153--