本書以電子科技大學自主設計的開源操作系統aCoral在ARM9 Mini2440嵌入式平臺上的設計過程為思路,逐步介紹aCoral的實現,再延伸到它對多核嵌入式處理器的支持,在此過程中,介紹嵌入式實時操作系統的其他相關技術和理論,比如:實時調度機制與策略、多核計算等,讓學生對其有更全面的認識。此外,全書綜合應用了計算機組成原理、計算機操作系統、匯編語言、C程序設計、數據結構、嵌入式系統概論、ARM處理器及其應用等課程的知識點,力求理論與實踐緊密結合,幫助讀者融匯貫通上述課程的相關知識。
書以電子科技大學自主設計的開源操作系統aCoral在ARM9 Mini2440嵌入式平臺上的設計過程為思路,逐步介紹aCoral的實現,再延伸到它對多核嵌入式處理器的支持,在此過程中,介紹嵌入式實時操作系統的其他相關技術和理論,比如:實時調度機制與策略、多核計算等,讓學生對其有更全面的認識。此外,全書綜合應用了計算機組成原理、計算機操作系統、匯編語言、C程序設計、數據結構、嵌入式系統概論、ARM處理器及其應用等課程的知識點,力求理論與實踐緊密結合,幫助讀者融匯貫通上述課程的相關知識。
第1章 概論
1.1 輪詢系統(Polling Systems)
1.2 前后臺系統(Foreground Background Systems)
1.3 嵌入式操作系統
1.3.1 簡單內核
1.3.2 RTOS結構
1.3.3 多核RTOS
1.4 從裸板開始啊啊
1.5 aCoral
1.6 本書結構
習題
\\t
第2章 輪詢系統
2.1 輪詢系統概述
2.1.1 程序框架
2.1.2 調度
2.1.3 典型系統
2.2 搭建開發環境
2.3 啟動Mini2440
2.3.1 為什么需要啟動
2.3.2 啟動流程
2.4 輪詢的實現
習題
\\t
第3章 前后臺系統
3.1 前后臺結構
3.1.1 前后臺系統的應用
3.1.2 運行方式
3.1.3 系統性能
3.1.4 前后臺交換
3.1.5 典型系統
3.2 中斷和中斷服務
3.2.1 中斷
3.2.2 中斷服務
3.3 ARM的中斷機制
3.4 一個簡單的S3C2440中斷服務
3.4.1 中斷返回
3.4.2 中斷注冊
3.4.3 狀態保存和現場恢復
3.5 前后臺的實現
3.5.1 啟動Mini2440
3.5.2 后臺主循環
3.5.3 前臺中斷處理
習題
\\t
第4章 內核基礎
4.1 基本術語
4.2 RTOS的特點
習題
\\t
第5章 搭建aCoral交叉開發環境
5.1 安裝Ubuntu
5.2 安裝交叉開發工具鏈
5.2.1 使用制作好的工具鏈
5.2.2 自己制作工具鏈
5.3 構建aCoral項目文件
習題
\\t
第6章 編寫內核
6.1 aCoral線程
6.1.1 描述線程
6.1.2 線程優先級
6.2 調度策略
6.2.1 線程調度分層結構
6.2.2 調度策略分類
6.2.3 描述調度策略
6.2.4 查找調度策略
6.2.5 注冊調度策略
6.3 基本調度機制
6.3.1 創建線程
6.3.2 調度線程
6.3.3 線程退出
6.3.4 其他基本機制
6.4 事務處理機制
6.4.1 中斷管理
6.4.2 時鐘管理
6.5 內存管理機制
6.5.1 主流內存管理機制
6.5.2 嵌入式系統對內存管理的特殊要求
6.5.3 aCoral的內存管理機制
6.5.4 aCoral內存管理初始化
6.6 線程交互機制
6.6.1 互斥機制
6.6.2 同步機制
6.6.3 通信機制
習題
\\t
第7章 啟動內核
7.1 RTOS的引導模式
7.1.1 需要Bootloader的引導模式
7.1.2 不需要Bootloader的引導模式
7.2 Bootloader
7.3 aCoral環境下啟動2440
7.4 啟動aCoral
習題
\\t
第8章 移植內核
8.1 硬件抽象層移植
8.1.1 啟動接口
8.1.2 中斷接口
8.1.3 線程相關接口
8.1.4 時間相關接口
8.1.5 內存相關接口
8.1.6 開發板相關接口
8.1.7 多核(CMP)相關接口
8.1.8 移植文件規范
8.1.9 移植實例
8.2 項目移植
8.2.1 生成對應開發板的項目
8.2.2 添加到官網
習題
\\t
第9章 編譯與運行內核
9.1 編譯aCoral
9. 2 燒寫aCoral到開發板ARM Mini2440
9.2.1 安裝串口工具
9.2.2 安裝燒寫工具(DNW工具)
9.2.3 燒寫與運行aCoral
習題
\\t
第10章 實時調度策略
10.1 任務調度策略基本概念
10.2 任務調度策略
10.2.1 典型實時調度策略
10.2.2 基于公平策略的時間片輪轉調度
10.2.3 基于優先級的可搶占調度
10.2.4 RM調度算法
10.2.5 EDF調度算法
10.3 優先級反轉及解決辦法
10.3.1 優先級繼承
10.3.2 優先級天花板
10.4 提高系統實時性的其他措施
10.4.1 評價RTOS的性能指標
10.4.2 提高實時任務響應性的措施
10.5 多核/處理器調度
10.5.1 多核/處理器技術
10.5.2 多核/處理器調度策略
習題
\\t
第11章 支持多核
11.1 ARM11 MPCore
11.2 多核運行機制
11.3 aCoral對多核機制的支持
11.3.1 多核啟動
11.3.2 多核調度
習題
參考文獻
\\t