腾讯朋友力荐书籍:程序员的自我修养:链接、装载与库
? ? ? ?后臺開發需要學習底層知識,只有底層知識掌握了,學一些中間件是信手捏來,中間件也是跑在底層的操作系統上。<<程序員的自我修養:鏈接、裝載與庫>>對學習底層知識非常有幫助,騰訊的朋友都是學習這本書。
目錄:
第1部分 簡介
第1章 溫故而知新
1.1 從HELLO WORLD 說起
1.2 萬變不離其宗
1.3 站得高,望得遠
1.4 操作系統做什么
1.5 內存不夠怎么辦
1.6 眾人拾柴火焰高
1.7 本章小結
第2部分 靜態鏈接
第2章 編譯和鏈接
2.1 被隱藏了的過程
2.2 編譯器做了什么
2.3 鏈接器年齡比編譯器長
2.4 模塊拼裝——靜態鏈接
2.5 本章小結
第3章 目標文件里有什么
3.1 目標文件的格式
3.2 目標文件是什么樣的
3.3 挖掘SIMPLESECTION.O
3.4 ELF 文件結構描述
3.5 鏈接的接口——符號
3.6 調試信息
3.7 本章小結
第4章 靜態鏈接
4.1 空間與地址分配
4.2 符號解析與重定位
4.3 COMMON 塊
4.4 C++相關問題
4.5 靜態庫鏈接
4.6 鏈接過程控制
4.7 BFD 庫
4.8 本章小結
第5章 WINDOWS PE/COFF
5.1 WINDOWS 的二進制文件格式PE/COFF 134
5.2 PE 的前身——COFF
5.3 鏈接指示信息
5.4 調試信息
5.5 大家都有符號表
5.6 WINDOWS 下的ELF——PE
5.7 本章小結
第3部分 裝載與動態鏈接
第6章 可執行文件的裝載與進程
6.1 進程虛擬地址空間
6.2 裝載的方式
6.3 從操作系統角度看可執行文件的裝載
6.4 進程虛存空間分布
6.5 LINUX 內核裝載ELF 過程簡介
6.6 WINDOWS PE 的裝載
6.7 本章小結
第7章 動態鏈接
7.1 為什么要動態鏈接
7.2 簡單的動態鏈接例子
7.3 地址無關代碼
7.4 延遲綁定(PLT)
7.5 動態鏈接相關結構
7.6 動態鏈接的步驟和實現
7.7 顯式運行時鏈接
7.8 本章小結
第8章 LINUX 共享庫的組織
8.1 共享庫版本
8.2 符號版本
8.3 共享庫系統路徑
8.4 共享庫查找過程
8.5 環境變量
8.6 共享庫的創建和安裝
8.7 本章小結
第9章 WINDOWS 下的動態鏈接
9.1 DLL 簡介
9.2 符號導出導入表
9.3 DLL 優化
9.4 C++與動態鏈接
9.5 DLL HELL
9.6 本章小結
第4部分 庫與運行庫
第10章 內存
10.1 程序的內存布局
10.2 棧與調用慣例
10.3 堆與內存管理
10.4 本章小結
第11章 運行庫
11.1 入口函數和程序初始化
11.2 C/C++運行庫
11.3 運行庫與多線程
11.4 C++全局構造與析構
11.5 FREAD 實現
11.6 本章小結
第12章 系統調用與API
12.1 系統調用介紹
12.2 系統調用原理
12.3 WINDOWS API
12.4 本章小結
第13章 運行庫實現
13.1 C 語言運行庫
13.2 如何使用MINI CRT
13.3 C++運行庫實現
13.4 如何使用MINI CRT++
13.5 本章小結
附錄A
A.1 字節序(BYTE ORDER)
A.2 ELF 常見段
A.3 常用開發工具命令行參考
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的腾讯朋友力荐书籍:程序员的自我修养:链接、装载与库的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 面试真题:搜索旋转数组
- 下一篇: 最容易看懂的汇编语言书籍:汇编语言 王爽