windbg关于.NET分析的扩展命令
收到一个dump文件,运行环境的.net framework的详细版本是多少呢?
dump信息与性能计数器结合分析时,想知道该dump运行的进程号是多少?
dump定位到有效的堆栈信息,而对应的源码是怎么写的呢?
mex扩展提供了大量节省人力搜索的命令,类似扩展可以到windbg网站了解:http://www.windbg.org/
0:102> .time
Debug session time: Wed Nov 15 10:44:19.000 2017 (UTC + 8:00)
System Uptime: 116 days 10:02:02.508
Process Uptime: 0 days 1:03:59.000
Kernel time: 0 days 0:07:30.000
User time: 0 days 3:58:17.000
0:102> lmvm clr
Browse full module list
start end module name
000007fe`f8ba0000 000007fe`f950b000 clr (pdb symbols) c:\symbols\clr.pdb\AD25374E6B2F4798B4FDFDB14E19D79B2\clr.pdb
Loaded symbol image file: clr.dll
Image path: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
Image name: clr.dll
Browse all global symbols functions data
Timestamp: Thu Sep 12 08:14:10 2013 (52310752)
CheckSum: 00967281
ImageSize: 0096B000
File version: 4.0.30319.18408
Product version: 4.0.30319.18408
File flags: 8 (Mask 3F) Private
File OS: 4 Unknown Win32
File type: 2.0 Dll
File date: 00000000.00000000
Translations: 0409.04b0
CompanyName: Microsoft Corporation
ProductName: Microsoft® .NET Framework
InternalName: clr.dll
OriginalFilename: clr.dll
ProductVersion: 4.0.30319.18408
FileVersion: 4.0.30319.18408 built by: FX451RTMGREL
PrivateBuild: DDBLD130
FileDescription: Microsoft .NET Runtime Common Language Runtime - WorkStation
LegalCopyright: © Microsoft Corporation. All rights reserved.
Comments: Flavor=Retail
0:102> !dml_proc
DbgId PID Image file name
0 2c40 c:\Windows\System32\inetsrv\w3wp.exe
OS Thread Id: 0x1c30 (199)
Child SP IP Call Site
0000000026265510 000000007734046a [GCFrame: 0000000026265510]
0000000026265768 000000007734046a [GCFrame: 0000000026265768]
0000000026265718 000000007734046a [HelperMethodFrame: 0000000026265718] System.Threading.Monitor.Enter(System.Object)
0000000026265870 000007fef8bbe0e2 System.Environment+ResourceHelper.GetResourceStringCode(System.Object)
0000000026265fb8 000007fefa0c10b4 [HelperMethodFrame_PROTECTOBJ: 0000000026265fb8] System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode, CleanupCode, System.Object)
00000000262660e0 000007fef8bbdfb8 System.Environment+ResourceHelper.GetResourceString(System.String, System.Globalization.CultureInfo)
0000000026266130 000007fef8bbe7f8 System.Environment.GetResourceStringLocal(System.String)
0000000026266548 000007fefa0c10b4 [ContextTransitionFrame: 0000000026266548]
0000000026266508 000007fefa0c10b4 [GCFrame: 0000000026266508]
0000000026266768 000007fefa0c10b4 [HelperMethodFrame_2OBJ: 0000000026266768] System.Environment.GetResourceFromDefault(System.String)
0000000026266890 000007fef8b880be System.Environment.GetResourceString(System.String, System.Object[])
00000000262668d0 000007fef97b8306 System.IO.__Error.WinIOError(Int32, System.String)
0000000026266920 000007fef8c29f51 System.IO.FileStream.Init(System.String, System.IO.FileMode, System.IO.FileAccess, Int32, Boolean, System.IO.FileShare, Int32, System.IO.FileOptions, SECURITY_ATTRIBUTES, System.String, Boolean, Boolean)
0000000026266ab0 000007fef8c29585 System.IO.FileStream..ctor(System.String, System.IO.FileMode, System.IO.FileAccess, System.IO.FileShare, Int32, System.IO.FileOptions, System.String, Boolean)
0000000026266b60 000007fef8be60ba System.IO.FileStream..ctor(System.String, System.IO.FileMode)
0000000026266be0 000007ff001c2b7b xxxxxxxxx.MDM.Pub.Common.MDMPubFunction.WriteTextFile(System.String)
0000000026266c80 000007ff001f9b48 xxxxxxxxx.MDM.Interface.Server.Com.MDMInterfaceCore.ExecuteSql(System.String[], System.String, System.String ByRef)
0000000026266db0 000007ff001c508c xxxxxxxxx.MDM.Interface.Server.Com.MDMInterface.MDMInterfaceJson(System.String, System.String, Boolean)
0000000026268850 000007ff00456d72 xxxxxxxxx.MDM.Interface.Server.Com.MDMInterface.GenerateModifySql(System.String, Boolean, System.Data.DataTable, System.Data.DataTable, Newtonsoft.Json.Linq.JObject, System.String ByRef)
000000002626a8f0 000007ff001c9bc6 xxxxxxxxx.MDM.Interface.Server.Com.MDMInterface.MDMInterfaceJson(System.String, System.String, Boolean)
000000002626c390 000007ff001c27be xxxxxxxxx.MDM.Interface.Server.Com.MDMInterface.MDMInterfaceJson(System.String, System.String)
000000002626c4b0 000007ff001c1dfb xxxxxxxxx.MDM.Interface.Server.Service.MDMInterfaceSrv.MDMInterfaceJson(System.String, System.String)
000000002626cbe8 000007fefa0c10b4 [DebuggerU2MCatchHandlerFrame: 000000002626cbe8]
000000002626ccd0 000007fefa0c10b4 [CustomGCFrame: 000000002626ccd0]
000000002626cc98 000007fefa0c10b4 [GCFrame: 000000002626cc98]
000000002626cc28 000007fefa0c10b4 [GCFrame: 000000002626cc28]
000000002626cff8 000007fefa0c10b4 [HelperMethodFrame_PROTECTOBJ: 000000002626cff8] System.RuntimeMethodHandle._InvokeMethodFast(System.IRuntimeMethodInfo, System.Object, System.Object[], System.SignatureStruct ByRef, System.Reflection.MethodAttributes, System.RuntimeType)
000000002626d140 000007fef8b9587f System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo, Boolean)
000000002626d280 000007fef8be0426 System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo)
000000002626d2d0 000007fef7a74c02 System.Web.Services.Protocols.LogicalMethodInfo.Invoke(System.Object, System.Object[])
000000002626d350 000007fef7a8b132 System.Web.Services.Protocols.WebServiceHandler.Invoke()
000000002626d3e0 000007fef7a8ad5b System.Web.Services.Protocols.WebServiceHandler.CoreProcessRequest()
000000002626d450 000007fef7abdb68 System.Web.Services.Protocols.SyncSessionlessHandler.ProcessRequest(System.Web.HttpContext)
000000002626d4b0 000007feefa0e5a8 System.Web.Script.Services.ScriptHandlerFactory+HandlerWrapper.ProcessRequest(System.Web.HttpContext)
000000002626d4e0 000007fef3305c25 System.Web.HttpApplication+CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
000000002626d5a0 000007fef32d337a System.Web.HttpApplication.ExecuteStep(IExecutionStep, Boolean ByRef)
000000002626d650 000007fef32e7030 System.Web.HttpApplication+ApplicationStepManager.ResumeSteps(System.Exception)
000000002626d710 000007fef32d2879 System.Web.HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest(System.Web.HttpContext, System.AsyncCallback, System.Object)
000000002626d770 000007fef32d777c System.Web.HttpRuntime.ProcessRequestInternal(System.Web.HttpWorkerRequest)
000000002626d7f0 000007fef3a67ac3 System.Web.RequestQueue.WorkItemCallback(System.Object)
000000002626d840 000007fef8ba3178 System.Threading.ExecutionContext.runTryCode(System.Object)
000000002626df68 000007fefa0c10b4 [HelperMethodFrame_PROTECTOBJ: 000000002626df68] System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode, CleanupCode, System.Object)
000000002626e090 000007fef8b917e1 System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
000000002626e0f0 000007fef8bdc419 System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
000000002626e140 000007fef8bdba83 System.Threading.ThreadPoolWorkQueue.Dispatch()
000000002626e1e0 000007fef8bdb8d5 System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()
000000002626e840 000007fefa0c10b4 [DebuggerU2MCatchHandlerFrame: 000000002626e840]
000000002626ea18 000007fefa0c10b4 [ContextTransitionFrame: 000000002626ea18]
000000002626ec00 000007fefa0c10b4 [DebuggerU2MCatchHandlerFrame: 000000002626ec00]
0:199> !ip2md 000007ff001c2b7b
MethodDesc: 000007ff00305610
Method Name: xxxxxxxxx.MDM.Pub.Common.MDMPubFunction.WriteTextFile(System.String)
Class: 000007ff00321f20
MethodTable: 000007ff00305638
mdToken: 0000000006000071
Module: 000007ff00300c20
IsJitted: yes
CodeAddr: 000007ff001c28d0
Transparency: Critical
0:199> !DumpModule 000007ff00300c20
Name: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\cwbase\b1d2b51b\62f03f15\assembly\dl3\c065d636\0073700f_62f6d001\xxxxxxxxx.MDM.Pub.Common.dll
Attributes: PEFile
Assembly: 00000000028b54c0
LoaderHeap: 0000000000000000
TypeDefToMethodTableMap: 000007ff00316038
TypeRefToMethodTableMap: 000007ff003160e8
MethodDefToDescMap: 000007ff00316660
FieldDefToDescMap: 000007ff00316dd0
MemberRefToDescMap: 000007ff00317068
FileReferencesMap: 000007ff00317dc0
AssemblyReferencesMap: 000007ff00317dc8
MetaData start address: 000000006df7bdf4 (37564 bytes)
0:199> !SaveModule 000007ff00300c20 D:\xxxxxxxxx.MDM.Pub.Common.dll
3 sections in file
section 0 - VA=2000, VASize=13184, FileAddr=200, FileSize=13200
section 1 - VA=16000, VASize=3b8, FileAddr=13400, FileSize=400
section 2 - VA=18000, VASize=c, FileAddr=13800, FileSize=200
0:192> !mex.p
Name Ses PID PEB Mods Handle Thrd
======== === ============== ================ ==== ====== ====
w3wp.exe 0 2c40 (0n11328) 000007fffffde000 1927 6332 251 CommandLine: c:\windows\system32\inetsrv\w3wp.exe -ap "cwbasev4.0" -v "v4.0" -l "webengine4.dll" -a \\.\pipe\iisipm994a2419-0359-47c9-ae5b-d46cbbf85bfd -h "C:\inetpub\temp\apppools\cwbasev4.0\cwbasev4.0.config" -w "" -m 1
Last event: 2c40.2308: Wake debugger - code 80000007 (first/second chance not available) Show Threads: Unique Stacks !listthreads (!lt) ~*kv 0:208> !mex.help
Mex currently has 255 extensions available. Please specify a keyword to search.
Or browse by category: All PowerShell[6] SystemCenter[3] Networking[12] Process[5] Mex[2] Kernel[27] DotNet[32] Decompile[15] Utility[40] Thread[27] Binaries[6] General[22]
0:208> !mex.help -cat 'DotNet'
Command Description Category
=========================================== =================================================================== ========
aspnetcache (!aspnetcache) Display the ASP.NET Cache DotNet
aspxpagesext Like !aspxpages, but more powerful DotNet
clrstack2 (!ck2) Prints the stack trace of a managed thread DotNet
cordll (!cordll) Displays available CLR versions DotNet
dae (!DumpAllExceptions) Replacement for !dae DotNet
delegaterefs (!drefs) Displays information about objects referenced by delegates DotNet
displayobj (!do2) Display a managed object structure DotNet
dumpaspnetsession Prints information on ASP.NET InProc Sessions DotNet
dumpdataset Dumps a list of all DataSet objects DotNet
dumpdynamicassemblies2 (!dda2) Like !DumpDynamicAssemblies, but better DotNet
dumphttpruntime2 Dumps the HttpRuntime objects on the heap DotNet
dumpwcfmessage (!wcfmsg) Dumps information about a WCF buffered message DotNet
finalizable (!finalizable) Displays information about finalizable objects in the GC Heap DotNet
foreachobject (!feo) Runs a command against each CLR object DotNet
gchandleinfo (!gchandle) Displays information on GC Handles DotNet
gcheapinfo (!gchi) Get info on the managed GC Heap DotNet
httpheaders Print the contents of an HttpHeaderCollection DotNet
ilspy Automatically extracts the module from the dump, and launches ILSpy DotNet
managedthreads (!mthreads) A !threads look-alike, with !aspxpagexext-like output DotNet
objectsummary Outputs object analysis summary DotNet
oracleclientperfcounters Display System.Data.OracleClient performance counters DotNet
printdbcommand Prints information about a DBCommand object DotNet
printexception2 (!pe2) Like !PrintException, with DML DotNet
sqlclientperfcounters Display System.Data.SqlClient performance counters DotNet
sqlcmd Provides information about ADO.NET Commands to SQL Server DotNet
sqlcn Provides an overview of ADO.NET connections to SQL Server DotNet
sqlports (!sqlports) Gets the local and remote TCP ports from a SqlConnection object DotNet
staticfields Display static fields of a managed type DotNet
svcthreads (!svcthreads) Find threads executing WCF services DotNet
tasktriage (!tasks) Analyzes the System.Threading.Tasks.Task objects still on the heap. DotNet
wcfperfcounters Dumps performance counters for WCF services DotNet
wcftcpconnectionpools (!wtcp) Display WCF Net.TCP connection pools DotNet 0:192> !clrstack2 208
DbgId ThreadId Apartment Kind CLR GC Mode GC Suspending?
208 2590 MTA Worker v4.0.30319.18408 Preemptive no SqlCommand
----------
Command 0x00000008bfad3648
CommandText SP_Get_Data_Paged
Connection 0x00000008bfad2da8
ConnectionString data source=192.168.108.84;initial catalog=xxxxx;user id=yyyyyyy;password=xxxxxxxx;Connect Timeout=3600
Timeout 01:40:00
Duration? 00:00:07.7321433 SP IP Function Source
0000000acfb0c888 0000000000000000 InlinedCallFrame
0000000acfb0c888 0000000000000000 InlinedCallFrame
0000000acfb0c860 000007fef2c76e11 DomainNeutralILStubClass.IL_STUB_PInvoke(SNI_ConnWrapper*, SNI_Packet**, Int32)
0000000acfb0c930 000007fef2c5d17f SNINativeMethodWrapper.SNIReadSyncOverAsync(System.Runtime.InteropServices.SafeHandle, IntPtr ByRef, Int32)
0000000acfb0c9a0 000007fef2c5ce9e System.Data.SqlClient.TdsParserStateObject.ReadSniSyncOverAsync()
0000000acfb0ca50 000007fef2c5cdb0 System.Data.SqlClient.TdsParserStateObject.TryReadNetworkPacket()
0000000acfb0ca90 000007fef2c5d5a0 System.Data.SqlClient.TdsParserStateObject.TryPrepareBuffer()
0000000acfb0cac0 000007fef2c60492 System.Data.SqlClient.TdsParserStateObject.TryReadByte(Byte ByRef)
0000000acfb0cb00 000007fef2c5f4b7 System.Data.SqlClient.TdsParser.TryRun(System.Data.SqlClient.RunBehavior, System.Data.SqlClient.SqlCommand, System.Data.SqlClient.SqlDataReader, System.Data.SqlClient.BulkCopySimpleResultSet, System.Data.SqlClient.TdsParserStateObject, Boolean ByRef)
0000000acfb0cca0 000007fef2c6c55d System.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
0000000acfb0cd10 000007fef2c6c4da System.Data.SqlClient.SqlDataReader.get_MetaData()
0000000acfb0cd60 000007fef2c669bc System.Data.SqlClient.SqlCommand.FinishExecuteReader(System.Data.SqlClient.SqlDataReader, System.Data.SqlClient.RunBehavior, System.String)
0000000acfb0cde0 000007fef2c6688b System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(System.Data.CommandBehavior, System.Data.SqlClient.RunBehavior, Boolean, Boolean, Int32, System.Threading.Tasks.Task ByRef, Boolean, System.Data.SqlClient.SqlDataReader)
0000000acfb0cee0 000007fef2c65cfa System.Data.SqlClient.SqlCommand.RunExecuteReader(System.Data.CommandBehavior, System.Data.SqlClient.RunBehavior, Boolean, System.String, System.Threading.Tasks.TaskCompletionSource`1<System.Object>, Int32, System.Threading.Tasks.Task ByRef, Boolean)
0000000acfb0cfb0 000007fef2c65a9b System.Data.SqlClient.SqlCommand.RunExecuteReader(System.Data.CommandBehavior, System.Data.SqlClient.RunBehavior, Boolean, System.String)
0000000acfb0d040 000007fef2c64860 System.Data.SqlClient.SqlCommand.ExecuteReader(System.Data.CommandBehavior, System.String)
0000000acfb0d100 000007fef2c644a4 System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(System.Data.CommandBehavior)
0000000acfb0d160 000007fef2c69a55 System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(System.Data.CommandBehavior)
0000000acfb0d190 000007fef2c4c5c5 System.Data.Common.DbDataAdapter.FillInternal(System.Data.DataSet, System.Data.DataTable[], Int32, Int32, System.String, System.Data.IDbCommand, System.Data.CommandBehavior)
0000000acfb0d240 000007fef2c4c404 System.Data.Common.DbDataAdapter.Fill(System.Data.DataSet, Int32, Int32, System.String, System.Data.IDbCommand, System.Data.CommandBehavior)
0000000acfb0d2f0 000007fef2c4c206 System.Data.Common.DbDataAdapter.Fill(System.Data.DataSet)
0000000acfb0d3a0 000007fe9962c56e Genersoft.Platform.Core.DataAccess.Database.GetDataSet(System.String, System.String, System.Data.IDbDataParameter[], Boolean)
0000000acfb0d470 000007fe99de3d47 Genersoft.Platform.Core.DataAccess.Database.RunProcGetDataSet(System.String, System.String, System.Data.IDbDataParameter[], Int32[])
0000000acfb0d4f0 000007fe9a342beb Genersoft.Platform.Core.DataAccess.Database.GetPaginaryDataSet(System.String, System.String, System.String, System.String, System.String, System.String, Int32, Int32, Int32 ByRef, Int32 ByRef, System.String, System.String, System.String)
0000000acfb0d590 000007fe9a358975 Genersoft.Platform.Workflow.Server.BusinessProcess.RefWorkItemBillMgr.GetWorkItemsWithCustomFields(System.String, System.String, Genersoft.Platform.Workflow.Spi.Model.InstanceApprovalState, Genersoft.Platform.Core.Common.GSPFilter)
0000000acfb0d680 000007fe9a35793a GSP_WorkflowWebService.ORUWebService.GetWorkItemsWithCustomFields(System.String, System.String, System.String, System.String ByRef)
0000000acfb0dbf8 0000000000000000 DebuggerU2MCatchHandlerFrame
0000000acfb0dc58 0000000000000000 HelperMethodFrame_PROTECTOBJ [System.RuntimeMethodHandle.InvokeMethod(System.Object, System.Object[], System.Signature, Boolean)]
0000000acfb0ddd0 000007fef7aed28c System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(System.Object, System.Object[], System.Object[])
0000000acfb0de40 000007fef7aee2b1 System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo)
0000000acfb0df60 000007fe9960b5e5 Genersoft.Platform.AppFramework.Service.GSPRestfulContext.Invoke(System.String, System.String, System.String, Boolean, System.String[], Int32[] ByRef, System.String[] ByRef)
0000000acfb0e020 000007fe996093f4 Genersoft.Platform.AppFramework.RESTFulWebService.GSPHttpWebHandler.Invoke(System.IO.BinaryReader, System.Web.HttpContext)
0000000acfb0e120 000007fe996088e9 Genersoft.Platform.AppFramework.RESTFulWebService.GSPHttpWebHandler.ProcessRequest(System.Web.HttpContext)
0000000acfb0e260 000007fef1cd2d41 System.Web.HttpApplication+CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
0000000acfb0e340 000007fef1c98bd5 System.Web.HttpApplication.ExecuteStep(IExecutionStep, Boolean ByRef)
0000000acfb0e3e0 000007fef254d8f8 System.Web.HttpApplication+ApplicationStepManager.ResumeSteps(System.Exception)
0000000acfb0e490 000007fef2428cf3 System.Web.HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest(System.Web.HttpContext, System.AsyncCallback, System.Object)
0000000acfb0e4f0 000007fef244c515 System.Web.HttpRuntime.ProcessRequestInternal(System.Web.HttpWorkerRequest)
0000000acfb0e5b0 000007fef253d592 System.Web.Hosting.ISAPIRuntime.ProcessRequest(IntPtr, Int32)
0000000acfb0e6d0 000007fef24066c0 DomainNeutralILStubClass.IL_STUB_COMtoCLR(Int64, Int32, IntPtr)
0000000acfb0eaa8 0000000000000000 ContextTransitionFrame
0000000acfb0ecc0 0000000000000000 ComMethodFrame
windbg关于.NET分析的扩展命令的更多相关文章
- WinDbg 命令三部曲:(二)WinDbg SOS 扩展命令手册
本文为 Dennis Gao 原创技术文章,发表于博客园博客,未经作者本人允许禁止任何形式的转载. 系列博文 <WinDbg 命令三部曲:(一)WinDbg 命令手册> <WinDb ...
- WinDbg 命令三部曲:(三)WinDbg SOSEX 扩展命令手册
本文为 Dennis Gao 原创技术文章,发表于博客园博客,未经作者本人允许禁止任何形式的转载. 系列博文 <WinDbg 命令三部曲:(一)WinDbg 命令手册> <WinDb ...
- x264源代码简单分析:x264命令行工具(x264.exe)
===================================================== H.264源代码分析文章列表: [编码 - x264] x264源代码简单分析:概述 x26 ...
- Windbg内核调试之二: 常用命令
运用Windbg进行内核调试, 熟练的运用命令行是必不可少的技能. 但是面对众多繁琐的命令, 实在是不可能全部的了解和掌握. 而了解Kernel正是需要这些命令的指引, 不断深入理解其基本的内容. 下 ...
- 在WinDbg里使用MEX调试扩展
简介 针对WinDbg的MEX调试扩展可以帮助您简化常见的调试器任务,并为调试器提供强大的文本筛选功能.此扩展被Microsoft支持工程师广泛用于解决流程应用程序的故障. 下载&安装 下载m ...
- C#编程模式之扩展命令
C#编程模式之扩展命令 前言 根据上一篇的命令模式和在工作中遇到的一些实际情况,有了本篇文章,时时都是学习的一个过程,会在这个过程中发现许多好的模式或者是一种开发方式,今天写出来的就是我工作中常用到的 ...
- Java 动态代理机制分析及扩展
Java 动态代理机制分析及扩展,第 1 部分 王 忠平, 软件工程师, IBM 何 平, 软件工程师, IBM 简介: 本文通过分析 Java 动态代理的机制和特点,解读动态代理类的源代码,并且模拟 ...
- 调试技巧 —— 如何利用windbg + dump + map分析程序异常
调试技巧 —— 如何利用windbg + dump + map分析程序异常 逗比汪星人2011-09-04上传 调试技巧 —— 如何利用windbg + dump + map分析程序异常 http ...
- 第1阶段——uboot分析之查找命令run_command函数和命令定义过程(6)
本节主要学习,run_command函数命令查找过程,命令生成过程 1.run_command函数命令查找过程分析:在u-boot界面中(main_loop();位于u-boot-1.1.6/comm ...
随机推荐
- idea和Webstorm上使用git和github,码云
由于之前一直使用svn,现在项目使用git,顾根据网上找的学习资料,自己梳理了下,收获蛮多,这里做个记录,如果能帮助到您那是最好不过的. 1.大致步骤 使用工具:idea,github,码云 webs ...
- 2. whoami,常用包,调优selinux,七种启动模式,系统开机服务
1 whoami 查看当前登录用户 useradd zhang 增加用户 passwd zhang su - zhang 切换用户 e ...
- 用keras作CNN卷积网络书本分类(书本、非书本)
本文介绍如何使用keras作图片分类(2分类与多分类,其实就一个参数的区别...呵呵) 先来看看解决的问题:从一堆图片中分出是不是书本,也就是最终给图片标签上:“书本“.“非书本”,简单吧. 先来看看 ...
- C#中MessageBox用法大全(转)
我们在程序中经常会用到MessageBox. MessageBox.Show()共有21中重载方法.现将其常见用法总结如下: 1.MessageBox.Show("Hello~~~~&quo ...
- bzoj 3528: [Zjoi2014]星系调查
Description 银河历59451年,在银河系有许许多多已被人类殖民的星系.如果想要在行 星系间往来,大家一般使用连接两个行星系的跳跃星门. 一个跳跃星门可以把 物质在它所连接的两个行星系中互 ...
- Redis分布式集群搭建
Redis集群架构图 上图蓝色为redis集群的节点. 节点之间通过ping命令来测试连接是否正常,节点之间没有主区分,连接到任何一个节点进行操作时,都可能会转发到其他节点. 1.Redis的容错机制 ...
- linux系统日常管理复习题讲解
1. 如何看当前Linux系统有几颗物理CPU和每颗CPU的核数? 2. 查看系统负载有两个常用的命令,是哪两个?这三个数值表示什么含义呢? 3. vmstat r, b, si, so, bi, b ...
- lesson - 3 笔记 ls /alias /ldd /cd /pwd /环境变量 / 目录
一.ls 命令 作用:用来显示目录列表. 语法: ls (选项) (参数) 选项: -a: 显示所有档案以及目录(ls内定将档案或目录名称为“./..”的视为隐藏) -A: 显示除隐藏文件“./.. ...
- 从一个word文件中读取所有的表格和标题(2)
上一篇文章主要讲了从word底层xml中获取表格和标题的方法,但是存在一个问题:word文件必须是docx格式的.如果为doc格式的,可以有两种解决方案: 一.把doc文件转换成docx格式文件,用上 ...
- 使用trim_galore软件遇到的问题
我的原始测序数据是双端测序,在用trim_galore软件去接头的这一步,使用的命令行是 time nohup trim_galore R17002628-SKOV3-m6A_combined_R1. ...