【深入理解Linux内核】【分页】相关函数或宏
来源:互联网 发布:淘宝处理不公平 编辑:程序博客网 时间:2024/05/01 07:48
PTRS_PER_PTE,PTRS_PER_PMD,PTRS_PER_PUD,PTRS_PER_PGD:分别表示页表,页中间目录,页上级目录,页全局目录中项的个数。
1.几个用于页表处理的函数或宏
五个类型转换宏:__pte、__pmd、__pud、__pgprot。分别把无符号数转换为相应的类型。
pte_non,pmd_none,pud_none,pgd_none用于判断相应表项值是否为0,为0返回1,否则返回0。
set_pte,set_pud,set_pmd,set_pgd 分别表示向一个表项中写入相应值。
2.对页表项进行操作的宏
pgd_index(addr):找到线性地址addr对应的目录项在页全局表中的索引。
pgt_offset(mm,addr):接收内存描述符地址mm和addr作为参数,可以求得线性地址addr在全局目录表中对应表项的线性地址,通过mm中的一个指针可以找到全局目录表。
pgd_offset_k(addr):产生内核全局目录表项中某一项的线性地址
pgd_page(pgd):通过页全局目录表pg产生页上级目录所在页框的页描述符地址。在两级或者三级分页中等价于pud_page.后者通过页上级目录产生页中级目录的线性地址
pud_offset(pgd,addr):通过参数页全局目录表项指针pgd和线性地址产生页上级目录中目录项addr对应的线性地址。
pmd_index(addr):产生addr对应的页中间目录对应目录项的的索引。
0 0
- 【深入理解Linux内核】【分页】相关函数或宏
- 《深入理解Linux内核》do_fork函数
- 深入理解LINUX内核
- 深入理解 Linux 内核
- 深入理解linux内核
- 深入理解 Linux 内核
- 深入理解Linux内核
- 深入理解Linux内核list_entry()宏
- 深入理解Linux kernel(内核)中的signal函数
- 深入理解Linux kernel(内核)中的signal函数
- 《深入理解Linux内核》copy_process之dup_task_create函数
- 深入理解linux内核学习
- 深入理解linux内核 书
- 深入理解Linux内核--信号
- 深入理解Linux内核--信号
- 深入理解Linux内核---进程
- 深入理解linux内核手记
- 深入理解Linux内核架构
- 运动跟踪之均值漂移(MeanShift)算法和Camshift算法(连续自适应的MeanShift)
- 数组——数组中最长连续序列
- python本地版wordCloud字符云生成
- centos7.2配置网络
- SIM900A(GSM模块)学习
- 【深入理解Linux内核】【分页】相关函数或宏
- JAVA多线程和并发基础面试问答
- 输入阻抗、输出阻抗和阻抗匹配
- 机器学习实战Machine Learning In Action 中的KNN代码详细解释
- Python实现协程的生产者与消费者
- 2016"百度之星" - 资格赛(Astar Round1)
- tomcat超时设置
- 查看linux服务器硬盘IO读写负载
- UVA - 10474 Where is the Marble?