-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

嵌入式Linux編程

( 簡體 字)
作者:(美)克里斯·西蒙茲(Chris Simmonds)類別:1. -> 作業系統 -> Linux
譯者:
出版社:機械工業出版社嵌入式Linux編程 3dWoo書號: 46545
詢問書籍請說出此書號!

缺書
NT售價: 395

出版日:4/1/2017
頁數:274
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787111561286
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

內容簡介:

本書引導你遍歷整個嵌入式linux產品的周期,并提供在每個階段可用組件和選項的深入描述。首先,你將學習關于工具鏈、引導加載程序、Linux內核,以及如何配置根文件系統。然后,你將學習如何使用兩個常用的構建系統,即Buildroot和Yocto項目,以加快和簡化開發過程。在這個堅實的基礎上,下面的章節考慮如何佳地使用rawNAND/NOR閃存和托管閃存eMMC芯片,包括增加器件壽命的機制以及進行可靠的現場更新。然后,我們將探討POSIX線程的使用,這對終設備的響應能力和性能有著很大的影響。本書的結尾部分探討使用perf和ftrace剖析和跟蹤應用程序以及內核代碼的技術。
目錄:

譯者序
推薦序
審校者簡介
前言
第1章 概述 1
1.1 選擇合適的操作系統 2
1.2 參與者 3
1.3 項目生命周期 4
1.4 開放源碼 5
1.5 嵌入式Linux系統硬件 6
1.6 本書使用的硬件 7
1.7 本書使用的軟件 9
1.8 總結 9
第2章 學習工具鏈 10
2.1 工具鏈是什么 10
2.2 工具鏈類型:本地工具鏈和交叉工具鏈 11
2.3 選擇C庫 13
2.4 尋找工具鏈 14
2.5 工具鏈解析 17
2.6 工具鏈中的其他工具 20
2.7 查看C庫的組件 21
2.8 鏈接庫:靜態和動態鏈接 21
2.9  交叉編譯藝術 24
2.10 交叉編譯的問題 28
2.11 總結 29
第3章 引導加載程序 30
3.1 引導加載程序都做了些什么 30
3.2 引導序列 31
3.3 使用UEFI固件引導 32
3.4 從引導加載程序到內核 33
3.5 設備樹介紹 34
3.6 選擇引導加載程序 38
3.7 U-Boot 39
3.8 Barebox 49
3.9 總結 51
第4章 移植與配置內核 52
4.1 內核做了什么 52
4.2 選擇內核 53
4.3 內核構建 55
4.4 編譯 60
4.5 清理內核源 63
4.6 啟動你的內核 63
4.7 將Linux移植到新板上 66
4.8 延伸閱讀 69
4.9 總結 69
第5章 構建根文件系統 71
5.1 根文件系統是什么 71
5.2 根文件系統的程序 75
5.3 根文件系統庫 78
5.4 設備節點 79
5.5 proc與sysfs文件系統 80
5.6 內核模塊 81
5.7 把根文件系統轉移到目標 81
5.8 創建啟動內存磁盤 82
5.9 init程序 85
5.10 配置用戶賬號 86
5.11 啟動守護進程 87
5.12 管理設備節點的更好方法 88
5.13 配置網絡 89
5.14 借助設備表創建文件系統映像 90
5.15 使用NFS掛載根文件系統 92
5.16 使用TFTP加載內核 94
5.17 延伸閱讀 95
5.18 總結 95
第6章 選擇構建系統 96
6.1 不再手動創建嵌入式Linux 96
6.2 構建系統 96
6.3 包格式和包管理器 98
6.4 Buildroot 98
6.5 Yocto項目 104
6.6 延伸閱讀 116
6.7 總結 116
第7章 創建存儲策略 117
7.1 存儲器選擇 117
7.2 從引導加載程序訪問閃存 121
7.3 從Linux中訪問閃存 122
7.4 閃存文件系統 127
7.5 NOR和NAND閃存的文件系統 128
7.6 托管閃存的文件系統 134
7.7 只讀壓縮文件系統 138
7.8 臨時文件系統 138
7.9 使根文件系統為只讀 139
7.10 文件系統選擇 140
7.11 現場更新 140
7.12 延伸閱讀 142
7.13 總結 143
第8章 設備驅動程序介紹 144
8.1 設備驅動程序的作用 144
8.2 字符設備 145
8.3 塊設備 147
8.4 網絡設備 147
8.5 在運行時尋找驅動程序 149
8.6 找到正確的設備驅動程序 153
8.7 用戶空間中的設備驅動程序 153
8.8 編寫內核設備驅動程序 158
8.9 加載內核模塊 163
8.10 查找硬件配置 163
8.11 延伸閱讀 166
8.12 總結 167
第9章 啟動初始化程序 168
9.1 在內核啟動后 168
9.2 初始化程序簡介 169
9.3 BusyBox init 169
9.4 System V init 171
9.5 systemd 176
9.6 延伸閱讀 181
9.7 總結 181
第10章 學習進程和線程 182
10.1 進程還是線程 182
10.2 進程 183
10.3 線程 191
10.4 調度 196
10.5 延伸閱讀 200
10.6 總結 200
第11章 內存管理 201
11.1 虛擬內存基礎 201
11.2 內核空間內存布局 202
11.3 用戶空間內存布局 205
11.4 進程內存映射 206
11.5 交換 207
11.6 用mmap映射內存 208
11.7 我的應用程序使用了多少內存 209
11.8 每個進程的內存使用情況 210
11.9 識別內存泄漏 213
11.10 內存耗盡 215
11.11 延伸閱讀 217
11.12 總結 217
第12章 使用GDB調試 218
12.1 GNU調試器:GDB 218
12.2 準備調試 218
12.3 使用GDB調試應用程序 219
12.4 使用gdbserver遠程調試 219
12.5 開始調試 221
12.6 調試共享庫 224
12.7 即時調試 225
12.8 調試分叉和線程 226
12.9 核心文件 226
12.10 GDB用戶界面 228
12.11 調試內核代碼 230
12.12 延伸閱讀 237
12.13 總結 237
第13章 剖析和跟蹤 238
13.1 觀察者效應 238
13.2 開始剖析 239
13.3 使用top進行剖析 240
13.4 介紹perf 241
13.5 其他剖析器:OProf?ile和gprof 245
13.6 跟蹤事件 247
13.7 介紹Ftrace 247
13.8 使用LTTng 252
13.9 使用Valgrind剖析應用程序 256
13.10 Callgrind 256
13.11 Helgrind 256
13.12 使用strace顯示系統調用 257
13.13 總結 259
第14章 實時編程 260
14.1 什么是實時性 260
14.2 確認非確定性的來源 262
14.3 理解調度延遲 263
14.4 內核搶占 263
14.5 實時Linux內核(PREEMPT_RT) 264
14.6 線程化中斷處理程序 264
14.7 可搶占的內核鎖 266
14.8 獲得PREEMPT_RT補丁 266
14.9 高精度定時器 267
14.10 在實時應用中避免頁面錯誤 268
14.11 中斷屏蔽 269
14.12 測量調度延遲 269
14.13 延伸閱讀 273
14.14 總結 273
序: