亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 2833 | 回復: 6
打印 上一主題 下一主題

請問如果在中斷上下文中調用可能引起阻塞的代碼到底會怎么樣? [復制鏈接]

論壇徽章:
0
跳轉到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2006-08-01 14:07 |只看該作者 |倒序瀏覽
是不是中斷處理程序就永遠不能繼續(xù)執(zhí)行了?

論壇徽章:
0
2 [報告]
發(fā)表于 2006-08-01 17:47 |只看該作者
原帖由 dengcainiao 于 2006-8-1 14:07 發(fā)表
是不是中斷處理程序就永遠不能繼續(xù)執(zhí)行了?


在solaris下,這樣會引起系統(tǒng)panic的

論壇徽章:
0
3 [報告]
發(fā)表于 2006-08-01 23:01 |只看該作者
fb下中斷處理已經(jīng)線程化,可以休眠。不過休眠以后這個線程就不能再喚醒了。

論壇徽章:
0
4 [報告]
發(fā)表于 2006-08-02 08:23 |只看該作者
原帖由 richardhesidu 于 2006-8-1 23:01 發(fā)表
fb下中斷處理已經(jīng)線程化,可以休眠。不過休眠以后這個線程就不能再喚醒了。


所謂中斷線程化,也是低優(yōu)先級的中斷。
高優(yōu)先級的中斷還是特殊的上下文,不能夠阻塞的。

所以在solaris或者bsd這樣的中斷線程化的系統(tǒng)里,在高優(yōu)先級中斷睡眠,基本上就是panic或者hang了

論壇徽章:
0
5 [報告]
發(fā)表于 2006-08-02 11:07 |只看該作者
原帖由 richardhesidu 于 2006-8-1 23:01 發(fā)表
fb下中斷處理已經(jīng)線程化,可以休眠。不過休眠以后這個線程就不能再喚醒了。


不知道fb是什么? 如果中斷線程化指的是RT內核中實現(xiàn)的那樣, 中斷handler在線程中執(zhí)行,這樣的ISR可以阻塞。

如果是到現(xiàn)在為止的2.6.18-RC3的內核,在中斷handler中執(zhí)行導致阻塞的代碼,內核會把調用棧打出來,提示在atomic中調用schedule(),這個判斷在schedule().  假設沒有這些判斷,允許你sleep,我想到了下面的結果:
1. 如果你的handler關中斷運行(flags & IRQF_DISABLED),
    a 可能會導致系統(tǒng)死掉,這取決于你的sleep是否因為其它中斷 handler,
    b 系統(tǒng)延遲很大
2. 如果你的系統(tǒng)handler開中斷運行,
    a 系統(tǒng)死掉, 如果你用4K內核棧
    b 系統(tǒng)死掉,即使handler運行在任務棧中,因為任務的喚醒不一定取決于這次阻塞,如信號等

而且,根據(jù)sleep是否因為和哪些不同的上下文互斥,異常的現(xiàn)象需要具體分析。但你的那個設備肯定是不能正常工作的。

所謂中斷線程化,也是低優(yōu)先級的中斷。
高優(yōu)先級的中斷還是特殊的上下文,不能夠阻塞的。

所以在solaris或者bsd這樣的中斷線程化的系統(tǒng)里,在高優(yōu)先級中斷睡眠,基本上就是panic或者hang了

是這樣的,在Linux的RT Patch中,如時鐘中斷肯定不能線程化,所以中斷handler中執(zhí)行導致阻塞的代碼,肯定有問題。

論壇徽章:
0
6 [報告]
發(fā)表于 2006-08-02 11:24 |只看該作者
學習了。。。。。
對中斷線程話的概念完全不了解。不知道是不是用現(xiàn)在內核中用工作隊列處理工作下半部一樣。將中斷處理程序掛到一個內核線程下的工作隊列里?

論壇徽章:
0
7 [報告]
發(fā)表于 2006-08-02 13:19 |只看該作者
原帖由 dengcainiao 于 2006-8-2 11:24 發(fā)表
學習了。。。。。
對中斷線程話的概念完全不了解。不知道是不是用現(xiàn)在內核中用工作隊列處理工作下半部一樣。將中斷處理程序掛到一個內核線程下的工作隊列里?


solaris下低于時鐘中斷或者是dispatch lock級別以下的中斷,如網(wǎng)卡中斷,是以內核線程的形式存在的。這些線程是per CPU的,每個level一個,組成一個線程list,掛在cpu structure的結構里。

這些線程具有比一般內核線程高的優(yōu)先級,可以保證盡快執(zhí)行。

[ 本帖最后由 Solaris12 于 2006-8-2 13:20 編輯 ]
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復

  

北京盛拓優(yōu)訊信息技術有限公司. 版權所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關心和支持過ChinaUnix的朋友們 轉載本站內容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP