- 嵌入式實時操作系統:基于ARM Mbed OS的應用實踐
- 王宜懷等
- 1250字
- 2024-02-27 16:08:38
前言
嵌入式實時操作系統是面向微控制器類應用的嵌入式人工智能與物聯網終端的重要工具和運行載體,它的種類繁多。但是,其共性是一致的,就是多線程編程,內核負責調度,線程之間或線程與中斷服務程序之間采用通信機制。不同實時操作系統的性能及對外接口函數等有一定差異,但均包含調度、延時函數、事件、消息隊列、信號量、互斥量等基本要素。學習實時操作系統有兩個可能的出發點:一是學會在實時操作系統場景下進行基本應用程序開發;二是在掌握應用編程的前提下,理解其運行原理,進行深度應用程序開發。本書基于這兩種場景進行撰寫。
雖然實時操作系統種類繁多,有國外的,也有國產的;有收費的,也有免費的;有開發者持續維護升級的,也有依賴愛好者更新升級的。但是無論哪一種,學習實時操作系統時都必須以一個具體的實時操作系統為藍本。實際上,不同的實時操作系統,其應用方法及原理大同小異,掌握其共性是學習的關鍵,這樣才能達到舉一反三的效果。
本書推薦的Mbed OS是ARM公司于2014年開始推出并逐步完善的一款免費的開源嵌入式實時操作系統,Mbed OS專為基于ARM Cortex-M內核的MCU設計,主要面向物聯網終端。本書以Mbed OS為藍本,以通用嵌入式計算機(GEC)為硬件載體,闡述實時操作系統中的線程、調度、延時函數、事件、消息隊列、線程信號、信號量、互斥量等基本要素,給出實時操作系統下的程序設計方法。
為了讓讀者更容易學習、應用實時操作系統,本書把應用與原理分開撰寫,先學習應用,后學習原理。全書包括基礎應用篇(第1~7章)、原理剖析篇(第8~12章)及綜合實踐篇(第13、14章)三大部分,如果讀者只做實時操作系統下的應用開發,可只閱讀基礎應用篇與綜合實踐篇;如果希望理解實時操作系統原理,那么建議通讀全書。基礎應用篇將Mbed OS駐留于BIOS內部,并在此基礎上進行實時操作系統下應用開發的學習實踐,架構簡潔明了,編譯鏈接速度快,符合應用開發特點。原理剖析篇采用源代碼級剖析,利用printf輸出至工具計算機顯示屏,清晰給出運行原理,達到知其然也知其所以然的目的。綜合實踐篇為實時操作系統在嵌入式人工智能與物聯網領域的綜合應用。本書若作為教材,可根據課時做適當縮減,一般情況下,在本科教學中,基礎應用篇和綜合實踐篇是重點,若用于研究生教學,原理剖析篇則作為重點。
本書配有網上電子資源,主要包含文檔及源代碼等。獲得途徑:搜索“蘇州大學嵌入式學習社區”官網,在“著作”→“mbedOS”欄目下獲得電子資源。
需要特別說明的是,為了體現實時操作系統的共性技術,本書在撰寫內容上最大限度地與本書第一作者的另外一部著作《嵌入式實時操作系統——基于RT-Thread的EAI&IoT系統開發》(參考文獻[1])保持一致,但實時操作系統的藍本不同。
蘇州大學嵌入式人工智能與物聯網實驗室的研究生參與了本書的程序開發及書稿整理工作,劉純平教授、趙雷教授、章曉芳副教授、李領治副教授、徐麗華副教授、徐文彬副教授等參與了本書討論,蘇州金蒲蘆物聯網技術有限公司的施連敏博士提出了建設性的建議,在此一一表示感謝。鑒于作者水平有限,書中難免存在不足之處,懇請讀者批評指正。
作者
2021年9月
- Social Media Mining with R
- Ganglia系統監控
- Delphi Programming Projects
- NetDevOps入門與實踐
- Hadoop Real-World Solutions Cookbook
- Windows Server 2008組網技術與實訓(第3版)
- 鴻蒙HarmonyOS手機應用開發實戰
- Office 365 User Guide
- VMware vSphere 5.1 Cookbook
- 鴻蒙HarmonyOS應用開發從入門到精通
- Python機器學習系統構建(原書第3版)
- 電子商務系統建設與管理
- OpenSolaris系統管理
- 不可不知的Windows技巧
- 嵌入式Linux設備驅動程序開發指南(原書第2版)