约有 65 项符合查询结果, 以下是第 6 - 7项。
费时 < 1 秒。
谢谢!
应该是结束这个进程的时候出现了bsod
我是怎么追追究操作系统bsod的呢?
是这样,我的一个应用程序启动老失败,这个程序是Java,所以只有hslog文件,没有dmp,而这个进程为什么会被结束,每次都内存访问拒绝而退出。(那个Notify.exe也是java带起来的)
我怀疑是防毒软件干掉的。
有的时候似乎在被干掉的出现了操作系统bsod--这个是我怀疑的。
我现在怀疑bsod就是有内存交换的时候出现的,我把oracle的服务全部停止了,似乎机器就不容易重启,oracle很消耗内存。
还有一个疑问点就是,我用冰刀或者RkUnhooker,立即就挂了。
所以我怀疑你那个工具如果运行也会有此遭遇,你那个工具能分析dump文件么?
另外,我那个dump文件不着急,等你忙 ...
Posted in Windows内核调试
by
jlflyfox
on 2009-02-05
谢谢Raymond!
SYSCALL那个我明白了,不过我那个dmp文件似乎无法正常获取ntdll的pdb,不知道是否是“PEB is paged out ”这个原因,现在还无法用u ntdll!WaitForSingleObject来验证,不过这个事情并不重要。
MmDeleteProcessAddressSpace是不是写错了,是MiDeleteAddressesInWorkingSet?还是MmCleanProcessAddressSpace?
1: kd> kv
ChildEBP RetAddr Args to Child
b6210a8c 8084c103 0000001a 00003452 01099221 ...
Posted in Windows内核调试
by
jlflyfox
on 2009-02-05
谢谢王宇,我再补充下我这个机器是AMD。
我刚才不理解执行到了nt!KiServiceExit,你的回答我才搞懂原来是执行完毕准备返回的时候出错的,汗,我水平太菜!
我执行下面这个,没有发现nt!KiServiceExit,而且也没有发现《调试软件》p180说的SYSCALL,估计是版本不一致吧
1: kd> u nt!ZwWaitForSingleObject
nt!ZwWaitForSingleObject:
8082f3dc b819010000 mov eax,119h
8082f3e1 8d542404 lea edx,[esp+4]
8082f3e5 9c pushfd
8082f3e6 ...
Posted in Windows内核调试
by
jlflyfox
on 2009-02-04
我有一个机器突然bsod了,我全部内存转储了,用windbg打开,发现应用层调用WaitForSingleObject导致内核出错
Symbol search path is: srv*c:\symbols*http://msdl.microsoft.com/download/symbolsExecutable search path is: Windows Server 2003 Kernel Version 3790 (Service Pack 1) MP (2 procs) Free x86 compatibleProduct: Server, suite: Enterprise TerminalServer SingleUserTSBuilt by: ...
Posted in Windows内核调试
by
jlflyfox
on 2009-02-04
汗,我知道我哪里错误了
DWORD *PageDir = (DWORD *)0xC0300000;
int i = 0;
for (i = 0; i < 1024; i++) {
PageDirectory[ i ] = PageDir[ i] ;
}
这个里面得到的已经是物理地址了,而我自己再用下面访问,就是把物理地址当作逻辑地址来弄,当然就不对了!
pte40 = pte40&0xFFFFF000;
ppte40 = (DWORD *)pte40;
imagebase = ...
Posted in Windows内核调试
by
jlflyfox
on 2009-01-24
晕,怎么有图像啊,怎么禁止啊,再贴下代码
void _stdcall CFuncGetPageDirectory(){ DWORD *PageDir=(DWORD *)0xC0300000; int i=0;
for (i=0; i<1024; i++) { PageDirectory[ i ]=PageDir[ i] ; if (i == 1) { DWORD pte40 = PageDirectory[ i ]; pte40 = pte40&0xFFFFF000; ppte40 = ...
Posted in Windows内核调试
by
jlflyfox
on 2009-01-22
说来也真不好意思,我是把董岩翻译的undocumented windowsNT和Raymond老大的《调试软件》一起阅读的。
前者05年就通读过一次,今年打算温故而知新。
我在阅读第三章内存管理的那个copy on write的时候,我看了那个showdir的例子,通过调用门,让内核调用0x0041xxxx的代码--这个能理解吧
例子中,内核调用下面这个代码
DWORD PageDirectory[ 1024 ];
void _stdcall CFuncGetPageDirectory(){ DWORD *PageDir = (DWORD *)0xC0300000; int i = ...
Posted in Windows内核调试
by
jlflyfox
on 2009-01-22
谢谢回答。
对于2,我这里,如果用户模式的windbg不detach,那么内核模式的windbg看那个被attach的calc的页目录和页表,特别是后者,发现有的时候就是全0,我那边detach后,就没有问题,所以我也一度怀疑就是你上次教我的海森伯效应,但感觉又不象。
对于3,我自己这里尝试了几次,.process 打开的进程都是windbg本身,而不是system,所以才有疑问。
Posted in 《软件调试》答疑
by
jlflyfox
on 2009-01-22