uc os II讀書筆記(2)

2021-07-23 09:20:37 字數 2105 閱讀 4805

1.大多數嵌入式作業系統主要提供三項服務:

①記憶體的管理分配(主要是動態記憶體的管理),通過作業系統提供的記憶體分配函式和記憶體釋放函式實現。

②多工管理,嵌入式實時作業系統會提供良好的任務排程機制來控制多工,實現實時性。

③外圍裝置管理,這些外圍裝置都是系統中各個任務可能用到的資源。

2.uc/os-ii是由

jean j.labrosse

在1992

年編寫的乙個嵌入式多工實時作業系統,該作業系統是用

c語言和組合語言編寫的,其中絕大部分是

c語言編寫,少部分與處理器密切相關的用組合語言編寫。

uc/os-ii

與處理器相關的**移植時需要修改。

第二章uc/os ii中的任務

一、任務的基本概念

1.uc/os ii中,同大任務分解成的小任務對應的程式實體就叫「任務」,也叫執行緒,是乙個用來解決使用者問題的

c函式和與之關聯的一些資料結構構成的實體.

2.uc/os ii的任務由三部分組成:

①任務的程式**(任務的執行部分)

②任務的堆疊(儲存任務工作環境)

③任務控制塊(用於儲存任務屬性)

3.uc/os ii 的兩種任務分類:

使用者任務:由應用程式設計者編寫的任務,用於解決應用問題.

系統任務:系統提供的任務,為應用程式提供某種服務.

uc/os ii最多可對

64個任務進行管理。

4.任務的狀態

5.使用者任務**

從函式看出函式的引數是void型指標,目的是為了傳遞各種不同型別的引數甚至函式。

在執行os_enter_critical()和

os_exit_critical()

之間的**段時不會響應中斷,這段**稱為臨界段。

6.使用者任務

ostaskcreate()是作業系統

uc/os ii

用於建立任務的函式,

osstart()

是作業系統

uc/os ii

提供的啟動任務的函式,任務啟動後由作業系統管理。

7.系統任務

(1)空閒任務(ostaskidle):每個應用程式都必須使用,為了避免在某個時間段

cpu在沒有使用者任務執行時處於空閒狀態,作業系統提供了乙個空閒任務。

(2)統計任務(ostaskstart):每秒計算一次單位時間內

cpu被使用的時間,用來了解

cpu的利用率,若使用該任務則必須把定義在系統標頭檔案

0s_cfg.h

中的系統配置常數

os_task_start_en置1

,並在建立統計任務前呼叫函式

osstartinit().

8.任務的優先順序

通常乙個應用程式的任務數小於64,

uc/os ii

把任務的優先順序分為

64個級別,數字越大優先順序越低。使用者根據需要在標頭檔案

os_cfg.h

中通過對表示最低優先順序別的常數

os_lowest_prio

賦值說明程式中優先順序別的個數,也就限制了任務數不能超過

os_lowest_prio

+ 1個。

二、任務的堆疊

1.堆疊就是儲存器中滿足「先進後出」原則的連續的儲存空間,每個任務都應配有自己的堆疊,任務堆疊是任務的重要組成部分。

2.任務堆疊的建立:在標頭檔案os_cpu.h中定義了一資料型別

os_stk

,建立堆疊。當呼叫函式

ostaskcreate()

來建立任務時,將用資料型別

os_stk

定義的陣列指標傳給該函式則可將該堆疊與相應的任務聯絡起來。

3.堆疊的增長方向分兩種,向上增長型堆疊和向下增長型堆疊,這隨系統的處理器的不同而有所不同。

4.任務控制塊:用來記錄堆疊的指標、任務的當前狀態、任務的優先級別等一些與任務管理有關的屬性的**。

讀書筆記2

關於this指標 雖然this指標大家已經很熟悉了,但是我這裡討論的關於this指標的問題可能大家還沒注意過 為了說明這個關於this的歸屬問題,我自寫了一段再簡單不過的程式,雖簡單但具體 include class a void aa 我的問題是指標p1是指向b自身嗎?一看程式,大家就知道 不是,...

讀書筆記(2)

沉默的藝術 意識科學基礎理論 量子效應只是用於穩定某種內在自由度極大的基本粒子,然後再用基本粒子的內在屬性產生意識體驗。只能通過呈現乙個系統的 物理 屬性來描述乙個系統。只能通過變成內在屬性配對的其中乙個系統,以直接體驗的方式來獲得這些內在屬性的資訊。定義乙個包含所有系統的系統d,除該系統外無任何系...

讀書筆記2

ripple專注於跨境支付領域,主要為銀行和其他金融機構提供基於區塊鏈協議的外匯 轉賬方案。目前已公布的銀行客戶有3家,並正在和另外80多家銀行深入洽談。ripple主 要通過其開發的interledger協議專案,在保持銀行等金融機構的各自不同的記賬系統的基 礎上,打造乙個全球統一的網路金融傳輸協...