核心游记基础章 phys_to_virt

函数定义:

static inline void *phys_to_virt(unsigned long x)
{
    return (void *)(__phys_to_virt((unsigned long)(x)));
}

 

#define __phys_to_virt(x)    ((x) - PHYS_OFFSET + PAGE_OFFSET)

 

#ifdef CONFIG_CPU_S3C2400
#define PHYS_OFFSET    (0x0C000000UL)
#else
#define PHYS_OFFSET    ( )    //2410应该使用这个偏移地址
#endif

 

#define PAGE_OFFSET        (0xc0000000UL)   //3G处

 

核心游记基础章 phys_to_virt_第1张图片

 

由此可知物理内存与内核虚拟地址3G开始处一一对应.

你可能感兴趣的:(核心游记基础章 phys_to_virt)