Re: [問題] 關於RTOS preemptive kernel實際排程的 …
※ 引述《neutopia (journey)》之銘言:
: 現在在看 uC/OS已經移植在某chip上的source code
: 發現和書上講的原理有一點差異
: 書上是說只要ISR做完時就會重新排程,由priority最高的task去執行
: 我看的Code只有在system tick timer的ISR裡有作schedule
: 其他都沒有
其他的isr也可能會有,例如你的driver如果用到semaphore
top half的isr去give一個semaphore,然後給bottom half的task去take這個semaphore
那你從pend_semaphore(function名字我有點忘了 印象中是這個)
sorry 手邊沒source code
那邊trace下去可以看到最後會呼叫到OS_Schedule(印象中是這個名字) 重新排程
然後就會做context switch了。 所以還是看你driver的寫法。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 211.20.203.228
推
02/17 23:51, , 1F
02/17 23:51, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):
ASM 近期熱門文章
PTT數位生活區 即時熱門文章