"Windows95系统程序设计大奥秘 - 侯捷"
《Windows95系统程序设计大奥秘》是作者侯捷对Windows 95操作系统底层机制的深入剖析,揭示了微软系统中的诸多秘密技术。书中详尽讨论了如何在Windows 95环境下进行系统级编程,包括与VxDs的交互、16位和32位数据结构转换、API函数拦截以及内存管理和进程线程控制等核心议题。
1. **VxDs的秘密后门**:Windows 95中的VxDs(Virtual Device Drivers)是用于扩展系统功能的驱动程序,通过特定方式可以访问这些未公开的内核32位函数,实现对系统的更底层控制。
2. **16位和32位转换**:在32位Windows 95中,程序可能会遇到与16位代码交互的情况。书中详细介绍了如何不通过thunks(代码转换层)直接调用16位代码,以提高效率并减少开销。
3. **Windows 95自由系统资源的真相**:FSR(Free System Resources)是系统分配给应用程序的资源,书里揭露了FSR的真实情况,如何避免资源浪费并有效管理。
4. **进程线程ID转换**:了解如何将进程和线程的ID转换为指向系统数据结构的指针,这对于直接操作系统内部结构至关重要,有助于优化和调试程序。
5. **API函数拦截**:通过学习本书,读者能够掌握拦截其他程序调用的API函数的技术,这在系统监控、插件开发等领域具有广泛的应用。
6. **KRNL386函数列表**:书中列出了被KERNEL386调用的所有KRNL386函数,帮助开发者理解Windows 95的内部工作流程。
7. **共享内存的创建**:详细阐述了进程如何生成共享内存,这对于多进程或多线程通信和数据共享是必不可少的知识。
尽管这本书的原始内容针对的是Windows 95,但其中关于操作系统核心原理的讨论,如内存管理、模块加载、进程和线程控制等,对于理解现代Windows操作系统仍然具有参考价值。特别是对于那些想要深入学习系统级编程的开发者来说,这些基础知识是不可或缺的。
此外,作者提到,尽管该书的中文版和英文版都已经绝版,但作者将其制作成电子版免费分享,旨在满足仍然对此领域感兴趣的学习者的需求。在大学操作系统课程中,这种实践性的内容可以作为理论知识的补充,帮助学生更好地理解和应用操作系统的基本原理。通过实际编写拦截系统函数的程序,学生能够更直观地理解系统编程的深度和挑战,从而提升其在系统程序设计方面的技能。