Chinaunix

标题: 驱动函数什么时候需要进程上下文? [打印本页]

作者: _nosay    时间: 2017-08-16 10:07
标题: 驱动函数什么时候需要进程上下文?
嗨..kenventd是为驱动函数提供进程上下文的,驱动函数什么时候需要进程上下文?

作者: _nosay    时间: 2017-08-16 10:24
回复 1# _nosay

“有阻塞”(直接或间接导致睡眠、加锁)的都需要吧?
作者: nswcfd    时间: 2017-08-16 10:55
比如设备文件提供的fs接口,发生的read/write操作都是在进程上下文啊。

“kenventd是为驱动函数提供进程上下文的”,这句话的上下文是什么?
作者: _nosay    时间: 2017-08-17 13:27
回复 3# nswcfd

我看书上这样说的,可能是指“驱动程序注册的中断处理函数,内部想执行另外一个函数,但被执行函数不能在中断上下文中执行,所以要借用keventd进程的上下文”,所以我想问问具体的场景。
作者: nswcfd    时间: 2017-08-21 17:38
这种需求倒是很常见的,比如这个函数有可能睡眠(比如使用了信号量、有磁盘IO等),不能在中断上下文执行(不能睡眠),就只能异步执行了。
作者: _nosay    时间: 2017-08-21 19:35
回复 5# nswcfd


作者: mordorwww    时间: 2017-08-26 10:31
写设备时自然是驱动函数运行在进程上下文啊
当然当设备发生拥塞时可能不是这样的




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2