嵌入式實時操作系統:RT-Thread 設計與實現

邱禕 熊譜翔 朱天龍 著

  • 出版商: 機械工業
  • 出版日期: 2019-02-01
  • 定價: $534
  • 售價: 8.5 折 $453
  • 語言: 簡體中文
  • 頁數: 333
  • ISBN: 711161934X
  • ISBN-13: 9787111619345
  • 相關分類: 嵌入式系統
  • 立即出貨 (庫存 < 4)

買這商品的人也買了...

相關主題

商品描述

本書由自研開源嵌入式實時操作系統RT-Thread核心作者撰寫,專業性毋庸置疑,系統剖析嵌入式系統核心設計與實現,掌握物聯網操作系統精髓。本書分為兩大部分,共16章,第1~10章為內核篇;第11~16章為組件篇。
內核篇(第1~10章)詳解RT-Thread內核,先對RT-Thread進行總體介紹,再分別介紹RT-Thread的核心技術——線程管理、時鐘管理、線程間同步、線程間通信、內存管理、中斷管理與內核移植。
組件篇(第11~16章)分別介紹Env開發環境、FinSH控制臺、設備管理、文件系統和網絡框架。
各章均有配套示例,方便讀者動手實踐和參考。

物聯網時代,原有的格局和模式將會被完全打破,聯網設備的開發難度也呈幾何級數增加,可靠性、長待機、低成本、通信方式和傳輸協議、手機兼容性、二次開發、雲端對接等都成為必須考慮與解決的問題。對於企業來說,帶有豐富中間層組件和標準API接口的OS平臺無疑能大大降低聯網終端開發的難度,也能簡化與多種雲平臺的對接,為未來各種IoT服務應用的部署和更新鋪平道路。
經驗證明,作為底層核心技術,唯有自研可控才是可持續發展之道,國產物聯網芯片逐漸崛起,產業鏈持續增強的優勢,為國產IoT OS提供了良好的機遇和土壤。開源嵌入式實時操作系統RT-Thread經過十多年的累積發展,廣泛應用於能源、車載、醫療、消費電子等各個行業,為我國的物聯網產業提供了發展的基礎。RT-Thread 成為越來越多芯片廠商、終端公司、雲服務商、方案商的產品開發首選,瞭解和學習 RT-Thread 嵌入式實時操作系統內核的設計與實現,可以更好地賦能業務。
本書具有以下特點:
由RT-Thread官方核心成員撰寫,專業性毋庸置疑;
掌握嵌入式操作系統內核與常用組件的工作機制和應用方式;
配套的示例代碼,實際動手深入體會,為未來實際應用與開發提供參考。

作者簡介

朱天龍(Armink),睿賽德科技技術總監,負責RT-Thread物聯網組件的研發,前沿技術探索及團隊管理。曾任職於國內某知名醫療設備企業,擔任研發部門經理要職,主導多個項目的研發實施和量產,並獲得10餘項國家發明專利。擁有近10年RT-Thread開發經驗。他也是一位嵌入式開源極客,分享開源了EasyLogger、EasyFlash、CmBacktrace等數個活躍度極高的開源軟件。

目錄大綱

