Windbg:dump分析总结
通用 配置符号路径 目的 让WinDbg能够将内存地址翻译成可读的函数名,否则调用栈全是地址,无法分析 命令 识别 Dump 类型和架构 目的 确定是什么类型的dump(full dump? mini dump?) 32位还是64位程序 操作系统版本 是否是WOW64(64位系统...
通用 配置符号路径 目的 让WinDbg能够将内存地址翻译成可读的函数名,否则调用栈全是地址,无法分析 命令 识别 Dump 类型和架构 目的 确定是什么类型的dump(full dump? mini dump?) 32位还是64位程序 操作系统版本 是否是WOW64(64位系统...
cpp 数据模型和数据类型大小 C++ 数据类型的大小并不是完全固定的,而是由数据模型(Data Model)决定的 不同的操作系统和编译器组合会采用不同的数据模型 为什么有不同数据模型 Windows 选择 LLP64 是为了最大化 32 位代码兼容性 保持 long 为 4 ...
共享内存 概述 核心在于让多个进程能够访问同一块物理内存区域,从而实现快速的数据共享 原理 将同一段物理内存映射到多个进程各自的虚拟地址空间 通信方式 进程直接读写该内存区域,无需内核在用户态和内核态间拷贝数据 高性能原因 避免了数据在用户态和内核态之间的拷贝,是速度最快的IPC...
编译相关 #pragma init_seg 概述 是微软C++编译器中的一个编译指令,专门用于精细控制全局静态对象(包括静态变量)的构造和析构顺序 在解决复杂的初始化依赖或DLL加载问题时非常有用 语法 优先级 compiler 最高优先级 此组别的对象最先构造,最后析构 通常保...