当前位置: 首页 > news >正文

windows线程切换之一个线程的Quantum: -93都是在处理KDPC

windows线程切换之一个线程的Quantum: -93都是在处理KDPC----线程切换和KDPC没有关系


1: kd> g
Breakpoint 16 hit
eax=ffdff000 ebx=895f2a78 ecx=00000002 edx=000013ea esi=00002707 edi=e73f7530
eip=804ee4f8 esp=f789e820 ebp=f789e838 iopl=0 nv up ei pl nz na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00000206
hal!HalRequestSoftwareInterrupt:
804ee4f8 643a0d95000000 cmp cl,byte ptr fs:[95h] fs:0030:00000095=00
0: kd> x nt!*tickcount
80b16f80 nt!KeTickCount = struct _KSYSTEM_TIME
80b16f80 nt!_KeTickCount = 0x105ee872
80a30bac nt!KeQueryTickCount (union _LARGE_INTEGER *)
80afc19a nt!_KiGetTickCount (void)
0: kd> dx -id 0,0,8954e020 -r1 ((ntkrnlmp!_KPRCB *)0xffdff120)
((ntkrnlmp!_KPRCB *)0xffdff120) : 0xffdff120 [Type: _KPRCB *]
[+0x000] MinorVersion : 0x1 [Type: unsigned short]
[+0x002] MajorVersion : 0x1 [Type: unsigned short]
[+0x004] CurrentThread : 0x895f2a78 [Type: _KTHREAD *]
[+0x008] NextThread : 0x89555268 [Type: _KTHREAD *]

[+0x928] ReadySummary : 0x1000 [Type: unsigned long]

0: kd> dx -id 0,0,8954e020 -r1 ((ntkrnlmp!_KTHREAD *)0x895f2a78)
((ntkrnlmp!_KTHREAD *)0x895f2a78) : 0x895f2a78 [Type: _KTHREAD *]
[+0x000] Header [Type: _DISPATCHER_HEADER]
[+0x010] MutantListHead [Type: _LIST_ENTRY]
[+0x018] InitialStack : 0xba1b1000 [Type: void *]
[+0x01c] StackLimit : 0xba1ad000 [Type: void *]
[+0x020] KernelStack : 0xba1b0c5c [Type: void *]
[+0x024] ThreadLock : 0x0 [Type: unsigned long]
[+0x028] ContextSwitches : 0x470 [Type: unsigned long]
[+0x02c] State : 0x2 [Type: unsigned char]
[+0x02d] NpxState : 0xa [Type: unsigned char]
[+0x02e] WaitIrql : 0x0 [Type: unsigned char]
[+0x02f] WaitMode : 1 [Type: char]
[+0x030] Teb : 0x7ffd5000 [Type: void *]
[+0x034] ApcState [Type: _KAPC_STATE]
[+0x04c] ApcQueueLock : 0x0 [Type: unsigned long]
[+0x050] WaitStatus : 258 [Type: long]
[+0x054] WaitBlockList : 0x895f2b18 [Type: _KWAIT_BLOCK *]
[+0x058] Alertable : 0x0 [Type: unsigned char]
[+0x059] WaitNext : 0x0 [Type: unsigned char]
[+0x05a] WaitReason : 0x6 [Type: unsigned char]
[+0x05b] Priority : 13 '\r' [Type: char]
[+0x05c] EnableStackSwap : 0x1 [Type: unsigned char]
[+0x05d] SwapBusy : 0x0 [Type: unsigned char]
[+0x05e] Alerted [Type: unsigned char [2]]
[+0x060] WaitListEntry [Type: _LIST_ENTRY]
[+0x060] SwapListEntry [Type: _SINGLE_LIST_ENTRY]
[+0x068] Queue : 0x0 [Type: _KQUEUE *]
[+0x06c] WaitTime : 0x105ee7d7 [Type: unsigned long]
[+0x070] KernelApcDisable : 0 [Type: short]
[+0x072] SpecialApcDisable : 0 [Type: short]
[+0x070] CombinedApcDisable : 0x0 [Type: unsigned long]
[+0x078] Timer [Type: _KTIMER]
[+0x0a0] WaitBlock [Type: _KWAIT_BLOCK [4]]
[+0x100] QueueListEntry [Type: _LIST_ENTRY]
[+0x108] ApcStateIndex : 0x0 [Type: unsigned char]
[+0x109] ApcQueueable : 0x1 [Type: unsigned char]
[+0x10a] Preempted : 0x1 [Type: unsigned char]
[+0x10b] ProcessReadyQueue : 0x0 [Type: unsigned char]
[+0x10c] KernelStackResident : 0x1 [Type: unsigned char]
[+0x10d] Saturation : 0 [Type: char]
[+0x10e] IdealProcessor : 0x0 [Type: unsigned char]
[+0x10f] NextProcessor : 0x0 [Type: unsigned char]
[+0x110] BasePriority : 13 '\r' [Type: char]
[+0x111] Spare4 : 0x0 [Type: unsigned char]
[+0x112] PriorityDecrement : 0 [Type: char]
[+0x113] Quantum : -93 [Type: char]
[+0x114] SystemAffinityActive : 0x0 [Type: unsigned char]
[+0x115] PreviousMode : 1 [Type: char]
[+0x116] ResourceIndex : 0x1 [Type: unsigned char]
[+0x117] DisableBoost : 0x0 [Type: unsigned char]
[+0x118] UserAffinity : 0x3 [Type: unsigned long]
[+0x11c] Process : 0x8954e020 [Type: _KPROCESS *]
[+0x120] Affinity : 0x3 [Type: unsigned long]
[+0x124] ServiceTable : 0x80b207a0 [Type: void *]
[+0x128] ApcStatePointer [Type: _KAPC_STATE * [2]]
[+0x130] SavedApcState [Type: _KAPC_STATE]
[+0x148] CallbackStack : 0x0 [Type: void *]
[+0x14c] Win32Thread : 0xe17c0d18 [Type: void *]
[+0x150] TrapFrame : 0xba1b0d64 [Type: _KTRAP_FRAME *]
[+0x154] KernelTime : 0x12 [Type: unsigned long]
[+0x158] UserTime : 0x4 [Type: unsigned long]
[+0x15c] StackBase : 0xba1b1000 [Type: void *]
[+0x160] SuspendApc [Type: _KAPC]
[+0x190] SuspendSemaphore [Type: _KSEMAPHORE]
[+0x1a4] TlsArray : 0x0 [Type: void *]
[+0x1a8] LegoData : 0x0 [Type: void *]
[+0x1ac] ThreadListEntry [Type: _LIST_ENTRY]
[+0x1b4] LargeStack : 0x1 [Type: unsigned char]
[+0x1b5] PowerState : 0x0 [Type: unsigned char]
[+0x1b6] NpxIrql : 0x0 [Type: unsigned char]
[+0x1b7] Spare5 : 0x0 [Type: unsigned char]
[+0x1b8] AutoAlignment : 0x0 [Type: unsigned char]
[+0x1b9] Iopl : 0x0 [Type: unsigned char]
[+0x1ba] FreezeCount : 0 [Type: char]
[+0x1bb] SuspendCount : 0 [Type: char]
[+0x1bc] Spare0 [Type: unsigned char [1]]
[+0x1bd] UserIdealProcessor : 0x0 [Type: unsigned char]
[+0x1be] DeferredProcessor : 0x0 [Type: unsigned char]
[+0x1bf] AdjustReason : 0x0 [Type: unsigned char]
[+0x1c0] AdjustIncrement : 0 [Type: char]
[+0x1c1] Spare2 [Type: unsigned char [3]]
0: kd> g
Breakpoint 49 hit
eax=0000001b ebx=804edc6c ecx=80b16802 edx=00000000 esi=00000000 edi=f7737120
eip=80a4002e esp=f78aed64 ebp=f78aed80 iopl=0 nv up ei pl zr na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00000246
nt!KiExitDispatcher+0x42:
80a4002e 807dfc02 cmp byte ptr [ebp-4],2 ss:0010:f78aed7c=02
1: kd> g
Breakpoint 16 hit
eax=ffdff000 ebx=895f2a78 ecx=00000002 edx=000013ea esi=00002707 edi=e741d78a
eip=804ee4f8 esp=f789e818 ebp=f789e830 iopl=0 nv up ei pl nz na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00000206
hal!HalRequestSoftwareInterrupt:
804ee4f8 643a0d95000000 cmp cl,byte ptr fs:[95h] fs:0030:00000095=00
0: kd> g
Breakpoint 49 hit
eax=0000001b ebx=804edc6c ecx=80b16802 edx=00000000 esi=00000000 edi=ffdff120
eip=80a4002e esp=f789ed88 ebp=f789eda4 iopl=0 nv up ei pl zr na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00000246
nt!KiExitDispatcher+0x42:
80a4002e 807dfc02 cmp byte ptr [ebp-4],2 ss:0010:f789eda0=02


