定 價:89 元
叢書名:國產(chǎn)嵌入式操作系統(tǒng)叢書
- 作者:張英輝等編著
- 出版時間:2022/3/1
- ISBN:9787512437593
- 出 版 社:北京航空航天大學出版社
- 中圖法分類:TP18
- 頁碼:414頁
- 紙張:膠版紙
- 版次:1
- 開本:16開
本書是中國移動物聯(lián)網(wǎng)作系統(tǒng)OneOS開發(fā)系列叢書之一,側(cè)重于內(nèi)核實現(xiàn)原理和內(nèi)核應(yīng)用。全書包含21章,詳細介紹OneOS內(nèi)核的相關(guān)知識,包括OneOS框架以及其OneOS核心技術(shù)——構(gòu)建工程、任務(wù)管理和任務(wù)調(diào)度、系統(tǒng)配置、時間管理、隊列、信號量、定時器、事件以及內(nèi)存管理等。所有源碼都配有詳細的注釋,且經(jīng)過嚴格的審核測試,同時,本書配有大量的圖例,對于想要深入學習RTOS類系統(tǒng)原理的人來說是一個不錯的選擇。
第1章OneOS簡介2
1.1初識OneOS2
1.1.1什么是OneOS2
1.1.2為什么選擇OneOS5
1.1.3OneOS特點6
1.2磨刀不誤砍柴工7
1.2.1資料查找7
1.2.2CortexM架構(gòu)資料8
1.3OneOS源碼初探8
1.3.1OneOS源碼下載8
1.3.2OneOS文件預(yù)覽8
第2章OneOS搭建開發(fā)環(huán)境11
2.1OneOSCube介紹11
2.2構(gòu)造項目工程12
內(nèi)核基礎(chǔ)
第3章OneOS自動初始化機制16
3.1OneOS自動初始化機制意義16
3.2OneOS自動初始化機制原理17
第4章OneOS中斷和臨界段詳解第1
4.1CortexM和OneOS中斷第1
4.1.1CortexM中斷第1
4.1.2CortexM中斷管理第1
4.1.3CortexM優(yōu)先級分組定義24
4.1.4CortexM優(yōu)先級設(shè)置26
4.1.5CortexM用于中斷屏蔽的特殊寄存器27
4.2OneOS中斷實驗28
4.2.1功能設(shè)計28
4.2.2軟件設(shè)計30
4.2.3下載驗證32
OneOS內(nèi)核基礎(chǔ)入門
第5章OneOS任務(wù)基礎(chǔ)知識33
5.1什么是多任務(wù)系統(tǒng)33
5.2任務(wù)調(diào)度管理實現(xiàn)35
5.2.1任務(wù)管理35
5.2.2任務(wù)狀態(tài)36
5.2.3任務(wù)優(yōu)先級38
5.2.4任務(wù)實現(xiàn)38
5.2.5任務(wù)控制塊39
5.2.6任務(wù)堆棧40
第6章OneOS任務(wù)相關(guān)API函數(shù)42
6.1任務(wù)創(chuàng)建和刪除API函數(shù)42
6.2動態(tài)創(chuàng)建與刪除任務(wù)實驗44
6.2.1功能設(shè)計44
6.2.2軟件設(shè)計45
6.2.3下載驗證47
6.3靜態(tài)創(chuàng)建與刪除任務(wù)實驗48
6.3.1功能設(shè)計48
6.3.2軟件設(shè)計48
6.3.3下載驗證50
6.4任務(wù)掛起和恢復(fù)API函數(shù)50
6.5掛起和恢復(fù)任務(wù)實驗51
6.5.1功能設(shè)計51
6.5.2軟件設(shè)計52
6.5.3下載驗證55
第7章其他API函數(shù)56
7.1任務(wù)相關(guān)的API函數(shù)56
7.1.1概述56
7.1.2任務(wù)相關(guān)API函數(shù)詳解57
7.2任務(wù)狀態(tài)查詢API函數(shù)實驗66
7.2.1功能設(shè)計66
7.2.2軟件設(shè)計66
7.2.3下載驗證69
7.3時間片調(diào)度69
7.4OneOS時間片調(diào)度實驗72
7.4.1功能設(shè)計72
7.4.2軟件設(shè)計72
7.4.3下載驗證74
第8章OneOS單項鏈表和雙向鏈表76
8.1鏈表76
8.2單向鏈表76
8.2.1單向鏈表的簡介76
8.2.2單向鏈表的初始化77
8.2.3單向鏈表的鏈表項插入78
8.2.4單向鏈表的鏈表項尾部插入79
8.2.5單向鏈表的鏈表項刪除80
8.2.6單向鏈表的遍歷81
8.2.7其他單向鏈表API函數(shù)81
8.3雙向鏈表86
8.3.1雙向鏈表的簡介86
8.3.2雙向鏈表的初始化86
8.3.3雙向鏈表的鏈表項插入87
8.3.4雙向鏈表的鏈表項尾部插入88
8.3.5雙向鏈表的鏈表項刪除89
8.3.6雙向鏈表的遍歷90
8.3.7其他雙向鏈表API函數(shù)91
8.4單向鏈表實驗97
8.4.1功能設(shè)計97
8.4.2軟件設(shè)計97
8.4.3下載驗證101
8.5雙向鏈表實驗101
8.5.1功能設(shè)計101
8.5.2軟件設(shè)計102
8.5.3下載驗證105
第9章任務(wù)調(diào)度原理詳解106
9.1任務(wù)調(diào)度開始過程分析106
9.1.1任務(wù)調(diào)度器初始化分析106
9.1.2啟動第1個任務(wù)107
9.1.3查找下一個要運行的任務(wù)113
9.1.4系統(tǒng)任務(wù)詳解115
9.2任務(wù)創(chuàng)建過程分析118
9.3任務(wù)刪除過程分析124
9.4任務(wù)掛起過程分析126
9.5任務(wù)恢復(fù)過程分析129
第10章OneOS系統(tǒng)內(nèi)核控制函數(shù)131
10.1內(nèi)核控制函數(shù)預(yù)覽131
10.2內(nèi)核控制函數(shù)詳解132
第11章OneOS時間管理140
11.1OneOS第1函數(shù)140
11.1.1函數(shù)os_task_tsleep()140
11.1.2函數(shù)os_task_msleep()141
11.2OneOS系統(tǒng)時鐘節(jié)拍142
11.3任務(wù)睡眠時間處理145
通信機制
第12章OneOS信號量149
12.1信號量簡介149
12.2信號量原理詳解150
12.2.1信號量結(jié)構(gòu)體152
12.2.2創(chuàng)建信號量153
12.2.3信號量創(chuàng)建過程分析153
12.2.4釋放信號量156
12.2.5獲取信號量157
12.2.6信號量其他API函數(shù)159
12.2.7信號量配置160
12.3信號量操作實驗161
12.3.1功能設(shè)計161
12.3.2軟件設(shè)計161
12.3.3下載驗證163
12.4優(yōu)先級翻轉(zhuǎn)163
12.5優(yōu)先級翻轉(zhuǎn)實驗165
12.5.1功能設(shè)計165
12.5.2軟件設(shè)計165
12.5.3下載驗證168
第13章OneOS互斥鎖170
13.1互斥鎖170
13.1.1互斥鎖結(jié)構(gòu)體173
13.1.2互斥鎖創(chuàng)建與初始化174
13.1.3互斥鎖創(chuàng)建過程分析175
13.1.4釋放互斥鎖177
13.1.5獲取互斥鎖180
13.1.6互斥鎖其他API函數(shù)183
13.1.7互斥鎖配置185
13.2互斥鎖操作實驗185
13.2.1功能設(shè)計185
13.2.2軟件設(shè)計185
13.2.3下載驗證188
第14章OneOS消息隊列190
14.1消息隊列與API函數(shù)190
14.1.1消息隊列簡介190
14.1.2消息隊列結(jié)構(gòu)體194
14.1.3消息隊列創(chuàng)建195
14.1.4向消息隊列發(fā)送消息200
14.1.5從消息隊列讀取消息205
14.1.6消息隊列其他API函數(shù)210
14.1.7消息隊列配置213
14.2消息隊列操作實驗213
14.2.1功能設(shè)計213
14.2.2軟件設(shè)計213
14.2.3下載驗證216
第15章OneOS工作隊列217
15.1工作隊列217
15.1.1工作隊列實現(xiàn)過程217
15.1.2工作隊列結(jié)構(gòu)體218
15.1.3工作隊列的創(chuàng)建與初始化218
15.1.4工作隊列的提交第15
15.1.5工作隊列的取消第19
15.1.6工作隊列配置232
15.2工作隊列實驗233
15.2.1功能設(shè)計233
15.2.2軟件設(shè)計233
15.2.3下載驗證236
第16章OneOS自旋鎖237
16.1自旋鎖237
16.2自旋鎖原理237
16.2.1自旋鎖創(chuàng)建238
16.2.2獲取自旋鎖239
16.2.3釋放自旋鎖240
16.2.4自旋鎖配置選項242
16.3OneOS自旋鎖實驗242
16.3.1功能設(shè)計242
16.3.2軟件設(shè)計242
16.3.3下載驗證244
第17章OneOS事件245
17.1事件245
17.1.1事件原理246
17.1.2創(chuàng)建事件248
17.1.3發(fā)送事件251
17.1.4接收事件253
17.1.5事件其他API函數(shù)256
17.1.6事件配置選項257
17.2OneOS事件實驗258
17.2.1功能設(shè)計258
17.2.2軟件設(shè)計258
17.2.3下載驗證260
第18章OneOS定時器261
18.1定時器簡介261
18.1.1單次定時器和周期定時器261
18.1.2定時器原理詳解262
18.1.3定時器結(jié)構(gòu)體詳解263
18.1.4創(chuàng)建定時器263
18.1.5啟動定時器266
18.1.6停止定時器266
18.1.7刪除定時器267
18.1.8定時器其他API函數(shù)詳解267
18.1.9定時器配置269
18.2OneOS定時器實驗269
18.2.1功能設(shè)計269
18.2.2軟件設(shè)計270
18.2.3下載驗證272
第19章OneOS原子操作273
19.1原子操作273
19.2原子操作API函數(shù)276
19.3原子操作實驗291
19.3.1功能設(shè)計291
19.3.2軟件設(shè)計291
19.3.3下載驗證29
第20章OneOS郵箱294
20.1郵箱簡介294
20.2郵箱API函數(shù)297
20.2.1郵箱創(chuàng)建297
20.2.2郵箱發(fā)送301
20.2.3郵箱接收303
20.2.4郵箱其他API函數(shù)306
20.2.5郵箱配置選項309
20.3郵箱實驗310
20.3.1功能設(shè)計310
20.3.2軟件設(shè)計310
20.3.3下載驗證312
內(nèi)核管理
第21章OneOS內(nèi)存管理314
21.1內(nèi)存堆管理314
21.2Firstfit內(nèi)存堆管理算法317
21.3Firstfit內(nèi)存堆管理算法函數(shù)3第1
21.4Buddy內(nèi)存堆管理算法338
21.5Buddy內(nèi)存堆管理算法函數(shù)341
21.6OneOS內(nèi)存堆357
21.7內(nèi)存池管理376
21.8內(nèi)存池管理函數(shù)378
21.9內(nèi)存堆管理實驗389
21.9.1功能設(shè)計389
21.9.2軟件設(shè)計390
21.9.3下載驗證392
21.10內(nèi)存池管理實驗393
21.10.1功能設(shè)計393
21.10.2軟件設(shè)計393
21.10.3下載驗證396
附錄萬耦天工STM32F103開發(fā)板397
參考文獻404