私はこれを行ういくつかのサンプルコードを見てきました:
proc_entry->read_proc = module_read;
proc_entry->write_proc = module_write;
ただし、私のモジュールでは、読み取りと書き込みの代わりにioctlを使用しました。これが私のioctl関数プロトタイプです:
int mytimer_ioctl(struct inode *inode, struct file *file, unsigned int fcn, unsigned long args)
読み取りの場合、私の「fcn」はIOCTL_GET_TIMERであり、書き込みの場合、私の「fcn」はIOCTL_SET_TIMERです。
とにかくこのようなことをするために:
proc_entry->read_proc = module_ioctl(IOCTL_GET_TIMER);
proc_entry->write_proc = module_ioctl(IOCTL_SET_TIMER);
しかし、「args」引数を渡さないのですか?
あるいは、module_read関数とmodule_write関数を記述して、それらにioctlを呼び出させるのがより簡単な方法かもしれません。
助けてくれてありがとう!