鴻蒙操作系統設計原理與架構
李毅 任革林
- 出版商: 人民郵電
- 出版日期: 2024-08-01
- 售價: $1,014
- 貴賓價: 9.5 折 $963
- 語言: 簡體中文
- 頁數: 558
- 裝訂: 平裝
- ISBN: 7115644462
- ISBN-13: 9787115644466
-
相關分類:
Operating-system
立即出貨 (庫存 < 4)
商品描述
本書重點介紹了鴻蒙操作系統的設計背景、設計理念和設計原則,同時對鴻蒙操作系統的整體架構、關鍵子系統的技術架構和主要設計思路進行了詳細的解析。第1章~第3章對鴻蒙操作系統進行整體概述,重點介紹操作系統的發展和鴻蒙操作系統誕生的技術背景、試圖解決的主要技術問題,同時介紹了鴻蒙操作系統的設計理念、主要技術特徵,以及部件化架構原理解析。第4章~第16章介紹關鍵子系統,分門別類地闡述鴻蒙操作系統關鍵子系統的技術架構和主要設計思路,包括統一內核、驅動子系統、分佈式技術、方舟編譯運行時子系統、UI框架、圖形子系統、多媒體子系統、安全子系統、DFX框架和文件管理的架構設計思路。
本書適合對操作系統感興趣的開發者、鴻蒙操作系統生態的參與者、相關領域的研究人員,以及相關專業的高校師生閱讀和學習。
作者簡介
李 毅
华为OpenHarmony首席架构师近30年的基础软件及硬件设计经验,曾任华为终端OS平台首席架构师、EMUI首席架构师,OpenHarmony开源社区PMC主席等,主持过华为公司多个重大技术项目的架构设计工作。
任革林
华为OpenHarmony架构师OpenHarmony开源社区PMC主席、架构SIG组长。20多年的软件开发经验,从事过终端操作系统、游戏软件、导航软件、通信协议软件的开发和设计工作。主持过华为公司多个重大技术项目的架构设计工作。
目錄大綱
目錄
第 1章 操作系統的發展史和演進 001
1.1 操作系統概述 002
1.2 操作系統的發展史 003
1.3 下一代電腦體系結構 011
1.4 萬物互聯時代面臨的挑戰 013
1.4.1 萬物互聯時代已來臨 014
1.4.2 改善終端用戶體驗的訴求 015
1.4.3 開發者面臨的挑戰 017
1.5 下一代操作系統的關鍵特徵 018
第 2章 HarmonyOS設計理念 021
2.1 HarmonyOS底層設計理念 022
2.2 HarmonyOS試圖解決的問題 022
2.3 HarmonyOS基本設計理念 024
2.3.1 超級終端的用戶體驗 024
2.3.2 “一次開發,多端部署”的用戶程序開發體驗 037
2.3.3 積木化拼裝的設備開發體驗 043
2.4 HarmonyOS的目標 043
2.4.1 業務目標 044
2.4.2 架構目標 044
2.4.3 架構設計原則 045
2.5 HarmonyOS架構設計 046
2.6 HarmonyOS關鍵技術 047
第3章 部件化架構原理解析 053
3.1 部件化架構 054
3.1.1 架構設計 054
3.1.2 HarmonyOS部件化架構設計 055
3.2 原理解析 059
3.2.1 部件管理 059
3.2.2 SysCap機制 061
3.2.3 SysCap使用指南 064
第4章 統一內核原理解析 069
4.1 內核子系統 070
4.2 HarmonyOS LiteOS-M內核 071
4.2.1 LiteOS-M內核概述 071
4.2.2 任務管理 073
4.2.3 內存管理 074
4.2.4 內核通信機制 077
4.3 HarmonyOS LiteOS-A內核 082
4.3.1 LiteOS-A內核概述 083
4.3.2 內核啟動 085
4.3.3 內存管理 089
4.3.4 進程管理 093
4.3.5 擴展能力 097
4.4 HarmonyOS Linux內核 105
4.4.1 內核合入規則 105
4.4.2 HCK機制 106
4.4.3 config分層配置機制 108
4.4.4 分佈式文件系統 110
4.4.5 新型內存擴展機制:ESwap 116
第5章 驅動子系統原理解析 121
5.1 HDF驅動框架 122
5.1.1 HDF架構 122
5.1.2 HDF運行模型 123
5.1.3 設備驅動的組成 124
5.1.4 設備與驅動之間的模型 126
5.1.5 HDI 126
5.2 HDF驅動框架工作原理 127
5.2.1 驅動配置管理 129
5.2.2 設備驅動加載 130
5.2.3 設備電源管理 132
5.3 HDF驅動框架部署 134
5.3.1 內核態部署 134
5.3.2 用戶態部署 135
第6章 分佈式軟總線原理解析 137
6.1 全場景下麵臨的挑戰 138
6.2 什麽是軟總線 142
6.2.1 軟總線的由來 142
6.2.2 軟總線的目標 144
6.3 軟總線技術架構 146
6.4 軟總線發現技術 149
6.4.1 發現模塊邏輯架構 149
6.4.2 發現模塊關鍵技術 150
6.4.3 發現協議 152
6.5 軟總線連接技術 156
6.5.1 連接模塊邏輯架構 157
6.5.2 連接模塊關鍵技術 160
6.6 軟總線組網技術 161
6.6.1 組網模塊邏輯架構 162
6.6.2 組網模塊關鍵技術 165
6.7 軟總線傳輸技術 166
6.7.1 傳輸模塊邏輯架構 166
6.7.2 傳輸模塊關鍵技術 168
6.8 使用軟總線 170
第7章 分佈式數據管理框架原理解析 177
7.1 分佈式數據管理架構 178
7.2 數據訪問 180
7.2.1 分佈式數據庫 180
7.2.2 分佈式數據對象 180
7.2.3 用戶首選項 181
7.3 數據同步 181
7.3.1 網絡模型 181
7.3.2 數據三元組 182
7.3.3 數據同步過程 183
7.3.4 水位管理 185
7.3.5 時間同步 186
7.3.6 沖突解決 189
7.4 數據存儲 190
7.5 數據安全 196
第8章 分佈式硬件平臺原理解析 199
8.1 分佈式硬件平臺應運而生 200
8.2 適用場景 201
8.3 分佈式硬件框架 203
8.4 分佈式硬件運行機制 205
8.5 硬件資源池化技術 206
8.5.1 什麽是虛擬化 207
8.5.2 硬件虛擬化技術 208
8.5.3 如何管理硬件資源池化 211
8.5.4 硬件資源池化支持的能力 213
8.6 硬件協同調度技術 213
8.6.1 設備發現和認證技術 214
8.6.2 硬件自適應技術 215
8.6.3 硬件協同同步技術 216
8.6.4 硬件解耦映射技術 217
8.6.5 硬件自動跟隨應用跨端遷移 218
8.7 應用使用流程 219
8.7.1 應用使用案例 219
8.7.2 能力開放 220
8.7.3 對開發者的要求 221
第9章 方舟編譯運行時原理解析 223
9.1 方舟編譯運行時設計目標 224
9.2 前端編譯器 226
9.2.1 前端編譯器功能 226
9.2.2 字節碼文件格式 227
9.2.3 方舟字節碼 229
9.3 方舟編譯運行時執行引擎 230
9.3.1 總體介紹 230
9.3.2 解釋器 231
9.3.3 優化編譯器 232
9.4 方舟編譯運行時內存管理 236
9.4.1 內存管理 236
9.4.2 內存分配 237
9.4.3 垃圾回收 240
第 10章 分佈式應用框架原理解析 243
10.1 應用框架管理 244
10.1.1 設計意圖 245
10.1.2 總體設計原則 246
10.1.3 架構與組成概述 246
10.2 Ability管理 247
10.2.1 設計理念 248
10.2.2 主要職責 248
10.2.3 詳細描述 250
10.3 窗口管理 253
10.3.1 設計理念 253
10.3.2 主要職責 254
10.3.3 詳細描述 256
10.4 全局包管理 259
10.4.1 設計理念 259
10.4.2 主要職責 260
10.4.3 詳細描述 260
10.4.4 HAP管理 262
10.4.5 原子化服務的免安裝及老化 264
10.5 跨端遷移框架 265
10.5.1 設計理念 266
10.5.2 主要職責 266
10.5.3 詳細描述 267
10.6 多端協同框架 268
10.6.1 設計理念 268
10.6.2 主要職責 269
10.6.3 詳細描述 269
第 11章 UI框架原理解析 273
11.1 UI框架概述 274
11.2 UI框架的演進 275
11.3 多設備場景下UI框架面臨的挑戰 277
11.4 HarmonyOS UI框架核心原理 278
11.4.1 整體架構 278
11.4.2 關鍵設計 281
11.5 ArkUI的探索和優化 339
第 12章 圖形子系統原理解析 341
12.1 圖形子系統的設計目標 342
12.2 圖形子系統的邏輯架構 344
12.3 圖形子系統的關鍵模塊 345
12.3.1 窗口與動畫 345
12.3.2 統一渲染 350
12.3.3 2D渲染引擎 372
12.3.4 3D渲染引擎 376
12.3.5 顯示管理 383
12.3.6 高階算子庫 386
12.3.7 圖形驅動 387
12.3.8 游戲體驗 390
第 13章 多媒體子系統原理解析 395
13.1 多媒體子系統概述 396
13.2 音頻服務 397
13.2.1 音頻服務框架 398
13.2.2 音頻播放 399
13.2.3 音頻採集 400
13.2.4 音頻策略管理 401
13.2.5 音量管理 403
13.2.6 音頻低時延 404
13.3 視頻服務 404
13.3.1 視頻服務框架 405
13.3.2 音視頻播放 406
13.3.3 音視頻錄制 411
13.3.4 音視頻編解碼 412
13.3.5 封裝/解封裝 415
13.3.6 元數據/縮略圖 415
13.4 相機服務 416
13.4.1 相機服務建模思路 416
13.4.2 相機服務框架 418
13.4.3 相機控制 420
13.4.4 相機預覽 424
13.4.5 相機拍照 425
13.4.6 相機錄像 426
13.5 圖像服務 427
13.5.1 圖像解碼 430
13.5.2 圖像編解碼插件管理 431
13.5.3 圖像使用優化 433
13.6 媒體數據管理框架服務 433
13.6.1 媒體數據管理框架 434
13.6.2 媒體數據同步與訪問 437
13.6.3 媒體數據變更通知 441
第 14章 安全子系統原理解析 443
14.1 HarmonyOS安全理念 444
14.1.1 HarmonyOS安全風險評估 444
14.1.2 HarmonyOS安全架構 445
14.2 HarmonyOS“正確的人”身份管理與認證 451
14.2.1 IAM身份認證架構 451
14.2.2 PIN碼認證 452
14.3 HarmonyOS“正確的設備”系統安全架構 452
14.3.1 HarmonyOS系統安全邏輯架構 453
14.3.2 完整性保護 454
14.3.3 加密及數據保護 457
14.3.4 權限及訪問控制 462
14.3.5 漏洞防利用 468
14.3.6 TEE 476
14.3.7 SE安全芯片 479
14.3.8 HarmonyOS設備安全分級 481
14.3.9 設備分佈式可信互聯 483
14.4 HarmonyOS“正確地訪問數據”分級訪問控制架構 484
14.4.1 數據分級規範 485
14.4.2 數據安全與用戶隱私生命周期管理 486
14.4.3 數據生成的安全機制 486
14.4.4 數據存儲的安全機制 487
14.4.5 數據使用的安全機制 487
14.4.6 數據傳輸的安全機制 488
14.4.7 數據銷毀的安全機制 489
14.5 HarmonyOS生態治理架構 489
14.5.1 HarmonyOS應用程序生命周期安全管理架構 489
14.5.2 HarmonyOS應用程序“純凈”開發 490
14.5.3 HarmonyOS應用程序“純凈”上架 490
14.5.4 HarmonyOS應用程序“純凈”運行 490
14.5.5 HarmonyOS設備生態治理架構 492
14.5.6 HarmonyOS設備生態合作夥伴認證 492
14.5.7 HarmonyOS生態設備安全認證 493
14.5.8 HarmonyOS生態設備分級管控機制 493
第 15章 DFX框架原理解析 495
15.1 常見DFX定義 496
15.2 操作系統DFX 497
15.3 HarmonyOS DFX框架 499
15.4 HarmonyOS DFX關鍵特性 500
15.4.1 流水日誌 HiLog 500
15.4.2 事件框架 HiView 505
15.4.3 調用跟蹤 HiTrace 509
15.4.4 信息導出 HiDumper 516
15.4.5 故障檢測 FaultDetector 519
15.4.6 缺陷檢測 HiChecker 525
15.4.7 調優 HiProfiler 528
15.5 DFX特性典型應用場景 531
15.5.1 產品可維可測設計 531
15.5.2 調試調優 533
15.5.3 質量分析 538
15.6 演進與展望 539
第 16章 文件管理原理解析 541
16.1 HarmonyOS文件管理設計背景 542
16.2 設計目標 542
16.3 總體架構 544
16.4 關鍵技術 547
16.4.1 用戶文件管理 547
16.4.2 應用文件管理 551
16.4.3 存儲管理 556
參考文獻 558