[問題] device和interrupt相關資訊的問題...

看板LinuxDev作者 (babuturtle)時間15年前 (2009/02/18 10:35), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/2 (看更多)
會注意到是因為有朋友去面試linux driver相關的工作的時候被問到 後來查了一下這問題應該是從網路抓出來的 有點像是大學期中期末會出的那種考題 雖然怎麼看都像是書上的問題但是不清楚是哪本... 而且以觀念上來說應該是不限定linux啦 http://6004.csail.mit.edu/currentsemester/tutprobs/realtime.html 在這邊簡單把問題po一下 附上英文原文免得我的爛英文翻錯有人能指正 A computer system has three devices whose characteristics are summarized in the following table: 一個電腦系統有三個裝置 特性如下表所示: 裝置 服務時間 中斷頻率 被允許的latency...? Device Service Time Interrupt Frequency Allowable Latency D1 400 us 1/(800us) 400us D2 250 us 1/(1000us) 50us D3 100 us 1/(800us) 300us Service time indicates how long it takes to run the interrupt handler for each device. The maximum time allowed to elapse between an interrupt request and the start of the interrupt handler is indicated by allowable latency. 服務時間表示每個裝置去跑中斷函式所需要花的時間 而呼叫中斷到開始進行中斷函式之間的最大時限則是由allowable latency決定 (1) If a program P takes 100 seconds to execute when interrupts are disabled, how long will P take to run when interrupts are enabled? 如果一個程式P 在中斷被關閉的時候需要花100秒去執行 在中斷被開啟後P要花多少時間去執行? Ans: 這個還ok 就D1 D2 D3中斷的服務時間x中斷頻率 D1:400us * 1/(800us)=0.5 表示D1占用CPU 50% D2:250us * 1/(1000us)=0.25 表示D2占用CPU 25% D3:100us * 1/(800us)=0.125 表示D3占用CPU 12.5% 還剩下12.5%可以給P用 (1/0.125)*100=800秒 (2) Can the requirements given in the table above be met using a weak priority ordering among the interrupt requests? 根據上表 我們可以在中斷要求的時候採用weak優先權嗎? Ans: No. Once D1 or D3 start running, we will miss allowable latency for D2 (3) Can the requirements given in the table above be met using a strong priority ordering among the interrupt requests? 根據上表 我們可以在中斷要求的時候採用強制優先權嗎? Ans: Yes, if priority is D2 > D3 > D1. 主要是(2) (3)兩個問題的答案我不清楚原因是甚麼... 關鍵應該是Allowable Latency這名詞  不知道有沒有前輩能稍微解釋一下Allowable Latency對於中斷要求的影響... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.229.203.88
文章代碼(AID): #19ctFLIf (LinuxDev)
文章代碼(AID): #19ctFLIf (LinuxDev)