linux 设备管理 (三) linux 设备管理实践

devtmpfs 静态设备节点 udev 能否启动 dev是否变化 sys是否变化
0 0 0 0(A) - -
0 0 1 0(A) - -
0 1 0 1 0 1
0 1 1 1 0(F)(H) 1
1 0 0 1 1 1
1 0 1 1 1 1
1 1 0 1 1 1
1 1 1 1 1(E) 1
2 0 0 0(A) - -
2 0 1 0(A) - -
2 1 0 1 0(G) 1
2 1 1 1 0(D) 1

devtmpfs
    0:  CONFIG_DEVTMPFS=n
        CONFIG_DEVTMPFS_MOUNT=n
    1:
        CONFIG_DEVTMPFS=y
        CONFIG_DEVTMPFS_MOUNT=y
    2:
        CONFIG_DEVTMPFS=y
        CONFIG_DEVTMPFS_MOUNT=n

静态设备节点
	0 表示 无
	1 表示 有
    在/dev下手动创建了两个节点,并制作rootfs
	crw-------    1 root     root        5,   1 Jan 15 08:20 console
	crw-rw-rw-    1 root     root        1,   3 Jan 15 08:20 null


udev
	0 表示 无
	1 表示 有
  	eudev-3.2.9 自启动
    没有在 /etc/fatab中添加 udev的挂载
能够启动
	0 表示 不能
	1 表示 能
    能够启动后提供一个可供交互的shell
dev是否变化
	0 表示 无
	1 表示 有
    插入一个字符设备驱动(B),dev下是否有新的节点产生
sys是否变化
	0 表示 无
	1 表示 有
    插入一个字符设备驱动(B),sys下是否有新的文件产生
    

        
    
Z:udev /dev  devtmpfs defaults 0 0 
W:udev /dev  tmpfs defaults 0 0 
A:
	循环报错找不到 /dev/console 
F:/etc/fstab 中增加 Z ,运行报错mount: mounting udev on /dev failed : No such device ,能启动 , sys与dev状况与添加前相同
H:
	A1:启动成功后, 执行 mount  -t devtmpfs udev /dev , 报错 mount: mounting udev on /dev failed: No such device
	B1.启动成功后, 执行 mount  -t tmpfs  udev /dev 成功, 查看 /dev 下面没有任何文件
	B2.重启 udevd , 查看 /dev 下面 有一些文件
		# ls /dev/ -R 
		/dev/:
		fd      kmsg    stderr  stdin   stdout
D:/etc/fstab 中增加 Z ,正常启动, dev节点正常出现,sys与添加前相同
    mount 打印 udev on /dev type devtmpfs (rw,relatime,size=255592k,nr_inodes=63898,mode=755)/etc/fstab 中增加 W ,无法启动, 循环报错找不到 /dev/console
E:/etc/fstab 中增加 Z ,正常启动, sys与dev状况与添加前相同
    mount打印 devtmpfs on /dev type devtmpfs (rw,relatime,size=255592k,nr_inodes=63898,mode=755) 
B:
	代码位置:https://github.com/lisider/arm_vexpress_code/blob/master/driver/char_sample/char_sample.c

G:
	启动后执行 mount -t  devtmpfs devtmpfs /dev/
	然后再插入 驱动 , dev 和 sys 都有变化
	

结论

静态文件 + udev(需要配置自启动和mount) 可以正常启动 且 正常管理设备
devtmpfs(需要配置CONFIG_DEVTMPFS和CONFIG_DEVTMPFS_MOUNT=y) 可以正常启动 且 正常管理设备

devtmpfs 在 /dev 中 不 	会建立 链接文件
udev 	 在 /dev 中   	会建立 链接文件

猜你喜欢

转载自blog.csdn.net/u011011827/article/details/112694813