[www.ed2k.online]下載基地為您提供軟件、遊戲、圖書、教育等各種資源的ED2K電驢共享下載和MAGNET磁力鏈接下載。
設為首頁
加入收藏
首頁 圖書資源 軟件資源 游戲資源 教育資源 其他資源
 電驢下載基地 >> 图书资源 >> 計算機與網絡 >> 《windows核心編程》(Windows Via C/C++)掃描版[PDF]
《windows核心編程》(Windows Via C/C++)掃描版[PDF]
下載分級 图书资源
資源類別 計算機與網絡
發布時間 2017/7/10
大       小 -
《windows核心編程》(Windows Via C/C++)掃描版[PDF] 簡介: 中文名 : windows核心編程 原名 : Windows Via C/C++ 作者 : Jeffrey Richter 譯者 : 黃隴 李虎 圖書分類 : 軟件 資源格式 : PDF 版本 : 掃描版 出版社 : Jeffrey Richter 書號 : 9787111237914 發行時間 : 2008年05月 地區 : 大陸 語言 : 簡體中文 簡介 :
電驢資源下載/磁力鏈接資源下載:
全選
"《windows核心編程》(Windows Via C/C++)掃描版[PDF]"介紹
中文名: windows核心編程
原名: Windows Via C/C++
作者: Jeffrey Richter
譯者: 黃隴
李虎
圖書分類: 軟件
資源格式: PDF
版本: 掃描版
出版社: Jeffrey Richter
書號: 9787111237914
發行時間: 2008年05月
地區: 大陸
語言: 簡體中文
簡介:



內容簡介
本書是講解Windows操作系統內部機制的一本專著。作者從基本概念入手,全面系統地介紹了Windows底層實現機制、Windows應用程序的基本構件(包括進程、線程、內存管理、動態鏈接庫、線程本地存儲和Unicode)以及各類Windows API等,並列舉了大量應用程序示例,精辟地分析了Windows編程的各個難點和要點,為掌握Windows編程技巧提供了一條有效的捷徑。.
本書適合Windows編程人員參考。
作者簡介
Jeffrey Richter是一位在全球享有盛譽的技術作家,尤其在Windows/.NET領域有著傑出的貢獻。他的第一本Windows著作Windows 3: A Developer's Guide大獲好評,從而聲名遠揚。之後,他又推出了經典著作《Windows 高級編程指南》和《Windows核心編程》。如今這兩本書早已成為Windows程序設計領域的顛峰之作,培育了幾代軟件開發設計人員。他的每一本新作問世,我們都有理由相信這是一本巨著,我們想要的一切盡在其中。Jeffery 是Wintellect公司的創始人之一,也是MSDN雜志.NET專欄的特邀編輯。現在他正領導開發該公司的.NET程序設計課程,向大眾推廣.NET技術。因為他自1999年開始就參與了微軟.NET框架開發組的咨詢工作,與這些一線人員一起經歷了.NET的孕育與誕生,所以他對.NET思想的領悟、對.NET的細節熟稔,是其他任何作家難以企及的。他是.NET著作領域中當之無愧的一面旗幟。
內容截圖

白盤的朋友下載地址:http://www.400gb.com/file/19461365
更多書籍請進入:http://www.400gb.com/u/1575390


目錄:


