2015-03-02 68 views
0

在我的開發環境中,我得到一個內核oops。 有人建議我的一個守護進程正在製作內核oops。Linux內核OOPS可以由用戶進程引起嗎?

這對我來說很有意思。根據定義(http://en.wikipedia.org/wiki/Linux_kernel_oops):

"oops is a deviation from correct behavior of the Linux kernel - one which produces a certain error log " 

因此,例外是在內核代碼。 我做了一些更多的搜索,但無法找到確切的答案。

有人請澄清一下,是否可以由任何用戶進程的內核oops?

P.S. :我知道內核代碼在某些用戶進程上下文中執行(在上下文切換之後),但在上下文切換其執行&而不是用戶進程代碼的內核代碼之後。

回答

2

它們可以在內核中觸發oops。理論上這應該是不可能的,因爲用戶空間進程不應該能夠崩潰或迫使內核進入導致內核哎呀的代碼路徑。

但是,內核中可能存在一些錯誤,使用戶空間進程可以觸發oops。即如果你的進程導致內核哎呀,內核有錯誤,或者你的進程正在使內核與錯誤的硬件交互

+0

你能舉例說明 – Fooo 2015-03-03 00:45:39

+0

@Fooo大概不會。你會舉什麼樣的例子?內核代碼,該代碼? – nos 2015-03-03 07:57:32

0

任何在內核中運行的代碼只有在用戶進行系統調用或者有一個硬件/軟件中斷。

所以內核會發生無論是通過用戶進程哎呀

相關問題