作者gamed (Maiko)
看板LinuxDev
標題[問題] driver read 觸發
時間Sat Mar 23 00:00:49 2013
大家好
最近專案碰到一些問題
我發現 做了A動作
便會觸發driver裡面的read function
但是 如果作了某些動作後
之後 做了A動作 便不再觸發read 了
我找了很久 都找不到這個read是再那被執行的
我一直以為像read和write這種
都是採無窮迴圈方式去運作
但實際去試 好像又不是這樣
由於我沒有硬體底子
所以希望各位大大可以給我點方向
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.252.178.1
1F:→ askacis:userspace呼叫read system call會到driver的read function 03/23 02:43
2F:→ askacis:查一下搞不好你的fd 被close掉了~ 03/23 02:43
3F:推 mayasky:strace一下~不然就GDB看 一下 03/24 03:13
4F:→ MacacaQQ:得看驅動怎麼寫但是如果是字元裝置的read跟write的話 03/31 00:15
5F:→ MacacaQQ:你程式呼叫的read/write確實會持續呼叫driver裡的rd/wr 03/31 00:16
6F:→ MacacaQQ:read直到driver回傳為零,write直到回傳你所寫入值的大小 03/31 00:17
7F:→ MacacaQQ:驅動才會停止處理你當時呼叫read/write的指令這樣 03/31 00:17