購物比價找書網找車網
FindBook
排序:
 
 有 1 項符合

盧譽聲

的圖書
高級C/C++編譯技術(典藏版)
$ 465
高級C/C++編譯技術(典藏版)
作者:(米蘭·斯特瓦諾維奇 / 譯者:盧譽聲 
出版社:機械工業出版社
出版日期:2023-01-01
語言:簡體中文   規格:平裝 / 266頁 / 16k/ 19 x 26 x 1.33 cm / 普通級/ 單色印刷 / 1-1
博客來 博客來 - C/C++  - 來源網頁  
圖書介紹看圖書介紹
圖書介紹 - 資料來源:博客來   評分:
圖書名稱:高級C/C++編譯技術(典藏版)

內容簡介

學習如何編寫C和C++代碼僅僅是個開始。如果你希望從事系統底層開發工作,或想深入理解作業系統、編譯器及它們之間內在的關聯,成為程式設計專家,那麼就必須充分瞭解編譯器生成的二進位檔案(目的檔案、靜態程式庫、動態庫和可執行檔)的作用和結構。開源已經在許多方面從根本上改變了軟體的原有面貌,越來越多的系統開始採用或集成開原始程式碼,因此對每位開發人員來說,學習和理解這些底層技術也變得十分重要。

本書深入淺出地講解了構建過程(編譯、連結)中的細節,從多個角度展示了程式與庫檔或代碼的集成方法,提出了面向代碼重用和系統集成的軟體架構設計方法,同時展示了系統開發過程中疑難問題的解決方案。另外,本書也是一本C和C++二進位檔案方面的軟體工程指南,涵蓋中級和專家級程式師所需的各方面內容和資訊。

通過閱讀本書,你將學到:

*構建過程(編譯和連結)與裝載過程的內部原理。
*靜態程式庫、動態庫和可執行檔的內部工作機制。
*面向代碼重用和系統集成的軟體架構設計方法。
*編譯、連結與運行時問題的排查技巧。
*在Linux和Windows平臺下利用二進位檔案分析工具進行分析的方法。

 

作者介紹

米蘭·斯特瓦諾維奇( Milan Stevanovic ) 
資深軟體顧問,在多個學科的工程領域有著豐富的經驗。他主要從事Linux和Windows平臺下的多媒體壓縮格式及多媒體框架設計工作。他熱衷於開源,是avxsynth開源專案的主要貢獻者,對C和C++底層技術有著深入的研究。

 

目錄

譯者序
前言
第1章 多工作業系統基礎 1
1.1 一些有用的抽象概念 1
1.2 記憶體層次結構與緩存策略 2
1.3 虛擬記憶體 3
1.4 虛擬位址 5
1.5 進程的記憶體劃分方案 5
1.6 二進位檔案、編譯器、連結器與裝載器的作用 6
1.7 小結 7

第2章 程式生命週期階段基礎 8
2.1 基本假設 8
2.2 編寫代碼 9
2.3 編譯階段 11
2.3.1 基本概念 11
2.3.2 相關概念 11
2.3.3 編譯的各個階段 12
2.3.4 目的檔案屬性 23
2.3.5 編譯過程的局限性 24
2.4 連結 26
2.4.1 連結階段 26
2.4.2 連結器視角 31
2.5 可執行檔屬性 33
2.5.1 各種節的類型 34
2.5.2 各種符號類型 36

第3章 載入程式執行階段 37
3.1 shell的重要性 37
3.2 內核的作用 39
3.3 裝載器的作用 39
3.3.1 裝載器視角下的二進位檔案(節與段) 39
3.3.2 程式載入階段 40
3.4 程式執行入口點 43
3.4.1 裝載器查找入口點 43
3.4.2 _start()函數的作用 43
3.4.3 __libc_start_main()函數的作用 44
3.4.4 棧和調用慣例 44

第4章 重用概念的作用 46
4.1 靜態程式庫 46
4.2 動態庫 48
4.2.1 動態庫和共用庫 49
4.2.2 動態連結詳解 51
4.2.3 Windows平臺中動態連結的特點 54
4.2.4 動態庫的特點 56
4.2.5 應用程式二進位介面 56
4.3 靜態程式庫和動態庫對比 57
4.3.1 導入選擇條件的差異 57
4.3.2 部署難題 59
4.4 一些有用的類比 61
4.5 結論:二進位重用概念所產生的影響 63

第5章 使用靜態程式庫 64
5.1 創建靜態程式庫 64
5.1.1 創建Linux靜態程式庫 64
5.1.2 創建Windows靜態程式庫 65
5.2 靜態程式庫的使用場合 65
5.3 靜態程式庫設計技巧 66
5.3.1 丟失符號可見性和唯一性的可能性 66
5.3.2 靜態程式庫使用禁忌 67
5.3.3 靜態程式庫連結的具體規則 68
5.3.4 將靜態程式庫轉換成動態庫 68
5.3.5 靜態程式庫在64位Linux平臺上的問題 68

第6章 動態庫的設計:基礎篇 70
6.1 創建動態庫 70
6.1.1 在Linux中創建動態庫 70
6.1.2 在Windows中創建動態庫 72
6.2 設計動態庫 75
6.2.1 設計二進位介面 75
6.2.2 設計應用程式的二進位介面 79
6.2.3 控制動態庫符號的可見性 82
6.2.4 完成連結需要滿足的條件 94
6.3 動態連結模式 94
6.3.1 載入時動態連結 95
6.3.2 運行時動態連結 95
6.3.3 比較兩種動態連結模式 98

第7章 定位庫文件 99
7.1 典型用例場景 99
7.1.1 開發用例場景 99
7.1.2 用戶運行時用例場景 100
7.2 構建過程中庫檔的定位規則 101
7.2.1 Linux構建過程中的庫檔定位規則 101
7.2.2 Windows構建過程中的庫檔定位規則 105
7.3 運行時動態庫檔的定位規則 109
7.3.1 Linux運行時動態庫檔的定位規則 110
7.3.2 Windows運行時動態庫檔的定位規則 114
7.4 示例:Linux構建時與運行時的庫檔定位 115

第8章 動態庫的設計:進階篇 119
8.1 解析記憶體位址的必要性 119
8.2 引用解析中的常見問題 120
8.3 位址轉換引發的問題 122
8.3.1 情景1:客戶二進位檔案需要知道動態庫符號位址 122
8.3.2 情景2:被裝載的庫不需要知道其自身符號位址 123
8.4 連結器-裝載器協作 124
8.4.1 總體策略 125
8.4.2 具體技術 126
8.4.3 連結器重定位提示概述 127
8.5 連結器-裝載器協作實現技術 128
8.5.1 裝載時重定位 129
8.5.2 位置無關代碼 129

第9章 動態連結時的重複符號處理 134
9.1 重複符號的定義 134
9.2 重複符號的預設處理 137
9.3 在動態庫連結過程中處理重複符號 140
9.3.1 處理重複符號問題的一般策略 142
9.3.2 連結器解析動態庫重複符號的模糊演算法準則 143
9.4 特定重複名稱案例分析 144
9.4.1 案例1:客戶二進位檔案符號與動態庫ABI函數衝突 144
9.4.2 案例2:不同動態庫的ABI符號衝突 147
9.4.3 案例3:動態庫ABI符號和另一個動態庫局部符號衝突 151
9.4.4 案例4:兩個未匯出的動態庫符號衝突 153
9.5 小提示:連結並不提供任何類型的命名空間繼承 161

第10章 動態庫的版本控制 162
10.1 主次版本號與向後相容性 162
10.1.1 主版本號變更 162
10.1.2 次版本號變更 163
10.1.3 修訂版本號 163
10.2 Linux動態庫版本控制方案 163
10.2.1 基於soname的版本控制方案 163
10.2.2 ………..
 

詳細資料

  • ISBN:9787111717300
  • 規格:平裝 / 266頁 / 16k / 19 x 26 x 1.33 cm / 普通級 / 單色印刷 / 1-1
  • 出版地:中國
贊助商廣告
 
金石堂 - 今日66折
調校心態:舉起手,伸開5指,跟自己擊掌,做自己最強的啦啦隊!全球千萬網友實證的轉念習慣
作者:梅爾.羅賓斯
出版社:采實文化事業股份有限公司
出版日期:2022-03-31
66折: $ 297 
金石堂 - 今日66折
國家地理精工系列:經典古董車
作者:瑟巴斯提亞諾.薩爾威提
出版社:大石國際文化
出版日期:2018-11-08
66折: $ 792 
金石堂 - 今日66折
琥珀眼睛的兔子(二版)
作者:艾德蒙.德瓦爾
出版社:木馬文化事業有限公司
出版日期:2020-02-26
66折: $ 277 
 
金石堂 - 暢銷排行榜
陰陽眼見子(10)
作者:泉朝樹
出版社:台灣角川股份有限公司
出版日期:2024-11-07
$ 111 
Taaze 讀冊生活 - 暢銷排行榜
氣質系硬筆1000字帖
作者:郭仕鵬
出版社:朱雀文化事業有限公司
出版日期:2018-07-03
$ 221 
Taaze 讀冊生活 - 暢銷排行榜
某某 戲劇寫真書The On1y One Photobook
作者:DragonFire International Co., Ltd.
出版社:台灣角川股份有限公司
出版日期:2024-11-14
$ 379 
Taaze 讀冊生活 - 暢銷排行榜
獲利軌道:只要沿著規畫的軌道前進,期權翻倍獲利易如反掌
作者:軌道鞅
出版社:玩股網有限公司
出版日期:2024-11-01
$ 316 
 
金石堂 - 新書排行榜
一個人的人生未爆彈(限量特贈朱德庸手繪明信片)
作者:朱德庸
出版社:天下雜誌社
出版日期:2024-11-01
$ 552 
博客來 - 新書排行榜
山茶花情書【首刷限量為你而寫信紙組】
作者:小川糸
出版社:圓神
出版日期:2024-11-01
$ 347 
Taaze 讀冊生活 - 新書排行榜
大首爾攻略完全制霸2025-2026
作者:趙思語.李聖依.墨刻編輯部
出版社:墨刻出版
出版日期:2024-10-24
$ 349 
金石堂 - 新書排行榜
所有人的玩具 02
作者:石井康之
出版社:東立出版社
出版日期:2024-12-31
$ 95 
 

©2024 FindBook.com.tw -  購物比價  找書網  找車網  服務條款  隱私權政策