预购商品
书目分类
特别推荐
第1章 工欲善其事,必先利其器 1.1 程式編輯工具:Vim 1.2 程式編譯工具:make 1.3 程式管理工具:Git 第2章 電腦系統結構與CPU工作原理 2.1 一顆晶片是怎樣誕生的 2.2 一顆CPU是怎麼設計出來的 2.3 電腦系統結構 2.4 CPU性能提升:Cache機制 2.5 CPU性能提升:管線 2.6 多核心CPU 2.7 後莫爾時代:異質計算的崛起 2.8 匯流排與地址 2.9 指令集與微架構 第3章 ARM系統結構與組合語言 3.1 ARM系統結構 3.2 ARM組合語言指令 3.3 ARM定址方式 3.4 ARM虛擬指令 3.5 ARM組合語言程式設計 3.6 C語言和組合語言混合程式設計 3.7 GNU ARM組合語言 第4章 程式的編譯、連結、安裝和運行 4.1 從來源程式到二進位檔案 4.2 前置處理過程 4.3 程式的編譯 4.4 連結過程 4.5 程式的安裝 4.6 程式的運行 4.7 連結靜態程式庫 4.8 動態連結 4.9 外掛程式的工作原理 4.10 Linux核心模組運行機制 4.11 Linux核心編譯和啟動分析 4.12 U-boot重定位分析 4.13 常用的binutils工具集 第5章 記憶體堆疊管理 5.1 程式運行的“馬甲”:處理程序 5.2 Linux環境下的記憶體管理 5.3 堆疊的管理 5.4 堆積記憶體管理 5.5 mmap映射區域探秘 5.6 記憶體洩漏與防範 5.7 常見的記憶體錯誤及檢測 第6章 GNU C編譯器擴充語法精講 6.1 C語言標準和編譯器 6.2 指定初始化 6.3 巨集構造“利器”:敘述運算式 6.4 typeof與container_of巨集 6.5 零長度陣列 6.6 屬性宣告:section 6.7 屬性宣告:aligned 6.8 屬性宣告:format 6.9 屬性宣告:weak 6.10 內聯函數 6.11 內建函數 6.12 可變參數巨集 第7章 資料儲存與指標 7.1 資料型態與儲存 7.2 資料對齊 7.3 資料的可攜性 7.4 Linux核心中的size_t類型 7.5 為什麼很多人程式設計時喜歡用typedef 7.6 列舉類型 7.7 常數和變數 7.8 從變數到指標 7.9 指標與陣列的“曖昧”關係 7.10 指標與結構 7.11 二級指標 7.12 函數指標 7.13 重新認識void 第8章 C語言的物件導向程式設計思想 8.1 程式重複使用與分層思想 8.2 物件導向程式設計基礎 8.3 Linux核心中的OOP思想:封裝 8.4 Linux核心中的OOP思想:繼承 8.5 Linux核心中的OOP思想:多形 第9章 C語言的模組化程式設計思想 9.1 模組的編譯和連結 9.2 系統模組劃分 9.3 一個模組的封 9.4 標頭檔深度剖析 9.5 模組設計原則 9.6 被誤解的關鍵字:goto 9.7 模組間通訊 9.8 模組設計進階 9.9 AIoT時代的模組化程式設計 第10章 C語言的多工程式設計思想和作業系統入門 10.1 多工的裸機實現 10.2 作業系統基本原理 10.3 中斷 10.4 系統呼叫 10.5 揭開檔案系統的神秘面紗 10.6 記憶體介面與映射 10.7 記憶體與外部設備 10.8 暫存器操作 10.9 記憶體管理單元MMU 10.10 處理程序、執行緒和程式碼協同 參考文獻
作者簡介 王利濤 嵌入式工程師,培訓講師,多年嵌入式開發經驗,包括晶片測試、BSP、驅動開發、USB子系統等,目前在開發“嵌入式工程師自我修養”系列線上影片教學,以及在個人部落格“宅學部落”分享更多的嵌入式、Linux、AIoT技術。
最近浏览商品
客服公告
热门活动
订阅电子报