2012-12-11 27 views
1

好吧,所以我編寫了這個HW分配,但可以使用一些幫助或洞察力。我知道我讀過到處說你不應該打開的文件的模塊,但它我們的任務......Linux模塊編程失敗,並陷入循環

反正我的模塊代碼是在這裏: http://pastebin.com/LU8hWraL

和我的用戶級別的代碼是在這裏: http://pastebin.com/RC0Zk1kQ

好吧,我的問題是,它有時會起作用,其他時候它不會工作,大多數時候它不工作,它捕獲內核循環,我不明白是什麼導致問題以及我如何解決它。任何關於這種情況的幫助都會令人難以置信的讚賞,我不得不經常關閉並重新啓動虛擬機而感到沮喪。

即使有人告訴我如何找到錯誤,當我的虛擬機循環像這樣......?

+1

您可能想嘗試在內核上使用調試器。 –

+0

在內核中調試時找不到很多好的來源...有什麼建議嗎? –

回答

0

首先,您可能想使用kernel_read(),不要自己去做這些事情。

有可能會在這裏

  • 兩個問題你給&filpRead->f_pos作爲參數傳遞給readwrite,這是內核內部使用。
  • 當您加密或解密數據時,您可能得不到相同數量的字節。因此,在閱讀時寫入相同數量的數據可能也是一個問題。

因爲我已經看了內核編程,因此在一段時間以前都用了一點鹽。