什么

2013-07-11 22 views
3

有谁可以给​​我关于struct cdevstruct device之间的差额部分的解释结构的cdev结构和设备之间的区别?什么

回答

4

在最低级别,Linux系统中的每个设备都由struct device的实例表示。设备结构包含设备模型核心模拟系统所需的信息。然而,大多数子系统跟踪关于他们托管的设备的附加信息。因此,设备以裸设备结构来表示是很少见的;相反,该结构像kobject结构一样,通常嵌入到设备的更高层表示中。 more

struct cdev,但是,是用于由内核表示字符设备内部的结构。 more

+0

谢谢〜多了一个问题,即它是否是更好的''在结构cdev'结构device'embedded? –

+0

'struct device'和'struct cdev'是内核的内部结构,并且相互嵌套意味着您正在修改内核代码,这会产生严重后果。相反,您可以在设备的主要结构中嵌入'struct device'和'struct cdev'。例如[链接](http://lxr.free-electrons.com/source/fs/fuse/cuse.c#L56) – microMolvi

+0

另见**器件结构嵌入在** [LDD3](HTTP:// LWN。 net/images/pdf/LDD3/ch14.pdf)第383页 – microMolvi