Chinaunix首页 | 论坛 | 博客
  • 博客访问: 847754
  • 博文数量: 366
  • 博客积分: 10267
  • 博客等级: 上将
  • 技术积分: 4290
  • 用 户 组: 普通用户
  • 注册时间: 2012-02-24 14:04
文章分类

全部博文(366)

文章存档

2012年(366)

分类: 网络与安全

2012-02-27 15:33:16

 Major and Minor Numbers
  内核通过major号来识别设备,下面的命令列出的是系统上所连接的设备及其major number,第一列就是设备的major number.
  $ cat /proc/devices
  Character devices:
  1 mem
  4 /dev/vc/0
  4 tty
  5 /dev/tty
  5 /dev/console
  5 /dev/ptmx
  7 vcs
  10 misc
  13 input
  14 sound
  116 alsa
  128 ptm
  136 pts
  180 usb
  195 nvidia
  226 drm
  254 devfs
  Block devices:
  3 ide0
  22 ide1
  $ls -l /dev
  ……
  crw------- 1 root root 119, 0 Apr 24 11:34 vmnet0
  crw------- 1 root root 119, 1 Apr 24 11:34 vmnet1
  crw------- 1 root root 119, 2 Apr 24 11:34 vmnet2
  crw------- 1 root root 119, 3 Apr 24 11:34 vmnet3
  crw------- 1 root root 119, 4 Apr 24 11:34 vmnet4
  crw------- 1 root root 119, 5 Apr 24 11:34 vmnet5
  crw------- 1 root root 119, 6 Apr 24 11:34 vmnet6
  crw------- 1 root root 119, 7 Apr 24 11:34 vmnet7
  crw------- 1 root root 119, 8 Apr 24 11:34 vmnet8
  ……
  可以看到他们的major number 是119,但他们的minor number不同。分别是0~8.
  内核只关心major number,而minor number 是由设备驱动来区别的。
  内核内部,类型dev_t存储着设备号,且定义了一组宏来维护它。
  MKDEV(int major,int minor);//return dev_t
  MAJOR( dev_t dev);
  MINOR (dev_t dev);
  比如,我们用mknod建立一个新的设备文件
  #mknod /dev/newchr c 50 0
  建立/dev/newchr设备文件,类型是c(char,字符型),major number 是50,minor number 是0.mknod的用法可以用man来查看。

摘自IT者安全网() 原文:
阅读(355) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~