在模块中,通过查询super_blocks列表,来遍历系统中的所有super_block,但是出现与下面类似的错误:

http://stackoverflow.com/q/5051111/941650

也可以参考他的解决方法,到System.map中去查找真实地址,不过这样不是解决问题的最好方法。

先贴出当前的代码

   1: #include <linux/module.h>

   2: #include <linux/fs.h>

   3:  

   4: MODULE_LICENSE("GPL");

   5:  

   6:  

   7: void printRawData(unsigned long size, const u_char* data)

   8: {

   9:     if (size == 0)

  10:     {

  11:         return;

  12:     }

  13:  

  14:     printk("Memory at 0x%08x\n", (u32)data);

  15:     unsigned long i = 0;

  16:     for (i=0;i<16;i++)

  17:     {

  18:         printk("%4X", i);

  19:     }

  20:     printk("\n");

  21:     for (i=0;i<16;i++)

  22:     {

  23:         printk("%4s", "__");

  24:     }

  25:  

  26:     char lineSummary[17] = {0,};

  27:     unsigned long pos = 0;

  28:     for (i=0;i<size;i++)

  29:     {

  30:         if ((pos = i % 16) == 0)

  31:         {

  32:             if (i != 0)

  33:             {

  34:                 printk(" ---- %s\n", lineSummary);

  35:                 memset(lineSummary, 0, 17);

  36:             }

  37:             else

  38:             {

  39:                 printk("\n");

  40:             }        

  41:         }

  42:  

  43:         printk("  %02X", *(data + i));

  44:  

  45:         if (*(data + i) >= 0x20 && *(data + i) <= 0x7E)

  46:         {

  47:             lineSummary[pos] = *(data + i);

  48:         }

  49:         else

  50:         {

  51:             lineSummary[pos] = ' ';

  52:         }

  53:     }

  54:  

  55:     if (size % 16 != 0)

  56:     {

  57:         for (i=0;i<16 - (size%16);i++)

  58:         {

  59:             printk("    ");

  60:         }

  61:     }

  62:  

  63:     printk(" ---- %s\n", lineSummary);

  64:     printk("\n");    

  65: }

  66:  

  67: void AnalyzeSuperBlock()

  68: {

  69:     struct super_block* item;

  70:     struct list_head * super_blocks = 0xc1778bc0;

  71:  

  72:     list_for_each_entry(item,super_blocks,s_list)

  73:     {

  74:         printk("super_block 0x%08X %s\n", item, item->s_id);

  75:     }

  76: }

  77:  

  78: static int pslist_init()

  79: {

  80:     printk("###################################################################\n");

  81:     AnalyzeSuperBlock();

  82:     return 0;

  83: }

  84:  

  85: static void pslist_exit()

  86: {

  87:     printk("###################################################################\n");

  88: }

  89:  

  90:  

  91:  

  92: module_init(pslist_init);

  93: module_exit(pslist_exit);

结果:

   1: [153479.359674] ###################################################################

   2: [153479.359677] super_block 0xF5404800 sysfs

   3: [153479.359678] super_block 0xF5404A00 rootfs

   4: [153479.359679] super_block 0xF5404C00 bdev

   5: [153479.359680] super_block 0xF5404E00 proc

   6: [153479.359681] super_block 0xF545AC00 tmpfs

   7: [153479.359682] super_block 0xF545AE00 devtmpfs

   8: [153479.359683] super_block 0xF5464400 debugfs

   9: [153479.359684] super_block 0xF5464A00 sockfs

  10: [153479.359685] super_block 0xF551F800 pipefs

  11: [153479.359686] super_block 0xF551FA00 anon_inodefs

  12: [153479.359686] super_block 0xF551FC00 securityfs

  13: [153479.359687] super_block 0xF5792200 devpts

  14: [153479.359688] super_block 0xF57A8000 hugetlbfs

  15: [153479.359689] super_block 0xF57A8800 mqueue

  16: [153479.359690] super_block 0xF4C57000 sysfs

  17: [153479.359691] super_block 0xF4C4AC00 tmpfs

  18: [153479.359692] super_block 0xF4DB3C00 fusectl

  19: [153479.359693] super_block 0xF4D57000 sda1

  20: [153479.359694] super_block 0xF4C99600 tmpfs

  21: [153479.359695] super_block 0xF4D3CC00 tmpfs

  22: [153479.359696] super_block 0xEF20DC00 binfmt_misc

  23: [153479.359697] super_block 0xF2F23C00 vboxsf

  24: [153479.359698] super_block 0xEF12AA00 vboxsf

  25: [153479.359699] super_block 0xEE76B800 vboxsf

  26: [153479.359700] super_block 0xF2CBC600 fuse

  27: [153479.359701] super_block 0xEDA70400 vboxsf

  28: [153479.361922] ###################################################################

