zoukankan      html  css  js  c++  java
  • linux主次编号

    字符设备通过文件系统中的名子来存取. 那些名子称为文件系统的特殊文件, 或者设备文 件, 或者文件系统的简单结点; 惯例上它们位于 /dev 目录. 字符驱动的特殊文件由使用 ls -l 的输出的第一列的"c"标识. 块设备也出现在 /dev 中, 但是它们由"b"标识. 本章 集中在字符设备, 但是下面的很多信息也适用于块设备.

    如果你发出 ls -l 命令, 你会看到在设备文件项中有 2 个数(由一个逗号分隔)在最后修 改日期前面, 这里通常是文件长度出现的地方. 这些数字是给特殊设备的主次设备编号. 下面的列表显示了一个典型系统上出现的几个设备. 它们的主编号是 1, 4, 7, 和 10, 而

    次编号是 1, 3, 5, 64, 65, 和 129.

    crw-rw-rw-

    1

    root

    root

    1,

    3

    Apr

    11

    2002

    null

    crw-------

    1

    root

    root

    10,

    1

    Apr

    11

    2002

    psaux

    crw-------

    1

    root

    root

    4,

    1

    Oct

    28

    03:04

    tty1

    crw-rw-rw-

    1

    root

    tty

    4,

    64

    Apr

    11

    2002

    ttys0

    crw-rw----

    1

    root

    uucp

    4,

    65

    Apr

    11

    2002

    ttyS1

    crw--w----

    1

    vcsa

    tty

    7,

    1

    Apr

    11

    2002

    vcs1

    crw--w----

    1

    vcsa

    tty

    7,1

    29

    Apr

    11

    2002

    vcsa1

    crw-rw-rw-

    1

    root

    root

    1,

    5

    Apr

    11

    2002

    zero

    传统上, 主编号标识设备相连的驱动. 例如, /dev/null 和 /dev/zero 都由驱动 1 来管 理, 而虚拟控制台和串口终端都由驱动 4 管理; 同样, vcs1 和 vcsa1 设备都由驱动 7 管理. 现代 Linux 内核允许多个驱动共享主编号, 但是你看到的大部分设备仍然按照一个 主编号一个驱动的原则来组织.

    次编号被内核用来决定引用哪个设备. 依据你的驱动是如何编写的(如同我们下面见到的), 你可以从内核得到一个你的设备的直接指针, 或者可以自己使用次编号作为本地设备数组 的索引. 不论哪个方法, 内核自己几乎不知道次编号的任何事情, 除了它们指向你的驱动 实现的设备.

  • 相关阅读:
    分西瓜(dfs)
    括号配对(栈)
    gcd表(欧几里得定理)
    整数性质(拓展欧几里得算法)
    欧几里得算法(求最大公约数)拓展欧几里得算法
    删除元素(二分查找)
    括号配对问题
    公司组织看电影(综合)
    取余数(%)
    幼儿园分苹果(/)
  • 原文地址:https://www.cnblogs.com/fanweisheng/p/11138432.html
Copyright © 2011-2022 走看看