買這商品的人也買了...
- 
                
                   Fundamentals of Data Structures in C, 2/e (Paperback) Fundamentals of Data Structures in C, 2/e (Paperback)$1,390$1,362
- 
                
                   3D 繪圖程式設計:使用 Direct3D 10/9 與 OpenGL 2.0 3D 繪圖程式設計:使用 Direct3D 10/9 與 OpenGL 2.0$700$553
- 
                
                   Introduction to Algorithms, 3/e (Hardcover) Introduction to Algorithms, 3/e (Hardcover)$1,750$1,715
- 
                
                   Debug Hacks 除錯駭客 -- 極致除錯的技巧與工具 Debug Hacks 除錯駭客 -- 極致除錯的技巧與工具$580$458
- 
                
                   Binary Hacks -- 駭客秘傳技巧一百招 Binary Hacks -- 駭客秘傳技巧一百招$580$458
- 
                
                   無瑕的程式碼-敏捷軟體開發技巧守則 + 番外篇-專業程式設計師的生存之道 (雙書合購) 無瑕的程式碼-敏捷軟體開發技巧守則 + 番外篇-專業程式設計師的生存之道 (雙書合購)$940$700
- 
                
                   $354程序員面試攻略(原書第3版) (Programming Interviews Exposed: Secrets to Landing Your Next Job, 3/e ) $354程序員面試攻略(原書第3版) (Programming Interviews Exposed: Secrets to Landing Your Next Job, 3/e )
- 
                
                   Computer Organization and Design MIPS Edition: The Hardware/Software Interface, 5/e (美國原版) Computer Organization and Design MIPS Edition: The Hardware/Software Interface, 5/e (美國原版)$3,220$3,059
- 
                
                   $299嵌入式 ARM 系統開發與實戰 $299嵌入式 ARM 系統開發與實戰
- 
                
                   $299程序員面試寶典(白金版) $299程序員面試寶典(白金版)
- 
                
                   $408嵌入式 ARM 系統工程師實訓教程 $408嵌入式 ARM 系統工程師實訓教程
- 
                
                   雲端運算安全技術與應用 + 巨量資料安全技術與應用 (套書) 雲端運算安全技術與應用 + 巨量資料安全技術與應用 (套書)$630$491
- 
                
                   JavaScript & JQuery : 網站互動設計程式進化之道 (JavaScript and JQuery: Interactive Front-End Web Development) JavaScript & JQuery : 網站互動設計程式進化之道 (JavaScript and JQuery: Interactive Front-End Web Development)$780$663
- 
                
                   $458算法競賽入門經典 — 習題與解答 $458算法競賽入門經典 — 習題與解答
- 
                
                   資安防禦指南|資訊安全架構實務典範 (Defensive Security Handbook: Best Practices for Securing Infrastructure) 資安防禦指南|資訊安全架構實務典範 (Defensive Security Handbook: Best Practices for Securing Infrastructure)$580$458
- 
                
                   無瑕的程式碼-整潔的軟體設計與架構篇 (Clean Architecture: A Craftsman's Guide to Software Structure and Design) 無瑕的程式碼-整潔的軟體設計與架構篇 (Clean Architecture: A Craftsman's Guide to Software Structure and Design)$580$452
- 
                
                   $454Vue.js 項目開發實戰 $454Vue.js 項目開發實戰
- 
                
                   Discrete Mathematics and Its Applications, 8/e (Paperback) Discrete Mathematics and Its Applications, 8/e (Paperback)$1,350$1,323
- 
                
                   Operating System Concepts, 10/e (IE-Paperback) Operating System Concepts, 10/e (IE-Paperback)$1,680$1,646
- 
                
                   深度學習 (Deep Learning)(繁體中文版) 深度學習 (Deep Learning)(繁體中文版)$1,200$1,020
- 
                
                   Principles of Economics, 9/e (Paperback) Principles of Economics, 9/e (Paperback)$1,560$1,529
- 
                
                   精通 Python|運用簡單的套件進行現代運算, 2/e (Introducing Python: Modern Computing in Simple Packages, 2/e) 精通 Python|運用簡單的套件進行現代運算, 2/e (Introducing Python: Modern Computing in Simple Packages, 2/e)$880$695
- 
                
                   簡單高效 LaTeX 簡單高效 LaTeX$294$279
- 
                
                   AI 語音辨識:用 Kaldi 實作應用全集(書況差限門市銷售) AI 語音辨識:用 Kaldi 實作應用全集(書況差限門市銷售)$880$616
- 
                
                   $559嵌入式 C語言自我修養 — 從芯片、編譯器到操作系統 $559嵌入式 C語言自我修養 — 從芯片、編譯器到操作系統
商品描述
<內容簡介>
本書主要介紹系統軟件的運行機制和原理,涉及在Windows和Linux兩個系統平臺上,一個應用程序在編譯、鏈接和運行時刻所發生的各種事項,包括:代碼指令是如何保存的,庫文件如何與應用程序代碼靜態鏈接,應用程序如何被裝載到內存中並開始運行,動態鏈接如何實現,C/C 運行庫的工作原理,以及操作系統提供的系統服務是如何被調用的。每個技術專題都配備了大量圖、表和代碼實例,力求將復雜的機制以簡潔的形式表達出來。本書最後還提供了一個小巧且跨平臺的C/C 運行庫MiniCRT,綜合展示了與運行庫相關的各種技術。
  本書對裝載、鏈接和庫進行了深入淺出的剖析,並且輔以大量的例子和圖表,可以作為計算機軟件專業和其他相關專業大學本科高年級學生深入學習系統軟件的參考書。同時,還可作為各行業從事軟件開發的工程師、研究人員以及其他對系統軟件實現機制和技術感興趣者的自學教材。 
<目錄>
第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 常用開發工具命令行參考 
索引  

 
     
     
     
     
     
    
 
     
    
 
    
 
    
 
     
    
