本文从.NET高级调试的角度分析了Windows中线程上下文切换的问题,通过观察线程栈和寄存器上下文,发现用户线程拥有两个线程栈,分别为用户态栈和内核态栈。调用线程执行Sleep(1)后,还会保存现场,保存在内核态线程栈的InitialStack ~ KernelStack之间。这个分析加深了对操作系统的理解。
本文介绍了如何分析Windows崩溃的内核dump,找到代码源头并解决问题。同时介绍了Windows10新增的内存压缩技术,提供了关闭内存压缩功能的解决方法。
完成下面两步后,将自动完成登录并继续当前操作。