Re: kernel address space question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 9/14/05, suresh pedamallu <suresh.iitr@xxxxxxxxx> wrote:
> Hi All,
> I have a query regarding the kernel virtual memory. In this thread
> some people said the physical address for the kernel virtual address
> can be obtained by subtracting it from 3G.
>   Physical address = Virtual Address - 3G.
> 
> Take a simple Case:
> I have physical memory for eg 128 MB. And I want to access the virtual
> address 3GB + 256MB.
> The physical address would be 3GB + 256MB - 3GB which will be 256MB.
> But the RAM size is just 128 MB. So how will i read the physical
> memory 256MB because the physical memory i have is just 128MB.
> 
> Please clarify this to me..

If you have 128MB RAM in the system then the direct virtual/physical
mapping is from 3G to 3G + 128MB and above 3G+128MB Vitual address
upto 4G is called as VMALLOC_RESERVE and this can't have direct
mappings as it is used for vmalloc/ioremap/kmap etc .......... and on
1GB physical RAM in system VMALLOC_RESERVE becomes 128MB as kernel
keeps 0 to 896MB direct mapping on 3G to 3G + 896MB ..........

So in short you can't access 3G + 256MB virtual address to access
256MB Physical RAM if you have 128MB RAM in system ........

-- 
Fawad Lateef

--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/



[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux