


Windows 核心编程 _ 内核对象:同步异步设备IO
概述 在Windows应用程序中,我们可以给每个线程指定一个处理器,这样在多个处理器的机器上就可以同时执行多个操作,从而提高吞吐量。 但是,当一个线程发出一个同步I/O请求的时候,它就会被临时挂起,知道设备完成I/O请求为止。此类挂起会影响性能,因为线程卡在那里不能做别的事情。 ...

51CTO:Linux C++网络编程五
平台相关 select 支持:windows 支持:linux,macos,bsd,aix等 poll 支持:linux,macos,bsd等 不支持:一些交旧的或特定的unix操作系统可能不支持poll 不支持:windows不提供标准的poll,但可以通过其他相似的api来达...

Dump分析:空指针访问二,重复释放堆内存二
示例dump分析:空指针访问二 代码 分析步骤 !analyze -v 信息1 RAX 寄存器中存储了地址 0x00000000,导致 mov dword ptr [rax], 2Ah 指令尝试向内存地址 0 写入值 0x2A(十进制 42)时触发异常 在 Windows 系统中...

Windows 核心编程 _ 作业
作业 概述 作业可以让我们将一组进程当作一个实体来处理。 Windows提供的作业(job)内核对象,允许我们将进程组合在一起并创建一个“沙箱”来限制进程能够做什么。 我们可以创建一个只包含一个进程的作业,来对进程施加平时不能施加的限制。 只含一个进程的作业 这么做的目的是为了对...

breakpad记述:Windows
概述 Breakpad 客户端库负责监控应用程序是否发生崩溃(异常)、在崩溃发生时通过生成转储来处理这些崩溃 并提供将转储上传到崩溃报告服务器的方法 客户端 概述 Breakpad 客户端主要负责在应用程序崩溃时捕获崩溃信息,并生成 minidump 文件 该 minidump ...

Windbg:命令了解学习一
vtop 概述 !vtop(Virtual Address to Physical Address)是 WinDbg 的内置扩展命令,用于将虚拟地址转换为物理地址,同时展示页表(Page Table)和页目录(Page Directory)的转换过程 作用 解析虚拟地址对应的物理...

Windows高级调试_调试器
调试器 关于调试器。 调试器类型 用户态调试器 内核态调试器 用户态调试器 查看调试目标的状态 线程、内存、寄存器以及进程空间中打开的内核对象等 修改调试目标的状态 实时调试 分析包含进程快照的转储文件 事后调试 调试工具 cdb.exe 字符界面 可以对windows用户态的内...

Dump分析:调试方法与实践,空指针访问
高效调试 Dump 的通用步骤与方法 准备工作 确保符号文件(.pdb)可用 符号文件必须与崩溃时的程序版本完全一致(编译时间、代码、优化选项一致) 收集必要文件: MiniDump 文件(.dmp) 崩溃时的可执行文件(.exe)及依赖的库(.dll) 源代码(与编译版本一致)...

Windows 核心编程 _ 内核对象:线程同步三
遗弃问题 互斥量概述 互斥量与所有其他内核对象有所不同,这是因为它们具有“线程所有权”的概念。 换句话说,互斥量会记住自己是哪个线程等待成功的。 互斥量的这种特殊性,使得它即使在未触发的状态下,也能为线程所获得。 什么是遗弃问题 当线程调用ReleaseMutex的时候,函数会检...
搜索当前分类