7、Linux设备管理与SCSI子系统详解

Linux设备管理与SCSI子系统详解

1. 设备管理的演变

早期,每次内核重大升级或添加驱动程序时,内核支持的设备类型增多,需要为设备文件名分配新的主、次编号。管理这些编号很困难,因此每个系统在 /dev 目录下都有一个 MAKEDEV 程序来创建设备组。系统升级时,需找到 MAKEDEV 的升级版本并运行以创建新设备。

这种静态系统逐渐变得不合适,于是出现了 devfs ,它是 /dev 内核空间的一种实现,包含当前内核支持的所有设备。但 devfs 存在一系列限制,促使了 udev devtmpfs 的发展。

2. udev介绍

2.1 udev的原理

在Linux中,内核检测到新设备(如插入USB闪存驱动器)时,会向用户空间的 udevd 进程发送通知。 udevd 进程会检查新设备的特性,创建设备文件并进行设备初始化。

然而,在实际应用中,设备文件在系统初始化过程中很早就需要,所以 udevd 必须提前启动。为了创建设备文件, udevd 不能依赖它要创建的任何设备,并且必须快速完成初始启动,以免系统其他部分等待。

2.2 devtmpfs

devtmpfs 文件系统是为解

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值