我从

Linux内核源代码中找到了它.

struct file *file = filp_open("filename",O_RDONLY,0);

struct address_space *file_addr_space = file->f_mapping;

if(file_addr_space==NULL){

printk("error")

}

struct radix_tree_root file_page_tree_root = file_addr_space->page_tree; //contains all pages in page cache

struct radix_tree_iter iter;

void **slot;

int num_dirty = 0;

radix_tree_for_each_slot(slot,&file_page_tree_root,&iter,0){

struct page *page = radix_tree_deref_slot(slot);

if(page!=NULL){

//printk("information about page");

}

}

linux缓存文件地址,如何遍历linux内核中的文件地址空间的页面缓存树(基数树)相关推荐

  1. Linux中文件描述符1,linux内核中的文件描述符(一)--基础知识简介

    原标题:linux内核中的文件描述符(一)--基础知识简介 Kernel version:2.6.14 CPU architecture:ARM920T Author:ce123(http://blo ...

  2. Linux内核中读写文件数据的方法

    Linux内核中读写文件数据的方法     有时候需要在Linuxkernel--大多是在需要调试的驱动程序--中读写文件数据.在kernel中操作文件没有标准库可用,需要利用kernel的一些函数, ...

  3. 【转】 Linux内核中读写文件数据的方法--不错

    原文网址:http://blog.csdn.net/tommy_wxie/article/details/8193954 Linux内核中读写文件数据的方法     有时候需要在Linuxkernel ...

  4. 如何在linux内核中读写文件

    在VFS的支持下,用户态进程读写任何类型的文件系统都可以使用read和write着两个系统调用,但是在linux内核中没有这样的系统调用我们如何操作文件呢?我们知道read和write在进入内核态之后 ...

  5. 在linux内核中操作文件的方法--使用get_fs()和set_fs(KERNEL_DS)

    在linux内核中操作文件的方法--使用get_fs()和set_fs(KERNEL_DS) #include <linux/kernel.h> #include <linux/mo ...

  6. linux内核中的文件描述符(四)--fd的分配--get_unused_fd

    linux内核中的文件描述符(四)--fd的分配--get_unused_fd Kernel version:2.6.14 CPU architecture:ARM920T Author:ce123( ...

  7. linux内核中的文件描述符(一)--基础知识简介

    linux内核中的文件描述符(一)--基础知识简介 Kernel version:2.6.14 CPU architecture:ARM920T Author:ce123(http://blog.cs ...

  8. linux内核中的文件描述符(三)--fd的回收

    linux内核中的文件描述符(三)--fd的回收 Kernel version:2.6.14 CPU architecture:ARM920T Author:ce123(http://blog.csd ...

  9. 如何遍历给定目录中的文件?

    本文翻译自:How can I iterate over files in a given directory? I need to iterate through all .asm files in ...

最新文章

  1. org.hibernate.AnnotationException: No identifier specified for entity
  2. MFC类向导添加自定义消息未声明标识符的解决方法
  3. 用history api偷换浏览器历史记录
  4. css怎么更改指定字体颜色,CSS-如何更改禁用输入的字体颜色?
  5. 爬虫是后端吗_北京市互联网后端职位招聘需求分析
  6. 微云存储空间多大_微云免费存储容量由1T降为10G,百度还能坚持多久?
  7. fw325r没有虚拟服务器,FAST FW325R的配置方法教程
  8. 【内网穿透路由器】外网环境下使用Frp内网穿透路由器,实现后台的远程访问
  9. mybatis一对多关联查询分页解决方案
  10. C#(Winform)程序无法使用Windows Media Player 组件播放视频文件
  11. 计算机英语统考试卷分析,英语试卷分析
  12. [第3课] 象形统计图
  13. pr cpu100%_PR插件LUT Mixer2.1.1安装教程
  14. SMALE 实验室投稿期刊选择
  15. ActiveX 控件注册的几种方法 VC++编写
  16. w7计算机新加,win7系统新加硬盘分区的详细步骤
  17. 1399. 统计最大组的数目
  18. 【考试经验】厚积薄发——托福50到97之路
  19. AG6201 HDMI 转 VGA 转换器|AG6201方案设计电路参考
  20. 【学习资料】心田花开:人教版小学二年级语文《揠苗助长》知识点

热门文章

  1. 权限控制的两种主要方式详述
  2. 解决log4j2漏洞遭到挖矿、僵尸进程病毒攻击
  3. 第一行代码学习笔记第八章——运用手机多媒体
  4. 屏蔽Crash 提示框的两种方式
  5. 一文搞定JS中的DOM基础与进阶
  6. c语言快速排序案例,什么是快速排序?C语言数组快速排序例子
  7. python素数判断代码_Python 判断101-200之间有多少个素数,并输出所有素数
  8. 设计模式的理解:桥模式 Bridge
  9. Cpp 对象模型探索 / new 对象时加括号和不加括号时的差别
  10. php r echo_PHP中echo(),print(),print_r()的区别是什么?