資料介紹
一 定義
當(dāng)UCOS-III轉(zhuǎn)向執(zhí)行另一項(xiàng)新任務(wù)的時候,他保存了當(dāng)前任務(wù)的CPU寄存器到堆棧,并從新任務(wù)的堆棧CPU寄存器載入CPU,這個過程叫做上下文切換
上下文切換需要一些開支,CPU的寄存器越多,開支越大。上下文切換的時間基本取決于有多少個CPU寄存器需要被存儲和載入。上下文切換的代碼是移植UCOS -II 時編寫的,該部分代碼要適用于處理器,這些代碼被放在C和匯編文件中: OS_CPU.H,OS_CPU_C.C,OS_CPU_A.ASM。移植部分在下面會詳細(xì)介紹,根據(jù)不同的CPU架構(gòu),移植的時候需要注意很多不部分細(xì)節(jié)。我們先來看一下常見CPU的結(jié)構(gòu):包含16個整數(shù)寄存器(R0~R15)和一個中斷堆棧寄存器和狀態(tài)寄存器。每個寄存器都是32位的,16個整數(shù)寄存器都是可以存儲數(shù)據(jù)或者地址,指令指針寄存器是R15,兩個堆棧指針是R14和R14‘,其實(shí)R14是指向任務(wù)的堆棧的指針TSP,R14’是指向ISR的堆棧的指針I(yè)SP。當(dāng)CPU接收到一個中斷的時候自動切換到ISR堆棧(也就是說CPU有獨(dú)立用于處理中斷的堆棧)在uC/OS-III 中,任務(wù)切換時的堆棧設(shè)置類似于中斷發(fā)生時的那樣,所有的CPU 寄存器都被保存。我們假定任務(wù)堆棧中的信息將要被載入到CPU 中,TSP 指向任務(wù)堆棧中最后一個被保存的寄存器。程序指針寄存器和狀態(tài)寄存器是最先被保存在任務(wù)堆棧中。事實(shí)上,當(dāng)中斷發(fā)生時這些是被CPU 自動執(zhí)行的。其它的寄存器通過軟件被壓入任務(wù)堆棧, TSP 不會被保存到堆棧,但會被保存到任務(wù)的TCB。ISP 指向當(dāng)前中斷堆棧的頂部。當(dāng)中斷服務(wù)程序被執(zhí)行時,處理器把 R14“作為堆棧指針用于指向函數(shù)和局部參數(shù)。有兩種上下文切換的方式:一個是任務(wù)級的,一個是中斷級的,任務(wù)級切換時通過OSCtxSW()實(shí)現(xiàn)的,實(shí)際上它是被 OS_TASK_SW宏調(diào)用的中斷級切換是通過調(diào)用OSIntCtxSw()實(shí)現(xiàn)。它是用匯編語言寫的,保存于OS_CPU_A.ASM。

