核心游记基础章 phys_to_virt
2008-10-07 10:31
274 查看
函数定义:
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处
由此可知物理内存与内核虚拟地址3G开始处一一对应.
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处
由此可知物理内存与内核虚拟地址3G开始处一一对应.
相关文章推荐
- Linux驱动修炼之道-内存映射 mmap()/phys_to_virt()
- linux内核之 phys_to_virt
- phys_to_virt(),ioreamp(),IO_ADDRESS() 的区别
- phys_to_virt(),ioreamp(),IO_ADDRESS() 的区别
- 驱动——ioremap和phys_to_virt
- request_mem_region,ioremap 和phys_to_virt()
- request_mem_region,ioremap 和phys_to_virt()
- 整个的一个外设映射关系以及phys_to_virt与io_remap
- request_mem_region,ioremap 和phys_to_virt()
- phys_to_virt(),ioreamp(),IO_ADDRESS() 的区别
- request_mem_region,ioremap 和phys_to_virt()
- 关于ioremap 和 phys_to_virt
- linux mips架构PHYS_OFFSET、CAC_BASE、HIGHMEM_START、PAGE_OFFSET、virt_to_phys、phys_to_virt、page_to_phys的定义
- phys_to_virt(),ioreamp(),IO_ADDRESS() 的区别
- Linux驱动修炼之道-内存映射 mmap()/phys_to_virt()
- linux内核之 phys_to_virt
- request_mem_region,ioremap和phys_to_virt()
- request_mem_region,ioremap 和phys_to_virt()
- 51CTO技术沙龙之 企业基础网络与核心服务搭建(视频、图文、PPT)
- Linux基础入门及系统管理01-Linux运维核心技能-bash基础特性详解09