UEFI原理與編程

UEFI原理與編程 pdf epub mobi txt 電子書 下載2025

出版者:機械工業齣版社
作者:戴正華
出品人:
頁數:416
译者:
出版時間:2015-1
價格:89.00
裝幀:平裝
isbn號碼:9787111487296
叢書系列:實戰係列
圖書標籤:
  • UEFI
  • 操作係統
  • UEFI原理與編程
  • 計算機
  • 計算機科學
  • 紀念w君
  • 基礎
  • 41操作係統
  • UEFI
  • 固件
  • 編程
  • 嵌入式係統
  • 計算機體係結構
  • BIOS
  • 係統編程
  • 硬件
  • 開發
  • x86
想要找書就要到 小美書屋
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

具體描述

《UEFI原理與編程》是國內首部UEFI專著,由資深UEFI專傢兼布道者撰寫,英特爾中國研究院院長吳甘沙強烈推薦!

《UEFI原理與編程》以實戰為導嚮,麵嚮UEFI的使用者和開發者,首先細緻地介紹瞭UEFI的係統組成、啓動過程、優點,以及各種係統中的開發環境搭建;然後深入剖析瞭UEFI的工作原理,包括UEFI工程模塊、各種協議、基礎服務、事件、硬盤和文件係統等內容;最後講解瞭UEFI的開發,涉及UEFI服務的開發、UEFI驅動的開發、多任務應用的開發、網絡應用的開發、GUI應用的開發,以及如何用C++和C標準庫開發UEFI應用,等等。

【名傢推薦】

6年前,正華還是英特爾中國研究院並行編程團隊的一員虎將。他話雖不多,但勤於思考,用心鑽研,技術紮實。不覺已是六年,正華轉戰UEFI,取得瞭斐然成績,並且筆耕不輟成就此書。我非常感佩於正華的嚴謹治學態度,本書幾易其稿,反復修改瞭近一年,凝聚瞭他的學識和心血。過去十幾年,UEFI的應用場景從PC擴展到手機、嵌入式甚至物聯網設備,極大地縮短瞭係統開發時間,在安全性、兼容性、可擴展性和易用性上都各具亮點。矢誌享受駕馭硬件之趣的同學們,請翻開此書,係統上電,在作者真誠的分享中,開始與硬件的親密接觸。

—— 吳甘沙 英特爾中國研究院院長

著者簡介

戴正華 UEFI領域的資深專傢、先驅者和布道者,緻力於UEFI技術的研究、實踐和推廣,積纍瞭豐富的經驗。曾就職於斯福泰剋和英特爾並行計算中心, 在英特爾中國研究院參與Ct(Arbb)編譯器的開發及推廣工作。目前就職於CryptoMill,從事信息保護方麵的開發。

圖書目錄


