Please enable JavaScript.
Coggle requires JavaScript to display documents.
embedded system ch 4 嵌入式系統平台實作 - Coggle Diagram
embedded system ch 4
嵌入式系統平台實作
4-4 嵌入式作業系統-OS在哪?
嵌入式作業系統特性
romable
scalable and configuration
multi-tasking
portable
scheduling algorithm
task or thread同步機制 semaphore mutex
task IPC 如mail box message queue
中斷管理
記憶體軟體
資源管理
即時系統
可中斷性
可預測性 函數 服務 執行時間確定
穩定與可靠
嵌入式作業系統
嵌入式是系統task架構實例
main task - check event process event sleep
idle test - cpu sleep .... hw event trigger CPU wakeup ...and trigger main task
boot - create main task, idle task ,start rtos
ISR
作業系統
系統流程啟動圖
協調系統中多個task or thread執行
定義 管理硬體軟體資源的程式
memroy
系統資源供需優先次序
IO device
network
提供user一個與系統互動的介面
file system
4-5 模擬器
simulator - source
emulator - CPU
4-3 API與程式風格設計
應用程式風格
API
系統程式風格
以訊息導向的城市風格為例
4-6 source tree設計
整合時重要觀念
source tree設計原則
表達系統架構精神 不同性質程式分開
third party lib
include
AP
build
system
simulator
dirver
tools
doc
4-2 系統架構設計
硬體相關與硬體無關 - 可重用性&可移植性
資料流
資料流架構圖
系統層 無限迴圈 check event
系統處裡完硬體事件 再決定是否送給應用程式 callback function
ISR 設定全域變數 or message queue
裝置發生變化 驅動程式執行
輸入源 polling or 中斷
系統架構 從粗略到逐漸精細的方塊圖
作業系統層
硬體相關
OS
RTC(reak time clock)
中斷控制
timer
多工(task or thread切換時必須保留目前的CPU狀態)
以上為跟硬體相關的系統部分
硬體無關
同步機制 message box message queue event semaphore mutex
動態記憶體管理
task or thread間的通訊
圖時函式庫與GUI
driver層
驅動周邊設備
其他模組需要呼叫的API
其他子系統
解壓縮函式庫
檔案系統等
網路通訊協定
硬體層
模擬器
real target
基於產品特色專屬的函式庫
應用程式
系統架構注意事項
程式模組間相關性越低越好
應該有模組的單元測試與壓力測試
API簡單明瞭
利用callback觀念讓應用程式工程師可以嵌入程式到系統中
system configuration 可擴充性&可調整性
產品規格review
系統設計流程
設計期 建構系統架構
進化期 改良系統
分析期 發展系統行為模式
維護期 改良移交之後的系統
觀念期 確認核心需求
設計系統架構前注意事項
各層間的溝通介面
是否用物件導向觀念設計系統
產品特性
專案管理
品質要求
人力與時程
產品規格
系統
realtime需求
multi-tasking or multi-threading需求
電源管理管理
可擴充性
可移植性
硬體規格
弄清楚產品規格才能進行系統設計
4-7 程式風格典範
header file
4-1 系統與平台
平台
win xp+win32 sdk
mysql+php
硬體(嵌入式系統的話)
模擬器
嵌入式軟體
bootloader ch6 + driver
OS & API
子系統與函式庫
應用程式
嵌入式系統平台
開發環境(compiler 除錯與下載工具) ch5
模擬器 ch9
硬體平台
程式寫作規範
系統軟體+驅動程式 ch7