学习如何编写C和C++代码仅仅是个开始。如果你希望从事系统底层开发工作,或想深入理解操作系统、编译器及它们之间内在的关联,成为编程专家,那么就必须充分了解编译器生成的二进制文件(目标文件、静态库、动态库和可执行文件)的作用和结构。开源已经在许多方面从根本上改变了软件的原有面貌,越来越多的系统开始采用或集成开源代码,因此对每位开发人员来说,学习和理解这些底层技术也变得十分重要。 本书深入浅出地讲解了构建过程(编译、链接)中的细节,从多个角度展示了程序与库文件或代码的集成方法,提出了面向代码重用和系统集成的软件架构设计方法,同时展示了系统开发过程中疑难问题的解决方案。另外,本书也是一本C和C++二进制文件方面的软件工程指南,涵盖中级和专家级程序员所需的各方面内容和信息。 通过阅读本书,你将学到: *构建过程(编译和链接)与装载过程的内部原理。 *静态库、动态库和可执行文件的内部工作机制。 *面向代码重用和系统集成的软件架构设计方法。 *编译、链接与运行时问题的排查技巧。 *在Linux和Windows平台下利用二进制文件分析工具进行分析的方法。
|