前 言
第1章 UEFI概述 1
1.1 BIOS的前世今生 1
1.1.1 BIOS在計算機係統中的作用 1
1.1.2 BIOS缺點 2
1.2 初識UEFI 2
1.2.1 UEFI係統組成 3
1.2.2 UEFI的優點 4
1.2.3 UEFI係統的啓動過程 5
1.3 本章小結 12
第2章 UEFI 開發環境搭建 14
2.1 配置Windows開發環境 14
2.1.1 安裝所需開發工具 15
2.1.2 配置EDK2開發環境 15
2.1.3 編譯UEFI模擬器和UEFI工程 17
2.1.4 運行模擬器 19
2.2 配置Linux 開發環境 21
2.2.1 安裝所需開發工具 22
2.2.2 配置EDK2開發環境 22
2.2.3 編譯UEFI模擬器和UEFI工程 23
2.2.4 運行模擬器 24
2.3 OVMF的製作和使用 25
2.4 UEFI的啓動 27
2.5 本章小結 28
第3章 UEFI工程模塊文件 29
3.1 標準應用程序工程模塊 30
3.1.1 入口函數 30
3.1.2 工程文件 31
3.1.3 編譯和運行 37
3.1.4 標準應用程序的加載過程 37
3.2 其他類型工程模塊 43
3.2.1 Shell應用程序工程模塊 43
3.2.2 使用main函數的應用程序工程模塊 46
3.2.3 庫模塊 47
3.2.4 UEFI驅動模塊 49
3.2.5 模塊工程文件小結 50
3.3 包及.dsc、.dec、.fdf文件 51
3.3.1 .dsc文件 51
3.3.2 .dec文件 56
3.4 調試UEFI 59
3.5 本章小結 61
第4章 UEFI中的Protocol 62
4.1 Protocol 在UEFI內核中的錶示 64
4.2 如何使用Protocol服務 65
4.2.1 OpenProtocol服務 66
4.2.2 HandleProtocol服務 67
4.2.3 LocateProtocol服務 69
4.2.4 LocateHandleBuffer服務 69
4.2.5 其他一些使用Protocol的服務 71
4.2.6 CloseProtocol服務 72
4.3 Protocol服務示例 73
4.4 本章小結 75
第5章 UEFI的基礎服務 76
5.1 係統錶 76
5.1.1 係統錶的構成 77
5.1.2 使用係統錶 79
5.2 啓動服務 82
5.2.1 啓動服務的構成 82
5.2.2 啓動服務的生存期 91
5.3 運行時服務 93
5.4 本章小結 102
第6章 事件 103
6.1 事件函數 104
6.1.1 等待事件的服務WaitForEvent 105
6.1.2 生成事件的服務CreateEvent 106
6.1.3 CreateEventEx服務 110
6.1.4 事件相關的其他函數 112
6.2 定時器事件 113
6.3 任務優先級 114
6.3.1 提升和恢復任務優先級 115
6.3.2 UEFI中的時鍾中斷 116
6.3.3 UEFI事件Notif?ication函數的派發 126
6.4 鼠標和鍵盤事件示例 127
6.5 本章小結 128
第7章 硬盤和文件係統 129
7.1 GPT硬盤 129
7.1.1 基於MBR分區的傳統硬盤 129
7.1.2 GPT硬盤詳解 130
7.2 設備路徑 134
7.3 硬盤相關的Protocol 139
7.3.1 BlockIo解析 140
7.3.2 BlockIo2解析 142
7.3.3 DiskIo解析 146
7.3.4 DiskIo2解析 147
7.3.5 PassThrough解析 150
7.4 文件係統 152
7.5 文件操作 153
7.5.1 打開文件 154
7.5.2 讀文件 156
7.5.3 寫文件 159
7.5.4 關閉文件(句柄) 160
7.5.5 其他文件操作 160
7.5.6 異步文件操作 162
7.5.7 EFI_SHELL_PROTOCOL中的文件操作 166
7.6 本章小結 170
第8章 開發UEFI服務 171
8.1 Protocol服務接口設計 172
8.2 Protocol服務的實現 174
8.3 服務型驅動的框架 178
8.4 ffmpeg的移植與編譯 179
8.4.1 libavcodec的建立和移植 181
8.4.2 其他庫的建立與移植 182
8.4.3 在驅動型服務中使用StdLib 186
8.5 使用Protocol服務 188
8.6 本章小結 190
第9章 開發UEFI驅動 191
9.1 UEFI驅動模型 192
9.1.1 EFI Driver Binding Protocol的構成 192
9.1.2 EFI Component Name Protocol的作用和構成 196
9.2 編寫設備驅動的步驟 197
9.3 PCI設備驅動基礎 199
9.4 AC97控製器芯片的控製接口 202
9.5 AC97驅動 206
9.5.1 AC97驅動的驅動服務EFI_AUDIO_PROTOCOL 206
9.5.2 AC97驅動的框架部分 213
9.5.3 AC97驅動實驗 220
9.6 本章小結 221
第10章 用C++開發UEFI應用 222
10.1 從編譯器角度看C與C++的差異 222
10.2 在EDK2中支持C++ 224
10.2.1 使EDK2支持C++基本特性 224
10.2.2 在Windows係統下的程序啓動過程 226
10.2.3 在Windows係統下支持全局構造和析構 229
10.2.4 在Linux係統下的程序啓動過程 231
10.2.5 在Linux係統下支持全局構造和析構 240
10.2.6 支持new和delete 242
10.2.7 支持STL 243
10.3 GcppPkg概覽 243
10.4 測試GcppPkg 246
10.5 本章小結 248
第11章 GUI基礎 249
11.1 字符串 249
11.1.1 字符串函數 249
11.1.2 字符串資源 251
11.1.3 管理字符串資源 255
11.2 管理語言 260
11.3 包列錶 262
11.4 圖形界麵顯示 263
11.4.1 顯示模式 264
11.4.2 Block Transfer(Blt)傳輸圖像 267
11.4.3 在圖形界麵下顯示字符串 269
11.5 用SimpleFont顯示中文 272
11.5.1  SimpleFont 格式 273
11.5.2 如何生成字體文件 275
11.5.3 如何注冊字體文件 276
11.6 開發SimpleFont字庫程序 277
11.7 字體Font 278
11.7.1 Font的格式 279
11.7.2 字體包的格式 279
11.7.3 為什麼Font性能高於SimpleFont 281
11.8 本章小結 284
第12章 GUI應用程序 285
12.1 UEFI事件處理 285
12.1.1 鍵盤事件 285
12.1.2 鼠標事件 292
12.1.3 定時器事件 293
12.1.4 UI事件服務類 294
12.2 事件處理框架 297
12.3 鼠標與控件的繪製 302
12.3.1 鼠標的繪製 303
12.3.2 控件的繪製 305
12.4 控件係統包GUIPkg 306
12.5 簡單視頻播放器的實現 309
12.6 本章小結 315
第13章 深入瞭解多任務 317
13.1 多處理器服務 317
13.1.1 EFI_MP_SERVICES_PROTOCOL功能及用法 317
13.1.2 啓動AP的過程 324
13.2 內聯匯編基礎和寄存器上下文的保存與恢復 333
13.2.1 內聯匯編基礎 333
13.2.2 寄存器上下文的保存與恢復 335
13.3 多綫程 336
13.3.1 生成綫程 337
13.3.2 調度綫程 340
13.3.3 等待綫程結束 341
13.3.4 SimpleThread服務 341
13.4 本章小結 345
第14章 網絡應用開發 346
14.1 在UEFI中使用網絡 348
14.2 使用EFI_TCP4_PROTOCOL 350
14.2.1 生成Socket對象 352
14.2.2 連接 356
14.2.3 傳輸數據 358
14.2.4 關閉Socket 361
14.2.5 測試Socket 362
14.3 本章小結 363
第15章 使用C標準庫 364
15.1 為什麼使用C標準庫函數 364
15.2 實現簡單的Std函數 365
15.2.1 簡單標準庫函數包sstdPkg 366
15.2.2 使用sstdPkg 368
15.3 使用EDK2的StdLib 369
15.3.1 main函數工程 369
15.3.2 非main函數工程 374
15.4 本章小結 376
第16章 Shell及常用Shell命令 377
16.1 Shell的編譯與執行 377
16.2 Shell服務 379
16.3 Shell腳本 385
16.3.1 Shell腳本語法簡介 385
16.3.2 自動運行指定應用程序 388
16.4 Shell內置命令 388
16.4.1 調試設備的相關命令 388
16.4.2 驅動相關命令 390
16.4.3 網絡相關命令 392
16.5 本章小結 394
附錄A UEFI常用術語及簡略語 395
附錄B RFC 4646常用語言列錶 397
附錄C 狀態值 398
附錄D 參考資料 400
· · · · · · (收起)

讀後感

評分

評分

評分

評分

評分

用戶評價

评分

國內工程師寫到這個水平應該算還不錯的瞭,本來想給四星,看其花瞭不少功夫用介紹VisualStudio下的環境配置和用VS下開發常用概念來類比解釋,降一星。

评分

國內工程師寫到這個水平應該算還不錯的瞭,本來想給四星,看其花瞭不少功夫用介紹VisualStudio下的環境配置和用VS下開發常用概念來類比解釋,降一星。

评分

你們的底層已突破天際

评分

國內工程師寫到這個水平應該算還不錯的瞭,本來想給四星,看其花瞭不少功夫用介紹VisualStudio下的環境配置和用VS下開發常用概念來類比解釋,降一星。

评分

你們的底層已突破天際

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.quotespace.org All Rights Reserved. 小美書屋 版权所有