/proc/iomem和/proc/ioports对应的fops
static int __init ioresources_init(void)
{
    struct proc_dir_entry *entry;
    entry = create_proc_entry("ioports", 0, NULL);
    if (entry)
        entry->proc_fops = &proc_ioports_operations;
    entry = create_proc_entry("iomem", 0, NULL);
    if (entry)
        entry->proc_fops = &proc_iomem_operations;
    return 0;
}
__initcall(ioresources_init);
static const struct file_operations proc_iomem_operations = {
    .open        = iomem_open,
    .read        = seq_read,
    .llseek        = seq_lseek,
    .release    = seq_release,
};
static int iomem_open(struct inode *inode, struct file *file)
{
    int res = seq_open(file, &resource_op); // seq方法集resource_op
    if (!res) {
        struct seq_file *m = file->private_data;
        m->private = &iomem_resource; // 被操作数据iomem_resource
    }
    return res;
}
static const struct file_operations proc_ioports_operations = {
    .open        = ioports_open,
    .read        = seq_read,
    .llseek        = seq_lseek,
    .release    = seq_release,
};
static int ioports_open(struct inode *inode, struct file *file)
{
    int res = seq_open(file, &resource_op); // seq方法集resource_op
    if (!res) {
        struct seq_file *m = file->private_data;
        m->private = &ioport_resource; // 被操作数据ioport_resource
    }
    return res;
}
static const struct seq_operations resource_op = {
    .start    = r_start,
    .next    = r_next,
    .stop    = r_stop,
    .show    = r_show,
};

/proc/iomem和/proc/ioports对应的fops的更多相关文章

  1. cat /proc/iomem

    在proc目录下有iomem和ioports文件,其主要描述了系统的io内存和io端口资源分布. 对于外设的访问,最终都是通过读写设备上的寄存器实现的,寄存器不外乎:控制寄存器.状态寄存器和数据寄存器 ...

  2. 移动端测试===PROC系列之---/proc/pid/stat 如何准确取cpu的值【转】

         /proc/ /stat 包含了所有CPU活跃的信息,该文件中的所有值都是从系统启动开始累计到当前时刻. [root@localhost ~]# cat /proc/6873/stat 68 ...

  3. PROC系列之---/proc/pid/stat

      转自: http://blog.csdn.net/zjl_1026_2001/article/details/2294067 /proc/ /stat 包含了所有CPU活跃的信息,该文件中的所有值 ...

  4. Linux内核内存管理算法Buddy和Slab: /proc/meminfo、/proc/buddyinfo、/proc/slabinfo

    slabtop cat /proc/slabinfo # name <active_objs> <num_objs> <objsize> <objpersla ...

  5. /proc/interrupts 和 /proc/stat 查看中断的情况

    在/proc文件系统下,又两个文件提供了中断的信息. /proc/interrupts 文件中列出当前系统使用的中断的情况,所以某个中断处理没有安装,是不会显示的.哪怕之前安装过,被卸载了. 从左到右 ...

  6. SAS笔记(6) PROC MEANS和PROC FREQ

    PROC MEANS和PRC FREQ在做描述性分析的时候很常用,用法也比较简单,不过这两个过程步的某些选项容易忘记,本文就梳理一下. 在进入正文前,我们先创建所需的数据集TEST_SCORES: D ...

  7. /proc/interrupts 和 /proc/stat 查看中断的情况 (转载)

    转自:http://blog.csdn.net/richardysteven/article/details/6064717 在/proc文件系统下,又两个文件提供了中断的信息. /proc/inte ...

  8. /proc/cpuinfo和/proc/meminfo来查看cpu信息与内存信息

    #一般情况下使用root或者oracle用户查都可以. # 总核数 = 物理CPU个数 X 每颗物理CPU的核数 # 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 --查 ...

  9. 内核、中断和网络 $ sysctl -a | grep ...$ cat /proc/interrupts$ cat /proc/net/ip_conntrack /* may take some time on busy servers */$ netstat$ ss -s

    你的中断请求是否是均衡地分配给CPU处理,还是会有某个CPU的核因为大量的网络中断请求或者RAID请求而过载了? SWAP交换的设置是什么?对于工作站来说swappinness 设为 60 就很好, ...

随机推荐

  1. dubbo相关

    1 面试题:Dubbo中zookeeper做注册中心,如果注册中心集群都挂掉,发布者和订阅者之间还能通信么? 可以的,启动dubbo时,消费者会从zk拉取注册的生产者的地址接口等数据,缓存在本地.每次 ...

  2. 关于mysqli_free_result($result)报错

    运行原来的一个原生的php写的项目,出现mysqli_free_result($result)的警告 Warning: mysqli_free_result() expects parameter 1 ...

  3. R ggplot2 翻转坐标

    p <- ggplot(mpg, aes(class, hwy)) p + geom_boxplot() p + geom_boxplot() + coord_flip()

  4. spark mysql读写

    val data2Mysql2 = (iterator: Iterator[(String, Int)]) => { var conn: Connection = null; var ps: P ...

  5. am335x gpio 控制的另一种方法

    #include <linux/gpio.h>  #include <linux/module.h>  #include <linux/kernel.h>  #in ...

  6. UCOS2_STM32移植详细过程(汇总)

    Ⅰ.概述 笔者发现一个问题,很多初学者,甚至很多工作一两年的人,他们有一种依赖的思想,就是希望从别处获取的软件代码不做任何修改,直接可以运行或者使用.笔者想说,实践才是检验真理的关键,实践才是掌握知识 ...

  7. 组建一台计算机5_硬件5 多位存储器&累加器&初始汇编(1)

    转载请遵循GNU开源宣言.Copyleft ! <2013>, <http://www.cnblogs.com/sciencefans from buaa 华罗庚班> 阅读此文 ...

  8. 代码大全(code complete) 有感

    软件开发的工作内容 问题定义 需求分析 实现计划 总体设计 详细设计 创建即实现(编码和调试) 系统集成 单元测试 校正性维护 功能强化 隐喻 好比监听器看做是某单位的看门老大爷 这里的类比: 通过把 ...

  9. BI入门基础知识-1

    基本概念 ODS---ODS(Operational-Data-Store)是数据仓库体系结构中的一个可选部分,ODS具备数据仓库的部分特征和OLTP系统的部分特征,它是“面向主题的.集成的.当前或接 ...

  10. c/c++学习之c++ 中的list <>容器

    http://blog.csdn.net/mazidao2008/article/details/4802617 push 实例化 即添加 http://www.cnblogs.com/BeyondA ...