久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6450|回復: 0
收起左側

uC/OS-II學習筆記—操作系統初始化

[復制鏈接]
ID:51773 發表于 2013-7-16 02:19 | 顯示全部樓層 |閱讀模式
操作系統初始化函數OS_Init是操作系統在開始運行時,對全局變量、任務控制塊、就緒表、事件及消息隊列等重要數據結構進行的初始化操作,并創建空閑任務、統計任務等系統任務。該函數必須在創建用戶對象及調用OSStart()啟動實時任務調度之前運行。
內核初始化函數采用模塊化編程,該函數又分為若干子塊,每個子塊實現一定的功能。操作系統初始化函數OS_Init聲明代碼如下所示:
50.png
如上面的程序所示,OS_InitMisc實現對操作系統一些混雜的全局變量的初始化(Misc是單詞miscellaneous的前4個字母,是雜項的意思),這些混雜的全局變量是初始化過程或運行過程中需要使用的,因此在第一步完成,非常重要。

51.png 這些全局變量在ucos_ii.h中聲明,在這里進行了初始化。接下來的OS_InitRdyList對就緒表進行初始化的工作,程序代碼如下所示:

52.png 可見,該函數首先對就緒表和就緒組全部清零,然后對4個重要的任務相關的全局變量進行了初始化。前兩個是當前任務的優先級和最高任務的優先級,后兩個是對應的兩個任務控制塊的指針。
下面該輪到任務控制塊了,由于沒有任務,任務控制塊的兩個鏈表應該初始化為什么樣子呢?
在有用戶任務運行之前,因為沒有用戶任務就緒,就緒鏈表該是個空鏈表。而空閑鏈表這個時候應該是最長的,它的長度是操作系統能容納的任務數。代碼如下所示:

53.png
54.png 到這里,全局變量、就緒表、就緒組、任務優先級指針表、空閑鏈表、就緒鏈表等重要數據結構都已經完成了初始化的操作。
接下來OS_InitEventList對時間所用數據結構進行初始化,OS_FlagInit對事件標志數據結構進行初始化,OS_MemInit對內存進行初始化,OS_QInit對消息隊列進行初始化。
OS_InitTaskIdle將創建和初始化操作系統的第一個任務——空閑任務,該部分內容個如下所示:

55.png 這部分代碼主要是根據配置信息調用創建任務的函數創建空閑任務,其中,無論是OSTaskCreateExt還是OSTaskCreate的第一個參數,都是OS_TaskIdle,OS_TaskIdle是空閑任務函數的地址。該任務的優先級是OS_TASK_IDLE_PRIO,這是一個供用戶配置的宏,默認值是63,是最低優先級的任務。
接著,用類似的方法調用OS_InitTaskSta創建統計任務。

56.png 那么,在創建了這兩個系統任務后,那個任務運行了呢?沒有任務運行,因為還沒有真正啟動多任務。只是為任務分配和設置了它們生存的數據結構。
如果系統配置有定時器模塊,執行OSTmr_Init初始化定時器。
后面的兩個空函數,可以編寫合適的內容及顯示一些自己需要的調試信息。
操作系統初始化是操作系統開始運行時首先執行的函數,對操作系統使用的各種全局變量和重要的數據結構如任務控制塊及其鏈表、就緒表等進行初始化。接著創建兩個系統任務——空閑任務和統計任務。對這個流程的總結如下所示:
57.png

回復

使用道具 舉報

無效樓層,該帖已經被刪除
無效樓層,該帖已經被刪除
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩另类视频 | 午夜视频免费网站 | 久久久久国产精品一区二区 | 国产精品视频综合 | 日韩精品在线一区 | 久久久久久久av | 日本超碰| 日本久久久久久 | 久久一区二区三区免费 | 二区三区av | 亚洲欧美久久 | 欧美freesex黑人又粗又大 | 午夜理伦三级理论三级在线观看 | 成人性视频免费网站 | 国产资源在线观看 | 日韩一区中文字幕 | 中文字幕第一页在线 | 成人在线免费网站 | 免费永久av | 国产午夜精品一区二区三区四区 | 国产一区免费 | 国产精品亚洲欧美日韩一区在线 | 成人性视频在线播放 | 视频一区二区三区四区五区 | 精品国产一区二区国模嫣然 | 国产一区二区在线91 | 欧美成人手机视频 | 国产一级在线观看 | 色天天综合| 国产成人精品一区二区 | 国产成人一区二区三区 | 久久精品一区二区三区四区 | 国产精品日韩在线 | 狠狠干av| 成人免费淫片aa视频免费 | 国产成人精品久久 | 欧美黄色大片在线观看 | 少妇特黄a一区二区三区88av | 国产精品爱久久久久久久 | 在线91| 国产日韩精品一区二区三区 |