前言
第一篇 內核篇
第1章 嵌入式實時操作系統
1.1 嵌入式系統
1.2 實時系統
1.3 嵌入式實時操作系統
1.3.1 主流嵌入式實時操作系統
1.3.2 發展趨勢
1.4 本章小結
第2章 了解與快速上手RT-Thread
2.1 RT-Thread概述
2.2 RT-Thread的架構
2.3 RT-Thread的獲取
2.4 RT-Thread快速上手
2.4.1 準備環境
2.4.2 初識RT-Thread
2.4.3 跑馬燈的例子
2.5 本章小結
第3章 內核基礎
3.1 RT-Thread內核介紹
3.2 RT-Thread啟動流程
3.3 RT-Thread程序內存分布
3.4 RT-Thread自動初始化機制
3.5 RT-Thread內核對象模型
3.5.1 靜態對象和動態對象
3.5.2 內核對象管理架構
3.5.3 對象控制塊
3.5.4 內核對象管理方式
3.6 RT-Thread內核配置示例
3.7 常見宏定義說明
3.8 本章小結
第4章 線程管理
4.1 線程管理的功能特點
4.2 線程的工作機制
4.2.1 線程控制塊
4.2.2 線程的重要屬性
4.2.3 線程狀態切換
4.2.4 系統線程
4.3 線程的管理方式
4.3.1 創建和刪除線程
4.3.2 初始化和脫離線程
4.3.3 啟動線程
4.3.4 獲得當前線程
4.3.5 使線程讓出處理器資源
4.3.6 使線程睡眠
4.3.7 掛起和恢覆線程
4.3.8 控制線程
4.3.9 設置和刪除空閒鉤子
4.3.10 設置調度器鉤子
4.4 線程應用示例
4.4.1 創建線程示例
4.4.2 線程時間片輪轉調度示例
4.4.3 線程調度器鉤子示例
4.5 本章小結
第5章 時鐘管理
5.1 時鐘節拍
5.1.1 時鐘節拍的實現方式
5.1.2 獲取時鐘節拍
5.2 定時器管理
5.2.1 RT-Thread定時器介紹
5.2.2 定時器的工作機制
5.2.3 定時器的管理方式
5.3 定時器應用示例
5.4 高精度延時
5.5 本章小結
第6章 線程間同步
6.1 信號量
6.1.1 信號量的工作機制
6.1.2 信號量控制塊
6.1.3 信號量的管理方式
6.1.4 信號量應用示例
6.1.5 信號量的使用場合
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.3.5 事件集的使用場合
6.4 本章小結
第7章 線程間通信
7.1 郵箱
7.1.1 郵箱的工作機制
7.1.2 郵箱控制塊
7.1.3 郵箱的管理方式
7.1.4 郵箱使用示例
7.1.5 郵箱的使用場合
7.2 消息隊列
7.2.1 消息隊列的工作機制
7.2.2 消息隊列控制塊
7.2.3 消息隊列的管理方式
7.2.4 消息隊列應用示例
7.2.5 消息隊列的使用場合
7.3 信號
7.3.1 信號的工作機制
7.3.2 信號的管理方式
7.3.3 信號應用示例
7.4 本章小節
第8章 內存管理
8.1 內存管理的功能特點
8.2 內存堆管理
8.2.1 小內存管理算法
8.2.2 slab管理算法
8.2.3 memheap管理算法
8.2.4 內存堆配置和初始化
8.2.5 內存堆的管理方式
8.2.6 內存堆管理應用示例
8.3 內存池
8.3.1 內存池的工作機制
8.3.2 內存池的管理方式
8.3.3 內存池應用示例
8.4 本章小結
第9章 中斷管理
9.1 Cortex-M CPU架構基礎
9.1.1 寄存器介紹
9.1.2 操作模式和特權級別
9.1.3 嵌套向量中斷控制器
9.1.4 PendSV系統調用
9.2 RT-Thread中斷工作機制
9.2.1 中斷向量表
9.2.2 中斷處理過程
9.2.3 中斷嵌套
9.2.4 中斷棧
9.2.5 中斷的底半處理
9.3 RT-Thread中斷管理接口
9.3.1 中斷服務程序掛接
9.3.2 中斷源管理
9.3.3 全局中斷開關
9.3.4 中斷通知
9.4 中斷與輪詢
9.5 全局中斷開關使用示例
9.6 本章小結
第10章 內核移植
10.1 CPU架構移植
10.1.1 實現全局中斷開關
10.1.2 實現線程棧初始化
10.1.3 實現上下文切換
10.1.4 實現時鐘節拍
10.2 BSP移植
10.3 內核移植示例
10.3.1 準備裸機工程
10.3.2 建立RT-Thread工程
10.3.3 實現時鐘管理
10.3.4 實現控制臺輸出
10.3.5 實現動態堆內存管理