我想为每个节点(/dev/foo[1-99]
)存储特定数据,因为我想将每个节点映射到特定的HW。
我开始使用file->private_data
,但每次打开调用都会将其设置为NULL
。
open()
次来电之间是否存在类似的内容?
答案 0 :(得分:1)
你的问题的答案是“不”(有点),但你误解了cent <- rnorm(n=20, mean=5, sd=1)
num <- c(1:20)
groups2 <- c(rep("DSM Symptoms",9),rep("Non-DSM Symptoms",11))
data2 <- data.frame(num, cent, groups2)
ggplot(data2, aes(x=num, y=cent, fill=groups2, colour=groups2)) +
geom_line(color='#666666', size=0.7) +
geom_point() +
ylab('Strength Centrality') + xlab ('Symptoms') +
scale_x_reverse() +
scale_x_continuous(breaks = c(1:20)) +
coord_flip() +
theme_bw() +
theme(panel.grid.minor.y = element_blank())
的用法。您可以在file->private_data
文件操作处理程序中设置它,以便您的其他文件操作处理程序函数可以在以后使用它。您的open
文件操作处理程序可以使用open
中的设备编号来决定打开哪些硬件设备,并将inode->i_rdev
设置为指向该设备的专用数据结构。 / p>
请注意,file->private_data
是“主要”和“次要”设备编号的组合。您可以使用inode->i_rdev
或MAJOR(inode->i_rdev)
来提取主要部分,也可以使用imajor(inode)
或MINOR(inode->i_rdev)
来提取次要部分。根据您注册设备的方式,此主要/次要拆分可能对您有用,也可能没有用。在任何情况下,您的驱动程序都会注册一系列设备编号,iminor(inode)
值将在该范围内。
我的第一段中的“(类型)”是因为驱动程序看到的inode->i_rdev
值的范围是持久的,直到它取消注册它们(然后它将不再显示他们!)。