-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
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書號
詳細書籍分類

程序員的自我修養--鏈接、裝載與庫

( 簡體 字)
作者:俞甲子;石凡;潘愛民類別:1. -> 程式設計 -> 綜合
   2. -> 程式設計 -> C -> C
   3. -> 程式設計 -> C++ -> C++
譯者:
出版社:電子工業出版社程序員的自我修養--鏈接、裝載與庫 3dWoo書號: 20545
詢問書籍請說出此書號!

缺書
NT售價: 495

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

譯者序:

前言:

內容簡介:

本書主要介紹系統軟件的運行機制和原理,涉及在Windows和Linux兩個系統平臺上,一個應用程序在編譯、鏈接和運行時刻所發生的各種事項,包括:代碼指令是如何保存的,庫文件如何與應用程序代碼靜態鏈接,應用程序如何被裝載到內存中并開始運行,動態鏈接如何實現,C/C++運行庫的工作原理,以及操作系統提供的系統服務是如何被調用的。每個技術專題都配備了大量圖示和代碼實例,力求將復雜的機制以簡潔的形式表達出來。


目錄:


第1 部分 簡介. 1
第1 章 溫故而知新 3
1.1 從HELLO WORLD 說起 4
1.2 萬變不離其宗 5
1.3 站得高,望得遠 8
1.4 操作系統做什么 10
1.5 內存不夠怎么辦 14
1.6 眾人拾柴火焰高 19
1.7 本章小結 33
第2 部分 靜態鏈接 35
第2 章 編譯和鏈接 37
2.1 被隱藏了的過程 38
2.2 編譯器做了什么 41
2.3 鏈接器年齡比編譯器長 48
2.4 模塊拼裝——靜態鏈接 50
2.5 本章小結 53
第3 章 目標文件里有什么 55
3.1 目標文件的格式 56
3.2 目標文件是什么樣的 58
3.3 挖掘SIMPLESECTION.O 61
3.4 ELF 文件結構描述 68
3.5 鏈接的接口——符號 81
3.6 調試信息 94
3.7 本章小結 95
第4 章 靜態鏈接 97
4.1 空間與地址分配 98
4.2 符號解析與重定位 103
4.3 COMMON 塊 111
4.4 C++相關問題 112
4.5 靜態庫鏈接 117
4.6 鏈接過程控制 123
4.7 BFD 庫 131
4.8 本章小結 132
第5 章 WINDOWS PE/COFF 133
5.1 WINDOWS 的二進制文件格式PE/COFF 134
5.2 PE 的前身——COFF 135
5.3 鏈接指示信息 139
5.4 調試信息 140
5.5 大家都有符號表 141
5.6 WINDOWS 下的ELF——PE 142
5.7 本章小結 146
第3 部分 裝載與動態鏈接.. 147
第6 章 可執行文件的裝載與進程 149
6.1 進程虛擬地址空間 150
6.2 裝載的方式 153
6.3 從操作系統角度看可執行文件的裝載 157
6.4 進程虛存空間分布 160
6.5 LINUX 內核裝載ELF 過程簡介 173
6.6 WINDOWS PE 的裝載 175
6.7 本章小結 177
第7 章 動態鏈接 179
7.1 為什么要動態鏈接 180
7.2 簡單的動態鏈接例子 184
7.3 地址無關代碼 188
7.4 延遲綁定(PLT) 200
7.5 動態鏈接相關結構 202
7.6 動態鏈接的步驟和實現 214
7.7 顯式運行時鏈接 221
7.8 本章小結 228
第8 章 LINUX 共享庫的組織 229
8.1 共享庫版本 230
8.2 符號版本 235
8.3 共享庫系統路徑 241
8.4 共享庫查找過程 241
8.5 環境變量 242
8.6 共享庫的創建和安裝 245
8.7 本章小結 248
第9 章 WINDOWS 下的動態鏈接 249
9.1 DLL 簡介 250
9.2 符號導出導入表 257
9.3 DLL 優化 266
9.4 C++與動態鏈接 273
9.5 DLL HELL 276
9.6 本章小結 279
第4 部分 庫與運行庫 281
第10 章 內存 283
10.1 程序的內存布局 284
10.2 棧與調用慣例 286
10.3 堆與內存管理 305
10.4 本章小結 315
第11 章 運行庫 317
11.1 入口函數和程序初始化 318
11.2 C/C++運行庫 335
11.3 運行庫與多線程 350
11.4 C++全局構造與析構 357
11.5 FREAD 實現 368
11.6 本章小結 381
第12 章 系統調用與API383
12.1 系統調用介紹 384
12.2 系統調用原理 388
12.3 WINDOWS API 401
12.4 本章小結 410
第13 章 運行庫實現 411
13.1 C 語言運行庫 412
13.2 如何使用MINI CRT 429
13.3 C++運行庫實現 433
13.4 如何使用MINI CRT++ 446
13.5 本章小結 448
附錄A 449
A.1 字節序(BYTE ORDER) 450
A.2 ELF 常見段 451
A.3 常用開發工具命令行參考 453
索引 ... 457
序: