好的,所以我正在为硬件分配编程,但可以使用一些帮助或见解。我知道我到处都读过你不应该在模块中打开文件但是我们的任务......
无论如何我的模块代码在这里: http://pastebin.com/LU8hWraL
我的用户级代码在这里: http://pastebin.com/RC0Zk1kQ
好吧,我的问题是它有时会起作用,有时候它不会...大多数时候它不起作用,它会在内核中循环而我不明白是什么导致了这个问题我怎么能解决它。任何有关这种情况的帮助都会令人难以置信,我只是不断地关闭并重启我的VM而感到沮丧。
即使有人告诉我如何在我的VM循环时找到错误......?
答案 0 :(得分:0)
首先,您可能希望使用kernel_read()
,而不是自己做这些事情。
这里可能有两个问题
&filpRead->f_pos
作为参数提供给read
和write
,这是供内核内部使用的。因为我已经看过内核编程了,所以很久以前就拿了两粒盐。