zoukankan      html  css  js  c++  java
  • linux驱动操作

    Linux字符驱动操作:

    1、cat /proc/devices    #查看未被使用的设备号

    2、insmod memdev.ko   #安装驱动模块

      安装后,可通过1)查看设备号。

    3、rmmod memdev.ko   #卸载驱动模块

    4、通过“mknod /dev/memdev0 c $() 0 ”命令创建"/dev/memdev0"设备节点

         $()就是执行2)后的设备号

    5、rm /dev/memdev0   #删除创建的字符设备

    Linux驱动:向模块传递参数

    1、module_param(name, type, perm);  #传递单个参数

          name 既是用户看到的参数名,又是模块内接受参数的变量;
          type 表示参数的数据类型,是下列之一:byte, short, ushort, int, uint, long, ulong, charp, bool, invbool;
          perm 指定了在sysfs中相应文件的访问权限。访问权限与linux文件访问权限相同的方式管理,如0644,或使用stat.h中的宏如S_IRUGO表示。
                0    表示完全关闭在sysfs中相对应的项。
                #define S_IRUSR    00400 文件所有者可读 
                #define S_IWUSR    00200 文件所有者可写
                #define S_IXUSR    00100 文件所有者可执行
                #define S_IRGRP    00040 与文件所有者同组的用户可读
                #define S_IWGRP    00020
                #define S_IXGRP    00010
                #define S_IROTH    00004 与文件所有者不同组的用户可读
                #define S_IWOTH    00002
                #define S_IXOTH    00001

    典型地用法如下:
      static unsigned int int_var = 0;
      module_param(int_var, uint, S_IRUGO);
           insmod xxxx.ko int_var=x

    2、 module_param_array(para , type , &n_para , perm)   #传递多个参数

      其中,para既是外部模块的参数名又是程序内部的变量名,type是数据类型,perm是sysfs的访问权限。指针nump指向一个整数,其值表示有多少个参数存放在数组para中。
      para:参数数组; 数组的大小才是决定能输入多少个参数的决定因素.
      n_para:参数个数; 这个变量其实无决定性作用;只要para数组大小够大,在插入模块的时候,输入的参数个数会改变n_para的值,最终传递数组元素个数存在n_para中.

    典型地用法如下:
      static int para[MAX_FISH];
      static int n_para;
      module_param_array(para , int , &n_para , S_IRUGO); 

  • 相关阅读:
    centos7.6 使用yum安装mysql5.7
    解决hadoop本地库问题
    docker-compose 启动警告
    docker 安装zabbix5.0 界面乱码问题解决
    docker 部署zabbix问题
    zookeeper 超时问题
    hbase regionserver异常宕机
    (转载)hadoop 滚动升级
    hadoop Requested data length 86483783 is longer than maximum configured RPC length
    zkfc 异常退出问题,报错Received stat error from Zookeeper. code:CONNECTIONLOSS
  • 原文地址:https://www.cnblogs.com/mofei004/p/8952238.html
Copyright © 2011-2022 走看看