linux内核之 phys_to_virt
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
#definePHYS_OFFSET (0x0C000000UL)
#else
#definePHYS_OFFSET () //2410应该使用这个偏移地址
#endif
#definePAGE_OFFSET (0xc0000000UL) //3G处
由此可知物理内存与内核虚拟地址3G开始处一一对应.
linux内核之 phys_to_virt相关推荐
- Linux 内核启动流程
转载自 http://wenku.baidu.com/link?url=KpOdULJu1CxP1swqRs_Szoyg5r_8rje4N08o4QtB5L9QlPjWesTYlrTPgkxPOriF ...
- Linux内核中内存分配函数
1.原理说明 Linux内核 中采 用了一种同时适用于32位和64位系统的内 存分页模型,对于32位系统来说,两级页表足够用了,而在x86_64系 统中,用到了四级页表,如图2-1所示.四级页表分别为 ...
- arm的2级页表在Linux内核创建过程解析
系统DDR的基地址为0x0,内存为1GB,所以TTB的基地址为0x4000.下面要创建虚拟地址0xfe700000到物理地址0xffff0000之间的映射,映射大小为64KB,即16页.由于物理地址不 ...
- linux内核分析(转自某位大哥网上的笔记)
启动 当PC启动时,Intel系列的CPU首先进入的是实模式,并开始执行位于地址0xFFFF0处的代码,也就是ROM-BIOS起始位置的代码.BIOS先进行一系列的系统自检,然后初始化位于地址0的中断 ...
- u-boot与linux内核间的参数传递过程分析
转自:http://blog.csdn.net/u012075739/article/details/52252991 http://www.nishizawa23.com/ http://li ...
- Linux内核驱动开发(一)
Linux内核初探 linux操作系统历史 开发模式 git 分布式管理 git clone 获取 git push 提交 git pull 更新 邮件组 mailing list patch 内核代 ...
- Linux内核地址空间布局详解
1. 简介 虽然x86_64的物理地址范围为64bit,但是因为地址空间太大目前不可能完全用完,当前支持57bit和48bit两种虚拟地址模式. 地址模式 单个空间 用户地址空间 内核地址空间 32位 ...
- Linux内核编程(三)----------Linux内核的基本概念
写在前面:充满机遇与挑战的2019年来了,年前由于各个项目的原因,这个系列停滞了好久,新的一年虽然项目也是非常紧张,但还是争取闲暇的时间利用起来,把这个系列咬咬牙写完.任何成功和舒适,都是苦尽甘来,你 ...
- Linux 内核,30 年C 语言将升级至 C11
Linux 内核,30 年C 语言将升级至 C11 还在使用 89 年版 C 语言的 Linux 内核,现在终于要做出改变了.今天,Linux 开源社区宣布,未来会把内核 C 语言版本升级到 C11, ...
最新文章
- 【深度学习】(6) tensorflow2.0使用keras高层API
- 标准情况下的最优方案与魔鬼赛道
- [JavaScript]关于div的隐藏
- oracle--rowid
- Android开发之java8 lambad表达式的使用
- 计算机辅助初中数学教学,初中数学合作教学如何融入计算机辅助教学
- 机器人J中WPR_北方工业大学服务机器人研究项目介绍
- vs里安装了mysql吗_vs2017安装 MySQL for Visual Studio 1.2.
- 新浪微博开放平台深度历险
- 9-Mybatis 多表查询之一对多
- 【翻译自mos文章】rman 备份时报:ORA-02396: exceeded maximum idle time
- python切片长度_python的间隔切片技巧
- 简单Android app开发_什么方法开发APP最简单?试试0代码开发平台
- RocketMQ开发指导之四——RocketMQ常见问题
- 18年怎么将win7升级到win10教程
- excel文件修复工具_psd文件修复工具下载|Recovery Toolbox for ps 最新版v2.3.1.0 下载
- Vue中金额、日期 格式化插件@formatjs/intl使用
- Beyond Part Models: Person Retrieval with Refined Part Pooling 阅读笔记
- 吴恩达deeplearning之CNN—卷积神经网络入门
- Chrome谷歌浏览器无法调用摄像头原因及解决办法
热门文章
- synchronized 关键字原理
- 2.LRU算法实现 [C++]
- java最基础语句,Java基础:Java语句
- mysql多源复制脚本_Mysql多源复制
- 佛吉尼亚大学计算机世界排名,弗吉尼亚大学计算机世界排名
- python opencv resize函数_Python OpenCV中的resize()函数的使用
- UPS 异常停机案例分析
- 程序员微信头像_这才是程序员的内心独白
- 编程笔试(解析及代码实现):字符串反转(字符串逆序输出)代码实现十多种方法对比(解析思路及其耗费时间)详细攻略
- Python之pandas:pandas的get_dummies函数简介(将分类变量转为哑变量)及其使用方法之详细攻略