2010-04-01 88 views
-3

是否有內核提供的任何保護?因爲當我們嘗試從用戶空間使用malloc()分配內存時,內核允許分配大約124 MB的內存,當我們嘗試寫入內存時,內核崩潰。如果 是內核內存區域的保護,則不會發生這種情況通過malloc()從用戶空間分配內核內存的問題?

+3

顯示完整的代碼並描述環境。它是「內核」而不是「內核」。 – ygrek 2010-04-01 09:47:45

+0

@basu sagar:您是否打算撤銷對問題標題的拼寫更正? – 2010-04-06 06:57:55

+1

@sagar - 如有可能,請張貼有問題的代碼。 – 2010-04-06 10:55:46

回答

5

在內核空間中沒有內存保護。再次,malloc()在內核空間中不可用,那麼你在問什麼?

1

Allocating memory in the kernel需要特別考慮。如果您可以發佈您的代碼,或者更好地解釋您對內核空間中「保證」內存的需求,這將非常有幫助。

請記住,內核空間_infinite_,在用戶空間的內核就是管理缺乏。內核內的內存和許多消費者競相使用它的限制非常非常嚴格。

再一次,如果你發佈你的代碼,這裏的許多可以幫助你想出一個更好的設計,我相信這是你可能需要的。

請注意,鏈接是從2006年。這說明了我的另一點,什麼版本你正在使用的內核?