zoukankan      html  css  js  c++  java
  • [device]/proc/devices and /dev/

    1. /proc/devices和/dev

    • cat /proc/devices

    列出在当前运行的内核中已经注册的设备名称以及设备的Major主设备号。其中的设备信息是驱动程序在加载时生成的,也可以说是insmod的时候生成的。

    • ls /dev/

    设备文件,/dev下得设备是通过创建设备节点生成的,User层也是通过设备节点来访问驱动的,如open("/dev/ttyUSB0", **);

    通过ll /dev可以看到各个设备的Major和Minor主从设备号。

    一个主设备号对应一个驱动程序

    创建设备节点有两种方式

    1. mknod

    mknod device c(or b) major minor, 如mknod ttymxc c 207 16 (imx.c)

    2. 驱动程序创建,如Imx.c中

    -->imx_serial_init(uart_driver)  //uarta_driver在Imx.c的variable中有初始化

      -->uart_register_driver(uart_driver)

        -->tty_register_driver(tty_driver)

          -->MKDEV(tty_driver->major, tty_driver->minor_start);

    备注:/proc/devices和/dev下得生成都涉及到时module形式加载还是built-in内核,也涉及到驱动程序做了哪些事,如imx.c(版本)采用built-in, 且程序中还会创建主从设备节点,这样就不存在insmod和mknod的说法了。

  • 相关阅读:
    精彩的“利益均衡”,尤其是“四”
    用搭积木的方式开发
    从公司层面看信息管理中的问题
    广义信息结构
    Cephfs创建及挂载
    对各类术语表进行记录
    weixin报警脚本
    shell 实现mysql写入操作
    python生成图片
    python实现路由追踪,并生成追踪图片
  • 原文地址:https://www.cnblogs.com/aaronLinux/p/6661615.html
Copyright © 2011-2022 走看看