- 基于句子級上下文的神經(jīng)機(jī)器翻譯綜述 64次下載
- 一種融合多種類型上下文信息的協(xié)同過濾算法 10次下載
- 一種上下文信息融合的時序行為提名方法 5次下載
- GT9XX電容屏開發(fā)資料 14次下載
- 上下文統(tǒng)計分析的軟件故障定位方法 0次下載
- Web服務(wù)的上下文的訪問控制策略模型 0次下載
- 基于低秩重檢測的多特征時空上下文的視覺跟蹤 0次下載
- 基于局部敏感直方圖的時空上下文跟蹤_葛驍倩 0次下載
- 基于Pocket PC的上下文菜單實(shí)現(xiàn) 0次下載
- 基于Pocket PC的上下文菜單實(shí)現(xiàn) 17次下載
- 終端業(yè)務(wù)上下文的定義方法及業(yè)務(wù)模型
- 移動設(shè)備的個性化推薦在上下文感知應(yīng)用
- 新鮮度敏感的上下文推理實(shí)時調(diào)度算法
- 基于交互上下文的預(yù)測方法
- 基于多Agent的用戶上下文自適應(yīng)站點(diǎn)構(gòu)架
- 大語言模型如何處理上下文窗口中的輸入 398次閱讀
- SystemView上下文統(tǒng)計窗口識別阻塞原因 991次閱讀
- FreeRTOS系列技術(shù)文章:上下文切換 2.1k次閱讀
- 首篇!Point-In-Context:探索用于3D點(diǎn)云理解的上下文學(xué)習(xí) 1.7k次閱讀
- 谷歌新作SPAE:GPT等大語言模型可以通過上下文學(xué)習(xí)解決視覺任務(wù) 1.9k次閱讀
- 我們能否擴(kuò)展現(xiàn)有的預(yù)訓(xùn)練 LLM 的上下文窗口 1.3k次閱讀
- 切換k8s上下文有多快 1.3k次閱讀
- 高負(fù)載處理及上下文切換 1.2k次閱讀
- 如何分析Linux CPU上下文切換問題 2.7k次閱讀
- Linux驅(qū)動中斷上下文中會發(fā)生什么結(jié)果實(shí)驗(yàn)測試 1.1k次閱讀
- 基于Transformer模型的上下文嵌入何時真正值得使用? 3.4k次閱讀
- 如何利用多個上下文信息來做同義實(shí)體發(fā)現(xiàn)問題上進(jìn)行了一些新的探索 3.3k次閱讀
- PPT教程之伺服電機(jī)及其驅(qū)動技術(shù)的詳細(xì)資料講解 8.9k次閱讀
- 講解將知識圖譜特征學(xué)習(xí)引入到推薦系統(tǒng)的各種思路與實(shí)現(xiàn)方法 9.4k次閱讀
- 初學(xué)OpenGL:什么是繪制上下文 2.8k次閱讀
下載排行
本周
- 1MDD品牌三極管BC807數(shù)據(jù)手冊
- 3.00 MB | 次下載 | 免費(fèi)
- 2MDD品牌三極管BC817數(shù)據(jù)手冊
- 2.51 MB | 次下載 | 免費(fèi)
- 3MDD品牌三極管D882數(shù)據(jù)手冊
- 3.49 MB | 次下載 | 免費(fèi)
- 4MDD品牌三極管MMBT2222A數(shù)據(jù)手冊
- 3.26 MB | 次下載 | 免費(fèi)
- 5MDD品牌三極管MMBTA56數(shù)據(jù)手冊
- 3.09 MB | 次下載 | 免費(fèi)
- 6MDD品牌三極管MMBTA92數(shù)據(jù)手冊
- 2.32 MB | 次下載 | 免費(fèi)
- 7STM32G474 HRTIME PWM 丟波問題分析與解決
- 1.00 MB | 次下載 | 3 積分
- 8新能源電動汽車高壓線束的銅鋁連接解決方案
- 2.71 MB | 次下載 | 2 積分
本月
- 1愛華AIWA HS-J202維修手冊
- 3.34 MB | 37次下載 | 免費(fèi)
- 2NB-IoT芯片廠商的資料說明
- 0.31 MB | 22次下載 | 1 積分
- 3PC5502負(fù)載均流控制電路數(shù)據(jù)手冊
- 1.63 MB | 22次下載 | 免費(fèi)
- 4H110主板CPU PWM芯片ISL95858HRZ-T核心供電電路圖資料
- 0.63 MB | 6次下載 | 1 積分
- 5UWB653Pro USB口測距通信定位模塊規(guī)格書
- 838.47 KB | 5次下載 | 免費(fèi)
- 6技嘉H110主板IT8628E_BX IO電路圖資料
- 2.61 MB | 4次下載 | 1 積分
- 7蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 8蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
- 0.08 MB | 2次下載 | 1 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191439次下載 | 10 積分
- 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論