譯者序
前言
作譯者簡介
第一部分 程序員必讀
第1章 錯誤處理
1.1 自定義錯誤處理的實現
1.2 錯誤顯示例程
第2章 Unicode
2.1 字符集
2.1.1 單字節和雙字節字符集
2.1.2 Unicode:寬字節字符集
2.2 為何需要Unicode
2.3 Windows 2000和Unicode
2.4 Windows 98和Unicode
2.5 Windows CE和Unicode
2.6 評論
2.7 關於COM
2.8 如何編寫Unicode源代碼
2.8.1 C運行庫的Unicode支持
2.8.2 Windows定義的Unicode數據類型
2.8.3 Windows系統中的Unicode函數和ANSI函數
2.8.4 Windows字符串函數
2.9 讓應用程序符合ANSI和Unicode規范
2.9.1 Windows字符串函數
2.9.2 資源
2.9.3 確定文本是ANSI型還是Unicode型
2.9.4 在Unicode和ANSI間轉換字符串
第3章 內核對象
3.1 內核對象的概念
3.1.1 使用計數
3.1.2 安全性
3.2 內核對象句柄表
3.2.1 創建內核對象
3.2.2 關閉內核對象
3.3 進程間內核對象的共享
3.3.1 對象句柄的繼承性
3.3.2 改變句柄標志
3.3.3 命名對象
3.3.4 終端服務器命名空間
3.3.5 復制對象句柄
第二部分 完成編程任務
第4章 進程
4.1 編寫第一個Windows應用程序
4.1.1 進程的實例句柄
4.1.2 進程的前一個實例句柄
4.1.3 進程的命令行
4.1.4 進程的環境變量
4.1.5 親緣性
4.1.6 進程的錯誤模式
4.1.7 當前驅動器和目錄
4.1.8 當前目錄
4.1.9 系統版本
4.2 CreateProcess函數
4.2.1 pszApplicationName和pszCommandLine
4.2.2 psaProcess、psaThread和bInheritHandles
4.2.3 fdwCreate
4.2.4 pvEnvironment
4.2.5 pszCurDir
4.2.6 psiStartInfo
4.2.7 ppiProcInfo
4.3 進程的終止
4.3.1 主線程的入口函數返回
4.3.2 ExitProcess函數
4.3.3 TerminateProcess函數
4.3.4 進程中所有線程的運行終止
4.3.5 進程的運行終止
4.4 子進程
4.5 枚舉系統中運行的進程
第5章 作業
5.1 對作業進程的限制
5.2 把進程放入作業
5.3 終止作業中所有進程的運行
5.4 查詢作業統計信息
5.5 作業通知信息
5.6 JobLab示例應用程序
第6章 線程的基本知識
6.1 創建線程的時機
6.2 何時不能創建線程
6.3 編寫第一個線程函數
6.4 CreateThread函數
6.4.1 psa
6.4.2 cbStack
6.4.3 pfnStartAddr和pvParam
6.4.4 fdwCreate
6.4.5 pdwThreadID
6.5 終止線程
6.5.1 線程函數返回
6.5.2 ExitThread函數
6.5.3 TerminateThread函數
6.5.4 在進程終止運行時終止線程
6.5.5 線程終止運行時發生的操作
6.6 線程的一些內部細節
6.7 對於C/C++運行時庫的考慮
6.7.1 Oops—錯誤地調用了CreateThread
6.7.2 不該調用的C/C++運行時庫函數
6.8 線程的身份標識
第7章 線程的調度、優先級和親緣性
7.1 掛起和恢復線程的運行
7.2 進程的掛起和喚醒
7.3 睡眠
7.4 線程切換
7.5 線程的運行時間
7.6 上下文環境切換
7.7 線程優先級
7.8 優先級的抽象說明
7.9 編程優先級
7.9.1 動態提高線程的優先級等級
7.9.2 為前台進程調整調度程序
7.9.3 Scheduling Lab示例應用程序
7.10 親緣性
第8章 用戶模式下的線程同步
8.1 原子訪問:互鎖函數族
8.2 高速緩存行
8.3 高級線程同步
8.4 臨界區
8.4.1 臨界區准確的描述
8.4.2 臨界區與循環鎖
8.4.3 臨界區與錯誤處理
8.4.4 有用的提示和技巧
第9章 線程與內核對象的同步
9.1 等待函數
9.2 成功等待的副作用
9.3 事件內核對象
9.4 等待定時器內核對象
9.4.1 用等待定時器給APC項排隊
9.4.2 定時器的松散特性
9.5 信號量內核對象
9.6 互斥內核對象
9.6.1 釋放問題
9.6.2 互斥對象與臨界區的比較
9.6.3 Queue應用程序示例
9.7 線程同步對象表
9.8 其他線程同步函數
9.8.1 異步設備I/O
9.8.2 WaitForInputIdle
9.8.3 MsgWaitForMultipleObjects(Ex)
9.8.4 WaitForDebugEvent
9.8.5 SignalObjectAndWait
第10章 線程同步工具包
10.1 臨界區的實現:Optex
10.2 創建線程安全的數據類型和反信號量
10.3 單寫入多讀出程序的保護
10.4 WaitForMultipleExpressions函數的實現
第11章 線程池
11.1 場景1:異步調用函數
11.2 場景2:按規定的時間間隔調用函數
11.3 場景3:在某個內核對象變為已通知狀態時調用函數
11.4 場景4:異步I/O請求運行完成時調用函數
第12章 纖程
12.1 使用纖程
12.2 Counter示例應用程序
第三部分 內存管理
第13章 Windows內存結構
13.1 進程的虛擬地址空間
13.2 虛擬地址空間分區
13.2.1 無效斷點分配分區(適於Windows 2000和Windows 98)
13.2.2 MS-DOS/16位Windows應用程序兼容分區(僅適於Windows 98)
13.2.3 用戶模式分區(適用Windows 2000和Windows 98)
13.2.4 64KB禁止進入分區(僅適用於Windows 2000)
13.2.5 共享的MMF分區(僅適用於Windows 98)
13.2.6 內核模式分區(使用於Windows 2000和Windows 98)
13.3 地址空間區域
13.4 在地址空間區域中提交物理存儲器
13.5 物理存儲器和頁面文件
13.6 保護屬性
13.6.1 Copy-On-Write訪問
13.6.2 特殊訪問保護屬性標志
13.7 綜合使用所有元素
13.7.1 區域的內部詳情
13.7.2 Windows 98上地址空間的差異
13.8 數據對齊的重要性
第14章 虛擬內存
14.1 系統信息
14.2 虛擬內存的狀態
14.3 確定地址空間狀態
14.3.1 VMQery函數
14.3.2 虛擬內存表應用程序示例
第15章 應用程序中虛擬內存的使用
15.1 地址空間中保留區域
15.2 在保留區域中提交存儲器
15.3 同時進行保留區域並提交內存
15.4 何時提交物理存儲器
15.5 物理存儲器的回收和地址空間區域的釋放
15.5.1 何時回收物理存儲器
15.5.2 虛擬內存分配示例應用程序
15.6 改變保護屬性
15.7 清除物理存儲器內容
15.8 地址窗口擴展(僅使用於Windows 2000)
第16章 線程棧
16.1 Windows 98下的線程棧
16.2 C/C++運行時庫中的棧檢測函數
16.3 Summation示例應用程序
第17章 內存映射文件
17.1 內存映射的可執行文件和DLL文件
17.1.1 可執行文件或DLL的多個實例之間無法共享的靜態數據
17.1.2 在可執行文件或DLL的多個實例之間共享靜態數據
17.1.3 AppInst示例應用程序
17.2 內存映射數據文件
17.2.1 方法1:一個文件,一個緩存
17.2.2 方法2:兩個文件,一個緩存
17.2.3 方法3:一個文件,兩個緩存
17.2.4 方法4:一個文件,零個緩存
17.3 使用內存映射文件
17.3.1 步驟1:創建或打開文件內核對象
17.3.2 步驟2:創建文件映射內核對象
17.3.3 步驟3:將文件數據映射到進程地址空間
17.3.4 步驟4:進程地址空間中撤銷文件數據的映像
17.3.5 步驟5和步驟6:關閉文件映射對象和文件對象
17.3.6 文件倒序示例應用程序
17.4 使用內存映射文件處理大文件
17.5 內存映射文件的一致性
17.6 設定內存映射文件的基地址
17.7 實現內存映射文件的具體細節
17.8 使用內存映射文件在進程之間實現數據共享
17.9 受頁面文件支持的內存映射文件
17.10 稀疏提交的內存映射文件
第18章 堆
18.1 進程的默認堆
18.2 創建輔助堆的原因
18.2.1 保護組件
18.2.2 更有效地管理內存
18.2.3 進行本地訪問
18.2.4 減少線程同步開銷
18.2.5 快速釋放
18.3 創建輔助堆的方法
18.3.1 分配堆中的內存塊
18.3.2 改變內存塊的大小
18.3.3 獲取內存塊的大小
18.3.4 釋放內存塊
18.3.5 銷毀堆
18.3.6 用C++程序使用堆
18.4 其他堆函數
第四部分 動態鏈接庫
第19章 DLL基礎
19.1 DLL與進程的地址空間
19.2 DLL的總體運行情況
19.3 創建DLL模塊
19.3.1 導出的真正含義
19.3.2 使用非Visual C++工具創建DLL
19.4 創建可執行模塊
19.5 運行可執行模塊
第20章 DLL高級技術
20.1 顯式加載DLL模塊和符號鏈接
20.1.1 顯式加載DLL模塊
20.1.2 顯式卸載DLL模塊
20.1.3 顯式鏈接到導出符號
20.2 DLL的入口函數
20.2.1 DLL_PROCESS_ATTACH通知
20.2.2 DLL_PROCESS_DETACH通知
20.2.3 DLL_THREAD_ATTACH通知
20.2.4 DLL_THREAD_DETACH通知
20.2.5 順序調用DllMain
20.2.6 DllMain和C/C++運行時庫
20.3 延遲加載DLL
20.4 函數轉發器
20.5 已知的DLL
20.6 DLL重定向
20.7 模塊的基址重置
20.8 綁定模塊
第21章 線程本地存儲
21.1 動態TLS
21.2 靜態TLS
第22章 DLL注入以及API掛接
22.1 DLL注入:一個例子
22.2 使用注冊表注入DLL
22.3 使用Windows鉤子注入DLL
22.4 使用遠程線程注入DLL
22.4.1 Inject Library示例應用程序
22.4.2 Image Walk DLL
22.5 使用特洛伊DLL注入DLL
22.6 將DLL作為調試程序注入
22.7 在Windows 98平台上使用內存映射文件注入代碼
22.8 使用CreateProcess來注入代碼
22.9 API掛接:一個例子
22.9.1 通過覆寫代碼實現API掛接
22.9.2 通過操作模塊的導入部分來實現API掛接
22.9.3 LastMsgBoxInfo示例應用程序
第五部分 結構化異常處理
第23章 終止處理例程
23.1 Funcenstein1
23.2 Funcenstein2
23.3 Funcenstein3
23.4 Funcfurter1
23.5 小測驗:FuncaDoodleDoo
23.6 Funcenstein4
23.7 Funcarama1
23.8 Funcarama2
23.9 Funcarama3
23.10 Funcarama4:最終的邊界
23.11 有關finally塊的說明
23.12 Funcfurter2
23.13 SEH終止示例應用程序
第24章 異常處理程序和軟件異常
24.1 通過例子理解異常過濾器和異常處理程序
24.1.1 Funcmeister1
24.1.2 Funcmeister2
24.2 EXCEPTION_EXECUTE_HANDLER
24.2.1 一些有用的例子
24.2.2 全局展開
24.2.3 暫停全局展開
24.3 EXCEPTION_CONTINUE_EXECUTION
24.4 EXCEPTION_CONTINUE_SEARCH
24.5 GetExceptionCode
24.5.1 與內存相關的異常
24.5.2 與異常相關的異常
24.5.3 與調試相關的異常
24.5.4 與整數相關的異常
24.5.5 與浮點數相關的異常
24.6 GetExceptionInformation
24.7 軟件異常
第25章 未處理異常和C++異常
25.1 即時調試
25.2 關閉異常消息框
25.2.1 強制進程終止運行
25.2.2 包裝一個線程函數
25.2.3 包裝所有的線程函數
25.2.4 自動調用調試器
25.3 自己調用UnhandledExceptionFilter
25.4 UnhandledExceptionFilter函數的內部細節
25.5 異常和調試程序
25.6 C++異常與結構化異常比較
第六部分 窗口
第26章 窗口消息
26.1 線程的消息隊列
26.2 將消息投送到一個線程的消息隊列中
26.3 向窗口發送消息
26.4 喚醒一個線程
26.4.1 隊列狀態標志
26.4.2 從線程隊列中提取消息的算法
26.4.3 使用內核對象或者隊列狀態標志來喚醒一個線程
26.5 使用消息發送數據
26.6 Windows處理ANSI/Unicode字符和字符串的方法
第27章 硬件輸入模型與本地輸入狀態
27.1 原始輸入線程
27.2 本地輸入狀態
27.2.1 鍵盤輸入和焦點
27.2.2 鼠標光標管理
27.3 將虛擬輸入隊列和本地輸入狀態相關聯
27.3.1 LISLab示例應用程序
27.3.2 LISWatch示例應用程序
附錄
附錄A 構建環境
附錄B 消息解析器、子控件宏以及API宏



相關資源:

免責聲明:本網站內容收集於互聯網,本站不承擔任何由於內容的合法性及健康性所引起的爭議和法律責任。如果侵犯了你的權益,請通知我們,我們會及時刪除相關內容,謝謝合作! 聯系信箱:[email protected]

Copyright © 電驢下載基地 All Rights Reserved