super_blocks没有导出的更多相关文章

  1. premere cs4绿色版 安装 并且 视频导出 讲解

    最近室友,开始在玩视频剪辑,用的是 premere cs4 绿色版.让他遇到的最大问题也是我之前遇到的最大问题,就是视频导出. 所以我在这里上传一套自己的一点点经验吧. 接下来,我就总结一下 我是怎么 ...

  2. C# Excel导入、导出【源码下载】

    本篇主要介绍C#的Excel导入.导出. 目录 1. 介绍:描述第三方类库NPOI以及Excel结构 2. Excel导入:介绍C#如何调用NPOI进行Excel导入,包含:流程图.NOPI以及C#代 ...

  3. ASP.NET MVC5+EF6+EasyUI 后台管理系统(63)-Excel导入和导出-自定义表模导入

    系列目录 前言 上一节使用了LinqToExcel和CloseXML对Excel表进行导入和导出的简单操作,大家可以跳转到上一节查看: ASP.NET MVC5+EF6+EasyUI 后台管理系统(6 ...

  4. Hawk 5.1 数据导入和导出

    除了一般的数据库导入导出,Hawk还支持从文件导入和导出,支持的文件类型包括: Excel CSV(逗号分割文本文件) TXT (制表符分割文本文件) Json xml Excel 目前来看,Exce ...

  5. CRL快速开发框架系列教程十(导出对象结构)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  6. CRL快速开发框架系列教程九(导入/导出数据)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  7. C#向PPT文档插入图片以及导出图片

    PowerPoint演示文稿是我们日常工作中常用的办公软件之一,而图片则是PowerPoint文档的重要组成部分,那么如何向幻灯片插入图片以及导出图片呢?本文我将给大家分享如何使用一个免费版Power ...

  8. C#中将DataTable导出为HTML的方法

    今天我要向大家分享一种将DataTable导出为到HTML格式的方法.有时我们需要HTML格式的输出数据, 以下代码就可以帮助我们达到目的,. 首先,我们要绑定DataTable和 DataGridV ...

  9. C#使用Aspose.Cells导出Excel简单实现

    首先,需要添加引用Aspose.Cells.dll,官网下载地址:http://downloads.aspose.com/cells/net 将DataTable导出Xlsx格式的文件下载(网页输出) ...

随机推荐

  1. elasticsearch+kibana+fluentd 日志搜集集群搭建

    使用fluentd来搜集Nginx日志,准备3台服务器,列表如下 node1 elasticsearch/kibana/td-agent node2 td-agent/nginx node3 td-a ...

  2. Mybatis笔记 - SQL标签方法

    Mpper.xml映射文件中定义了操作数据库的sql,并且提供了各种标签方法实现动态拼接sql.每个sql是一个statement,映射文件是mybatis的核心. 一.内容标签 1.NamePlac ...

  3. ubuntu 18.04 自启动

    按下面二种方式打开自启动设置窗口,设置启动参数:(两种方式) 方式一:在桌面左上角的搜索框中输入Startup Applications,打开,点击Add,Name处填open_terminal(自定 ...

  4. idea 查看字节码 bytecode插件 (jclasslib Bytecode Viewer、ASM Bytecode Viewer )

    文章目录 jclasslib Bytecode Viewer ASM Bytecode Viewer jclasslib Bytecode Viewer 然后重启idea===>重新编译(构建项 ...

  5. 使用vue-cli3时怎么mock数据

    应用场景 在前后端分离的开发模式中,后端给前端提供一个接口,由前端向后端发请求,得到数据后前端进行渲染. 由于前后端开发进度的不统一,前端往往使用本地的测试数据进行数据渲染的测试. 如何配置 在vue ...

  6. Django框架(二十四)—— Django rest_framework-视图组件

    目录 视图组件 一.基本视图 二.自定义的封装视图 三.利用mixin类和generice类编写视图 1.使用 2.源码 四.利用generics 下的ListCreateAPIView,Retrie ...

  7. Jmeter+ InfluxDB+Grafana安装配置

    前置条件: 系统:windows jmeter:5.1 InfluxDB安装 下载InfluxDB-v1.7.9和Chronograf-v1.7.14(InfluxDB的可视化web端). 下载完成之 ...

  8. FZU 2079 最大获利(线段树+DP)

    Description Sean准备投资一些项目.有n个投资项目,投资第i个项目需要花费Ci元.Sean发现如果投资了某些编号连续的项目就能赚得一定的钱.现在给出m组连续的项目和每组能赚得的钱,请问采 ...

  9. input输入框数字转带千分位的字符串

    数字转带千分位的字符串 思路 先获取要转换的数字,对其进行分割 小数部分具体需要保留多少位,具体处理 整数部分用正则做替换 将小数部分和整数部分合计 代码 注意: 本文是基于 jQuery 写的,稍稍 ...

  10. linux 下新建文件自动加锁的解决办法

    导致文件夹里面无法保存别的文件 sudo chmod 777 -R 文件或目录