0: kd> g
Breakpoint 49 hit
eax=0000001b ebx=804edc6c ecx=80b16802 edx=00000000 esi=00000000 edi=ffdff120
eip=80a4002e esp=f789ed88 ebp=f789eda4 iopl=0 nv up ei pl zr na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00000246
nt!KiExitDispatcher+0x42:
80a4002e 807dfc02 cmp byte ptr [ebp-4],2 ss:0010:f789eda0=02
0: kd> kc
#
00 nt!KiExitDispatcher
01 nt!KeSetEvent
02 HIDCLASS!HidpSubmitInterruptRead
03 HIDCLASS!HidpInterruptReadComplete
04 nt!IopfCompleteRequest
05 USBPORT!USBPORT_CompleteTransfer
06 USBPORT!USBPORT_DoneTransfer
07 USBPORT!USBPORT_FlushDoneTransferList
08 USBPORT!USBPORT_DpcWorker
09 USBPORT!USBPORT_IsrDpcWorker
0a USBPORT!USBPORT_IsrDpc
0b nt!KiRetireDpcList
0c nt!KiDispatchInterrupt
WARNING: Frame IP not in any known module. Following frames may be wrong.
0d 0x0

http://www.cnnetsun.cn/news/155843.html

相关文章:

  • AI图像超分技术深度解析:掌握Stable Diffusion x4 Upscaler的实战应用与性能优化
  • Rustup完全指南:告别版本管理烦恼的终极解决方案
  • 释放键盘潜力:CapsLock+让你的打字效率翻倍提升
  • 海尔智能设备接入HomeAssistant终极指南:5分钟搞定设备互联
  • 揭秘LlamaIndex:如何用数据智能框架彻底改变LLM应用开发
  • 边缘计算场景下语音合成性能优化实战指南:从0.1467到0.0394的跨越
  • Ultimate Vocal Remover终极指南:从入门到精通的音频分离技巧
  • ThinkJS扩展机制深度解析:三大核心组件的定制化开发指南
  • Classic Shell终极指南:快速掌握Windows界面个性化技巧
  • 医疗AI数据困境破局:用MONAI扩散模型5步生成高质量医学影像
  • Blender性能优化实战:5个立竿见影的流畅度提升技巧
  • Atmosphere启动故障终极指南:解决90%的RCM与Fusee兼容性问题
  • 【Open-AutoGLM安全机制深度解析】:敏感操作人工确认如何筑牢AI自动化防线
  • 5分钟掌握Semgrep:开发者必备的代码安全扫描终极指南
  • 如何快速掌握AntSword:网站管理神器的终极使用指南
  • ImGui Node Editor:快速上手的终极节点编辑器解决方案
  • 虚拟滚动的4大核心突破:如何重构大数据渲染性能边界?
  • 3大突破:扩散模型如何重塑医学影像数据生态
  • YOLOv5容器化部署:从模型训练到生产推理的完整指南
  • SQLQueryStress:数据库性能瓶颈的终极猎手
  • Typst导出格式选择难题:SVG与PDF的3种实用解决方案
  • Bounce.js 动画控制实用技巧终极指南:从入门到精通快速上手
  • 5分钟快速上手DataV-React:打造专业级数据可视化大屏展示
  • 破局AI工具调用碎片化:5大优势重塑跨平台开发体验
  • 3步实战:从零构建企业级NATS JetStream消息系统
  • 为什么Spring Boot SAML 2.0是企业单点登录的最佳选择?
  • Eclipse Open VSX 终极指南:5个简单步骤实现高效扩展管理
  • Langchain-Chatchat部署后如何进行持续迭代优化?
  • OpCore Simplify:智能化OpenCore配置的终极解决方案
  • GameFramework实战指南:解决Unity开发中的核心痛点与架构优化