- 嵌入式實時操作系統:基于ARM Mbed OS的應用實踐
- 王宜懷等
- 526字
- 2024-02-27 16:08:40
1.4 本章小結
在實時操作系統下編程與無操作系統下編程相比有一個顯著的優點,這個優點就是有個調度者,指揮、協調各個線程的運行,這樣編程者可以把一個大工程分解成一個個小工程,交由實時操作系統管理,這符合軟件工程的基本原理。
線程是實時操作系統中最重要的概念之一。在實時操作系統下,把一個復雜的嵌入式應用工程按一定規則分解成一個個功能清晰的小工程,然后設定各個小工程的運行規則,交給實時操作系統管理,這就是基于實時操作系統的基本編程思想。這一個個小工程被稱為線程,實時操作系統管理這些線程,被稱為調度。讀者可以分別從線程調度、軟件設計及CPU等不同視角來理解線程。從線程調度視角來看,實時操作系統中的線程是一個功能清晰的小程序,是實時操作系統調度的基本單元;從軟件設計視角來看,線程是獨立的、相互作用的程序集合;從CPU視角來看,任何時刻只有一個線程占用CPU。調度就是以合理的方式為每個線程分配時間,使之運行。
一個函數只有在給出其線程描述符及線程堆棧的情況下,才可以被稱為線程,才能夠被調度運行。線程一般有四種狀態:終止態、阻塞態、就緒態和激活態。在任一時刻,線程被創建后所處的狀態一定是以上四種狀態之一。線程有三種基本形式,分別是單次執行線程、周期執行線程及資源驅動線程。
推薦閱讀
- Linux設備驅動開發詳解:基于最新的Linux4.0內核
- 每天5分鐘玩轉Kubernetes
- Linux Mint Essentials
- 從零開始寫Linux內核:一書學透核心原理與實現
- BPEL and Java Cookbook
- Mastering KVM Virtualization
- 數據中心系統工程及應用
- RESS Essentials
- 零基礎學鴻蒙PC:新一代國產操作系統
- 直播系統開發:基于Nginx與Nginx-rtmp-module
- Application Development in iOS 7
- jQuery UI Cookbook
- 計算機系統的自主設計
- Distributed Computing with Go
- Linux應用大全 基礎與管理