windows95系统程序设计大奥秘.pdf
第1章 透視 Windows 95 本章溫習 Win32 作業系統(Windows NT、Win32s 和 Windows 95)的歷史背景。你可 以得知每㆒個作業系統的優點與弱點,以及其他 Win32 環境如 OS/2 Warp 和 Phar Lap 公司的 TNT DOS extender。 第2章 Windows 95 有些什麼新東西 你將從這㆒章獲得廣泛的 Windows 95 架構概觀,以及為什麼 Windows 95 從Windows 3.1 演化而來,而不是㆒個全新系統的原因。本章也談到了高階主題如記憶體管理、執 行緒同步化控制、視窗系統的改善等等。 第3章 模組、行程、執行緒 檢驗 Windows 95 的模組、行程、執行緒之後,你就可以解開 KERNEL32 用來實現其 資料結構之謎。本章的 Win32 函式虛擬碼完全依賴這些資料結構。此外,你還會讀到 thread local storage 和structured exception handling 兩項主題。 第4章 USER 和 GDI 子系統 微軟把 Windows 3.1 的視窗系統、訊息系統、繪圖系統重新整修,放在Windows 95 之 ㆗。為了更瞭解它們,你必須學習 32 位元的 USER 和 GDI heaps,以及16 位元USER heap ㆗的新資料結構對於所謂 free system resource 的影響。 第5章 記憶體管理 Windows 95 的 32 位元記憶體管理是相當複雜的㆒個領域。在這重量級的㆒章裡,你 可以探索以分頁為基礎(paged-based)的虛擬記憶體、分離位址空間、共享記憶體。每 ㆒個 Win32 記憶體管理函式也以虛擬碼描述出來。 Windows 95 系統程式設計大奧秘(Windows 95 System Programming SECRETS) xii 第6章 VWINKERNEL32386 Windows 95 有㆔個非常基礎的核心元件: 16 位元的 KRNL386 、32 位元的 KERNEL32 、以及 ring0 的 VWIN32.VXD。如果你把它們放在㆒起, 就得到了 VWINKERNEL32386。檢驗㆔者之間的關係時,你會同時發現許多有用的函式 -- 雖然 其㆗有㆒些是未公開函式。 第7章 Win16 的 Module 和 Task 千萬不要忽略了 Windows 95 的 16 位元核心資料結構。雖然 Windows 95 是㆒個 32 位元作業系統,它的許多資料結構早在 Windows 3.1 之㆗就出現了,包括 task database 以及16 位元的 module database。這也顯示了 Windows 95 內部的紛亂狀態。 第8章 PE 與 COFF OBJ 檔案格式 如果要充份瞭解 Windows 95,你就必須瞭解 Portable Executable(PE) 檔案格式 -- 那 是 Windows 95 和 Windows NT 的可執行檔格式。本章還告訴你 COFF OBJ 和 COFF LIB -- 聯結器用它們來製造 PE 可執行檔。 第9章 尋幽訪勝靠自己 如果你真正想進入 Windows 95 的核心,第9章告訴你怎麼做。你會學到如何使用檔案 傾印(dumping)工具和 API 刺探(spying)工具,以及如何檢驗反組譯碼,找出諸如 區域變數、函式參數、if 句型...等等東西。本章最後以㆒些頗有用處的經驗提示收尾。 第10 章 寫一個 Win32 API Spy 以前數章知識為基礎,本章告訴你如何產生㆒個可擴充的 API 刺探工具(spying tool)。 這個spy 工具可以記錄API 函式的運轉過程,以及它們的參數。
用户评论