WinDBG Scripts

I see post-mortem debugging as:

39,5 % taking memory dumps at the right time 

20,5 % running the same ol' commands over and over

31 % jumping to conclusions based on experience and proving the theory, and...

9 % pure luck, i.e. you happen to stumble upon something when poking around


Don't you just love it when people apply arbitrary percentages to abstract things, especially here, 9% of what, and how did I get to that conclusion 🙂  And have you noticed that as opposed to this list, arbitrary percentages are usually given in 5 or 10% increments.  I would venture to guess that if we had a hex numbering system our arbitrary values would probably not be divisible by 5 or 10, but rather by 8 or 16:)  much the same as when you say it's about 10 cms, you wouldn't ever say i'm estimating it to be 3,9370 inches,  however once you use numbers that are non-standard and at least have one decimal number people start believing it as truths rather than estimates.  

While I'm on the topic of estimates,  try this out...  have one person estimate 1*2*3*4*5*6*7*8*9*10 (without giving them enough time to actually calculate it) and another person estimate 10*9*8*7*6*5*4*3*2*1.  I bet you that the estimate from person 1 will be dimensions lower than the estimate from person 2.  

What does this have to do with windbg scripts and tools?  Well, I'm a lazy debugger, and I can find a lot better uses of my time (learning potentially useless math facts for example:)), than running the same commands over and over.  So anyways,  I could'nt imagine debugging without the .foreach command or other windbg script elements, but man, Roberto here just made it into an art, producing script for everything you can think of:)  much like my colleague Doug actually, whenever I ask Doug for advice on something, he comes up with a new script or a new debugger command that i've never heard of... 

Anyways, what I have just spent about half a page trying to say is... bookmark Roberto's blog, it'll be worth it...  the good thing about scripts like these is that not only do you not have to retype the same old commands, but if you have a script with a set of commands you would always run for hangs for example, you won't forget to run one of the commands that might be the key to resolving your issue.


Comments (7)
  1. Hi Tess,

    Now I understand why the number of comments in my blog increased so much! 🙂

    By the way, some of your posts are strong candidates for scripting, I just don’t have a repro of the problem and I’m lazy too, otherwise I’d try to create one. 😉

    Anyway, if you have any ideas in mind, let me know and I’ll be more than glad to create a script for them.


  2. Sergio says:

    It’s a well known fact that 83.6% of all percentage quotes are made up 😉

  3. Silverlight [Via: gduthie ] Tim Sneath on Silverlight [Via: gduthie ] More on Lazy Loading vs. Pre-loading…

  4. Steve Lydiatt says:

    68% of statistics are fabricated.

  5. Steve Lydiatt says:

    Ooops, I was wrong, Sergio has a more accurate number.

  6. anothr user says:

    One new subscriber from Anothr Alerts

  7. LosManos says:


    I skimmed a book about Feng Shui.  The writer had an estimation of unnecessary stuff; 100% in the attic, 100% in the cellar, 40% in the kitchen, 20% in the first bedroom, 40% in the second and 50% in the wardrobe.  She then added them to 350%.

    This book was at least the second edition and even translated to swedish still and no one had questioned the usage of the figures.

    How do one defend oneself against such?


Comments are closed.

Skip to main content