資料介紹
一 定義
當UCOS-III轉向執行另一項新任務的時候,他保存了當前任務的CPU寄存器到堆棧,并從新任務的堆棧CPU寄存器載入CPU,這個過程叫做上下文切換
上下文切換需要一些開支,CPU的寄存器越多,開支越大。上下文切換的時間基本取決于有多少個CPU寄存器需要被存儲和載入。上下文切換的代碼是移植UCOS -II 時編寫的,該部分代碼要適用于處理器,這些代碼被放在C和匯編文件中: OS_CPU.H,OS_CPU_C.C,OS_CPU_A.ASM。移植部分在下面會詳細介紹,根據不同的CPU架構,移植的時候需要注意很多不部分細節。我們先來看一下常見CPU的結構:包含16個整數寄存器(R0~R15)和一個中斷堆棧寄存器和狀態寄存器。每個寄存器都是32位的,16個整數寄存器都是可以存儲數據或者地址,指令指針寄存器是R15,兩個堆棧指針是R14和R14‘,其實R14是指向任務的堆棧的指針TSP,R14’是指向ISR的堆棧的指針ISP。當CPU接收到一個中斷的時候自動切換到ISR堆棧(也就是說CPU有獨立用于處理中斷的堆棧)在uC/OS-III 中,任務切換時的堆棧設置類似于中斷發生時的那樣,所有的CPU 寄存器都被保存。我們假定任務堆棧中的信息將要被載入到CPU 中,TSP 指向任務堆棧中最后一個被保存的寄存器。程序指針寄存器和狀態寄存器是最先被保存在任務堆棧中。事實上,當中斷發生時這些是被CPU 自動執行的。其它的寄存器通過軟件被壓入任務堆棧, TSP 不會被保存到堆棧,但會被保存到任務的TCB。ISP 指向當前中斷堆棧的頂部。當中斷服務程序被執行時,處理器把 R14“作為堆棧指針用于指向函數和局部參數。有兩種上下文切換的方式:一個是任務級的,一個是中斷級的,任務級切換時通過OSCtxSW()實現的,實際上它是被 OS_TASK_SW宏調用的中斷級切換是通過調用OSIntCtxSw()實現。它是用匯編語言寫的,保存于OS_CPU_A.ASM。
- 基于句子級上下文的神經機器翻譯綜述 64次下載
- 一種融合多種類型上下文信息的協同過濾算法 10次下載
- 一種上下文信息融合的時序行為提名方法 5次下載
- GT9XX電容屏開發資料 11次下載
- 上下文統計分析的軟件故障定位方法 0次下載
- Web服務的上下文的訪問控制策略模型 0次下載
- 基于低秩重檢測的多特征時空上下文的視覺跟蹤 0次下載
- 基于局部敏感直方圖的時空上下文跟蹤_葛驍倩 0次下載
- 基于Pocket PC的上下文菜單實現 0次下載
- 基于Pocket PC的上下文菜單實現 17次下載
- 終端業務上下文的定義方法及業務模型
- 移動設備的個性化推薦在上下文感知應用
- 新鮮度敏感的上下文推理實時調度算法
- 基于交互上下文的預測方法
- 基于多Agent的用戶上下文自適應站點構架
- SystemView上下文統計窗口識別阻塞原因 459次閱讀
- FreeRTOS系列技術文章:上下文切換 1222次閱讀
- RISC-V上下文切換匯編代碼注釋 892次閱讀
- 首篇!Point-In-Context:探索用于3D點云理解的上下文學習 816次閱讀
- 谷歌新作SPAE:GPT等大語言模型可以通過上下文學習解決視覺任務 1271次閱讀
- 我們能否擴展現有的預訓練 LLM 的上下文窗口 671次閱讀
- 切換k8s上下文有多快 782次閱讀
- 高負載處理及上下文切換 747次閱讀
- 如何分析Linux CPU上下文切換問題 1986次閱讀
- Linux驅動中斷上下文中會發生什么結果實驗測試 891次閱讀
- 基于Transformer模型的上下文嵌入何時真正值得使用? 2898次閱讀
- 如何利用多個上下文信息來做同義實體發現問題上進行了一些新的探索 2695次閱讀
- PPT教程之伺服電機及其驅動技術的詳細資料講解 8034次閱讀
- 講解將知識圖譜特征學習引入到推薦系統的各種思路與實現方法 8869次閱讀
- 初學OpenGL:什么是繪制上下文 2471次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1489次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 91次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 9次下載 | 免費
- 6基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 7基于單片機和 SG3525的程控開關電源設計
- 0.23 MB | 3次下載 | 免費
- 8基于單片機的紅外風扇遙控
- 0.23 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30319次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論