1. 程式人生 > >探索ucos-ii之路 一 --核心目錄結構和核心組成

探索ucos-ii之路 一 --核心目錄結構和核心組成

               

UCOS-ii2.5.2核心目錄結構和組成

  1.uCOS-II Source->source:(與處理器型別無關的程式碼)

********************************************************************************** OS_CORE.C      系統初始化,開啟多工環境等的程式碼  ********************************************************************************** OS_FLAG .C      事件標誌組管理程式碼      ********************************************************************************** OS_MBOX .C      訊息郵箱管理程式碼       ********************************************************************************** OS_MEM.C      記憶體管理程式碼        ********************************************************************************** OS_MUTEX.C      互斥型訊號量管理程式碼      ********************************************************************************** OS_Q.C       訊息佇列管理        ********************************************************************************** OS_SEM.C      訊號量管理程式碼       ********************************************************************************** OS_TASK.C      任務管理程式碼        ********************************************************************************** OS_TIME.C      事件管理程式碼        ********************************************************************************** uCOS_II.C      包含核心的其它C語言原始檔    *********************************************************************************


2 uCOS II配置檔案(與應用程式有關)

********************************************************************************** INCLUDES .H      系統的全域性標頭檔案,在所有的原始碼中包含********************************************************************************** OS_CFG .H      UCOS系統的全域性配置*********************************************************************************
 

3 移植uCOS II (與處理器有關的程式碼)

********************************************************************************** OS_CPU .h    包含與處理器相關的常量、巨集及結構體定義********************************************************************************** OS_CPU_C.C    多工棧初始化等與處理器有關的程式碼********************************************************************************** OS_CPU_A.asm
   組合語言編寫的啟動任務、任務切換等四個重要函式*********************************************************************************


4 μC/OS-II組成 

μC/OS-II可以大致分成核心、任務處理、時間處理、任務同步與通訊,CPU的移植等5個部分。  

1) 核心部分(OSCore.c)  是作業系統的處理核心,包括作業系統初始化、作業系統執行、中斷進出的前導、時鐘節拍、任務排程、事件處理等多部分。能夠維持系統基本工作的部分都在這裡。 

2) 任務處理部分(OSTask.c)  任務處理部分中的內容都是與任務的操作密切相關的。包括任務的建立、刪除、掛起、恢復等等。因為μC/OS-II是以任務為基本單位排程的,所以這部分內容也相當重要。  

3)  時鐘部分(OSTime.c) μC/OS-II中的最小時鐘單位是timetick(時鐘節拍)。任務延時等操作是在這裡完成的。  

4) 任務同步和通訊部分  為事件處理部分,包括訊號量、郵箱、訊息佇列、事件標誌等部分;主要用於任務間的互相聯絡和對臨界資源的訪問。  

5) 與CPU的介面部分  是指μC/OS-II針對所使用的CPU的移植部分。由於μC/OS-II是一個通用性的作業系統,所以對於關鍵問題上的實現,還是需要根據具體CPU的具體內容和要求作相應的移植。這部分內容由於牽涉到SP等系統指標,所以通常用匯編語言編寫。主要包括中斷級任務切換的底層實現、任務級任務切換的底層實現、時鐘節拍的產生和處理、中斷的相關處理部分等內容。