2013-08-20 55 views
1

我的問題涉及內核空間編程。 讓我們假設我們有2個處理程序: - 硬件中斷 -/proc文件內核空間中的優先級

是否有可能,而硬件中斷處理程序執行由/ proc中處理,因爲用戶編寫的東西放到/ proc文件中斷呢?

在這種情況下,這兩個處理程序的優先級是什麼?

回答

1

讓我試着回答你的問題或讓你的問題更清楚。

硬件處理程序正在中斷上下文中運行。當然,一個硬件處理器分爲兩個部分:一個在中斷上下文中執行的較小但關鍵的處理器,另一個是較大的處理器,可在軟irq上下文中執行。

雖然「/ proc文件處理程序」(您稱之爲)在用戶進程上下文中執行。當你訪問/ proc文件時,處理程序被觸發並執行。

在硬件中斷上下文中,有時會禁用本地硬件中斷。在soft-irq上下文中,某個時候,BH被禁用或內核搶佔被禁用。也就是說,在中斷環境中,某個時間點不會發生。所以基於此,我可以說「/ proc文件處理程序」的優先級低於「中斷處理程序」。

至於問題「硬件中斷處理程序執行時是否有可能通過/ proc處理程序中斷它,因爲用戶將某些內容寫入/ proc文件?」。在當前的內核中,這是不可能的。我認爲如果你願意,它不值得入侵,因爲它沒有任何意義。