函数:get_device()
函数get_device()用来增加输入参数代表的逻辑设备的引用计数,使引用计数加1,设备的引用计数器是dev->kobj.kref.refcount
的值,即函数更改字段refcount的值。
文件包含:
#include <linux/device.h>
函数定义:
在内核源码中的位置:linux-3.19.3/drivers/base/core.c
函数定义格式:
struct device *get_device(struct device *dev)
输入参数说明:
- 函数
get_device()
的输入参数是struct device结构体类型的指针,代表增加计数的逻辑设备,此结构体在酷客教程函数device_create()的分析中已有详细说明。
返回参数说明:
- 函数
get_device()
的返回结果是struct device结构体类型的变量,返回的结果与传入的参数代表的是同一个变量,只是此时变量的引用计数器的值增大了1。
实例解析:
函数get_device()和函数put_device()一般配对使用,测试程序及结果分析在此没有列出,详细信息请读者参考酷客教程函数put_device()的分析文档。
函数get_device()会增加设备的引用计数,而此次增加只是想说明函数的作用,然而当设备的引用计数不是0时,设备的删除会出错,所以在增加之后应该人工减小设备的引用计数。函数put_device()用于减少设备的引用计数,为了保证安全,在函数get_device()之后调用都应使用函数put_device()进行设备的引用计数减少操作。
酷客网相关文章:
评论前必须登录!
注册