1
Q
調度中斷處理程序
A
回答
2
假定你,直到你解決斷線只是這樣做了調試的目的,你可以嘗試調用你的ISR(減去其上下文保存代碼)內timer_interrupt
在arch/*/kernel/time.c
代碼重新啓用中斷之前。如果您需要比滴答來源更慢的速率,您將不得不添加一些代碼,以使其僅觸發Y滴答中的一個。
如果在中斷上下文中運行ISR並不是您的目標,而您只是希望獲得下半部分的驅動程序代碼以便定期運行,則可以使用定時器API而不是黑客行爲timer_interrupt
。在這種情況下,您的ISR代碼將不會在中斷環境中執行。
如果您需要比tick來源更快的速率,您可能需要使用highres計時器。這裏再一次,你將不會在中斷環境中執行。
here有很好的介紹highres定時器和定時器API。 timer_create()
man page中有一個示例用戶空間計時器。對於內核空間計時器,您需要hrtimer_init()
和hrtimer_start()
。有一個例子hrtimer here。爲了讓這個工作週期性地工作,我想你會在每次觸發時重置定時器,或者在這個SE post中使用hrtimer_forward()
解決方案。
相關問題
- 1. 在中斷處理程序
- 2. 中斷和調度程序
- 3. 發出中斷時不會調用中斷處理程序
- 4. 處理中斷的程序,即中斷處理程序存儲在哪裏?
- 5. 程序集編程和中斷處理
- 6. CQRS EventStore調度程序錯誤處理
- 7. Typo3調度程序處理異常?
- 8. 如何從處理程序中退出異步調度程序?
- 9. 在Linux中斷處理程序中調用getrawmonotonic()是否安全?
- 10. x86:中斷處理程序循環
- 11. 起價中斷處理程序
- 12. 中斷處理程序時間記帳
- 13. Linux分頁和中斷處理程序
- 14. 中斷處理程序未註冊
- 15. CodeSourcery CS3中斷處理程序覆蓋
- 16. 如何中斷事件處理程序
- 17. 石英調度程序中斷作業?
- 18. 當調用free_irq時觸發中斷處理程序
- 19. CPU x86 - 外部中斷調用異常處理程序
- 20. 多處理程序中調用subprocess.Popen()時發生斷管。()
- 21. 如何處理從子程序中調用子程序的中斷?
- 22. 處理程序處理消息時UI正在中斷
- 23. 如何使用request_threaded_irq,以便在線程化處理程序工作時調用中斷處理程序?
- 24. 模板處理程序方法調度程序
- 25. Android/Java - 使用處理程序或調度程序延遲Runnables?
- 26. Solr數據導入處理程序調度程序錯誤
- 27. MIPS中斷不會跳轉到中斷處理程序
- 28. 瞭解中斷/中斷處理程序,PIC
- 29. Linux調度程序是否知道硬件中斷(調度程序抖動)
- 30. 多箇中斷處理程序共享地址如何多箇中斷處理程序共享地址0x00000018
如何使用計時器API來計劃每1毫秒運行ISR(我假設你指的是在'timer_list'上調用'add_timer()')?這似乎只給你一個單一的調用。 – 2013-04-24 18:36:29
@IsaacKleinman:編輯我的答案,試圖回答你的評論 – 2013-04-24 19:27:11