记一次 .NET某工控视觉主动化系统 卡死分析

打印 上一主题 下一主题

主题 874|帖子 874|积分 2622

一:背景

1. 讲故事

今天分享的dump是练习营里一位学员的,从一个啥也不会到现在分析的有模有样,真的是看他成长起来的,调试技能学会了就是真真实实本身的,话不多说,上windbg说话。
二:WinDbg 分析

1. 为什么会卡死

这位学员是从事工控大类下的视觉主动化,也是目前.NET的主战场,这个场景下大多都是WPF大概WinForm程序,不管是什么程序,先用命令 k 开路。
  1. 0:000> ~0s
  2. ntdll!NtWaitForMultipleObjects+0x14:
  3. 00007ff8`d825cc14 c3              ret
  4. 0:000> k
  5. # Child-SP          RetAddr               Call Site
  6. 00 000000e4`c0cf87e8 00007ff8`d54f7ff7     ntdll!NtWaitForMultipleObjects+0x14
  7. 01 000000e4`c0cf87f0 00007ff8`83aa7585     KERNELBASE!WaitForMultipleObjectsEx+0x107
  8. 02 000000e4`c0cf8af0 00007ff8`83aa76fa     PylonBase_v5_1!Pylon::CInstantCameraArray::DestroyInstantCamera+0x78da1
  9. 03 000000e4`c0cf8bb0 00007ff8`83a188bc     PylonBase_v5_1!Pylon::CInstantCameraArray::DestroyInstantCamera+0x78f16
  10. 04 000000e4`c0cf8c30 00007ff8`83a22a70     PylonBase_v5_1!Pylon::CGrabResultPtr::IsUnique+0x16ec
  11. 05 000000e4`c0cf8cd0 00007ff8`41fee2dd     PylonBase_v5_1!Pylon::CGrabResultPtr::IsUnique+0xb8a0
  12. 06 000000e4`c0cf8d40 00007ff8`4218711b     0x00007ff8`41fee2dd
  13. ...
复制代码
从卦象看真的很不吉利,因为这个等待是一个第三方的SDK库,从 DestroyInstantCamera 名字看就是 立刻销毁相机,接下来我们看下 PylonBase_v5_1 是何方圣神?
  1. 0:000> lmvm PylonBase_v5_1
  2. Browse full module list
  3. start             end                 module name
  4. 00007ff8`839e0000 00007ff8`83b5b000   PylonBase_v5_1   (export symbols)       PylonBase_v5_1.dll
  5.     Loaded symbol image file: PylonBase_v5_1.dll
  6.     Image path: C:\Program Files\Basler\pylon 5\Runtime\x64\PylonBase_v5_1.dll
  7.     Image name: PylonBase_v5_1.dll
  8.     Browse all global symbols  functions  data
  9.     Timestamp:        Fri Aug 24 20:41:55 2018 (5B7FFD13)
  10.     CheckSum:         0017E66C
  11.     ImageSize:        0017B000
  12.     File version:     5.1.0.12681
  13.     Product version:  5.1.0.12681
  14.     File flags:       0 (Mask 3F)
  15.     File OS:          40004 NT Win32
  16.     File type:        2.0 Dll
  17.     File date:        00000000.00000000
  18.     Translations:     0000.04b0
  19.     Information from resource tables:
  20.         CompanyName:      Basler
  21.         ProductName:      Basler pylon
  22.         InternalName:     PylonBase
  23.         OriginalFilename: PylonBase.dll
  24.         ProductVersion:   5.1.0.12681
  25.         FileVersion:      5.1.0.12681
  26.         PrivateBuild:     
  27.         SpecialBuild:     0
  28.         FileDescription:  PylonBase Module
  29.         LegalCopyright:   Copyright (c) 2006-2018 Basler AG - All rights reserved.
  30.         LegalTrademarks:  
  31.         Comments:         1d4ccf9b36037580c4655fde004335702d90d3e8
复制代码
由于我是行外人,所以我好奇的查一下 Basler 是什么公司,
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

知者何南

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表