EPISODE 6 - Scott & Mark Learn To... Take a Dump
Read full transcript 19 segments
-
[Music] [Music] I'm so glad that you're uh like fully I'm so glad that you're uh like fully I'm so glad that you're uh like fully plugged in uh and ready to go plugged in uh and ready to go plugged in uh and ready to go today today today ready is H is so we have two technical ready is H is so we have two technical ready is H is so we have two technical topics do we well that's what what's topics do we well that's what what's topics do we well that's what what's it's on Deck right here um and I'm it's on Deck right here um and I'm it's on Deck right here um and I'm wondering if we should switch one to wondering if we should switch one to wondering if we should switch one to non- technal uh we do whatever makes you non- technal uh we do whatever makes you non- technal uh we do whatever makes you happy man the B right right now the two happy man the B right right now the two happy man the B right right now the two are SC you teach Mark how to make his are SC you teach Mark how to make his are SC you teach Mark how to make his terminal colable and he teach you how to terminal colable and he teach you how to terminal colable and he teach you how to take a d take a d take a d [Laughter] [Laughter] [Laughter] I'm sorry K down hey don't laugh at non-native down hey don't laugh at non-native speakers it's not non-english speakers speakers it's not non-english speakers speakers it's not non-english speakers you said it absolutely perfectly always you said it absolutely perfectly always you said it absolutely perfectly always been funny it's been funny for 30 years been funny it's been funny for 30 years been funny it's been funny for 30 years oh really yeah I saw just me do you no oh really yeah I saw just me do you no oh really yeah I saw just me do you no no no it's not you do you know why it's no no it's not you do you know why it's no no it's not you do you know why it's funny I don't know actually explain that funny I don't know actually explain that funny I don't know actually explain that to me so you know you know what a to me so you know you know what a to me so you know you know what a process dump is right yeah I know that process dump is right yeah I know that process dump is right yeah I know that okay so if you take a process dump you okay so if you take a process dump you okay so if you take a process dump you take it from the process but if you are take it from the process but if you are take it from the process but if you are living your life and then you're like living your life and then you're like living your life and then you're like hey I need to go take a dump it means hey I need to go take a dump it means hey I need to go take a dump it means poop oh poop oh poop oh okay so this has been funny for the okay so this has been funny for the okay so this has been funny for the since the since the since the 90s and and this is something that is 90s and and this is something that is 90s and and this is something that is just one of those things that everybody just one of those things that everybody just one of those things that everybody giggles at when you say it okay
-
all right let's do all right let's do this we we do I one two three what there this we we do I one two three what there this we we do I one two three what there is did we start we're starting now hey is did we start we're starting now hey is did we start we're starting now hey friends welcome to Scott and Mark learn friends welcome to Scott and Mark learn friends welcome to Scott and Mark learn to um Mark I've been uh you know coding to um Mark I've been uh you know coding to um Mark I've been uh you know coding for some decades you've been coding for for some decades you've been coding for for some decades you've been coding for some decades plus one and uh I think some decades plus one and uh I think some decades plus one and uh I think that amongst application developers that amongst application developers that amongst application developers Average Joe and Jane application Average Joe and Jane application Average Joe and Jane application developers uh dump files DMP files are developers uh dump files DMP files are developers uh dump files DMP files are still kind of opaque I don't think still kind of opaque I don't think still kind of opaque I don't think there's a certain kind of level where there's a certain kind of level where there's a certain kind of level where it's like and now you're driving stick it's like and now you're driving stick it's like and now you're driving stick shift you know uh taking a dump no pun shift you know uh taking a dump no pun shift you know uh taking a dump no pun intended on Windows there's a certain intended on Windows there's a certain intended on Windows there's a certain kind of person that just gets it how can kind of person that just gets it how can kind of person that just gets it how can we get more developers to get that and we get more developers to get that and we get more developers to get that and is that a useful skill to is that a useful skill to is that a useful skill to have uh it is a useful if you're a have uh it is a useful if you're a have uh it is a useful if you're a programmer it's an absolutely must-have programmer it's an absolutely must-have programmer it's an absolutely must-have skill to have if you're especially if skill to have if you're especially if skill to have if you're especially if you're doing native code development but you're doing native code development but you're doing native code development but even with C I think you've probably even with C I think you've probably even with C I think you've probably opened a lot of dumb files sure a lot opened a lot of dumb files sure a lot opened a lot of dumb files sure a lot but I think that this is still like this but I think that this is still like this but I think that this is still like this is my opinion and we'll see what people is my opinion and we'll see what people is my opinion and we'll see what people say in the comments but I feel like it's say in the comments but I feel like it's say in the comments but I feel like it's a sub 10% % of developers skill which is a sub 10% % of developers skill which is a sub 10% % of developers skill which is probably not enough I don't I don't probably not enough I don't I don't probably not enough I don't I don't think it's enough you're really think it's enough you're really think it's enough you're really handicapping yourself if you're not um handicapping yourself if you're not um handicapping yourself if you're not um able to process a dumb file to able to process a dumb file to able to process a dumb file to understand what went wrong when your app understand what went wrong when your app understand what went wrong when your app crashes yeah do you think it's because crashes yeah do you think it's because crashes yeah do you think it's because of the rise of managed code that we've of the rise of managed code that we've of the rise of managed code that we've kind of OB fiscated what's really kind of OB fiscated what's really kind of OB fiscated what's really happening and people are just making
-
happening and people are just making happening and people are just making memory and garbage collectors taking memory and garbage collectors taking memory and garbage collectors taking care of it care of it care of it and even with that so you get an and even with that so you get an and even with that so you get an unhandled ception like looking at the unhandled ception like looking at the unhandled ception like looking at the stack with symbols and source code you stack with symbols and source code you stack with symbols and source code you it's like you're in the debugger anyway it's like you're in the debugger anyway it's like you're in the debugger anyway not in fact it's just kind of a static not in fact it's just kind of a static not in fact it's just kind of a static view of your app in a debugger okay so if you can run the debugger okay so if you can run the debugger then you can open a dumb file debugger then you can open a dumb file debugger then you can open a dumb file one of your most popular uh blog series one of your most popular uh blog series one of your most popular uh blog series is the case of the unexpected whatever is the case of the unexpected whatever is the case of the unexpected whatever where you're just living your life and where you're just living your life and where you're just living your life and then a thing happens and rather than then a thing happens and rather than then a thing happens and rather than just accepting it like a normal person just accepting it like a normal person just accepting it like a normal person you immediately stop everything you get you immediately stop everything you get you immediately stop everything you get nerd sniped and then you solve it by nerd sniped and then you solve it by nerd sniped and then you solve it by usually doing some kind of low-l usually doing some kind of low-l usually doing some kind of low-l debugging maybe you could uh take a dump debugging maybe you could uh take a dump debugging maybe you could uh take a dump for us today and we could do some of for us today and we could do some of for us today and we could do some of that debugging uh on the show now this that debugging uh on the show now this that debugging uh on the show now this of course will be interesting for those of course will be interesting for those of course will be interesting for those who are listening rather than seeing who are listening rather than seeing who are listening rather than seeing this on YouTube so if you're listening this on YouTube so if you're listening this on YouTube so if you're listening to this podcast we'll try to do some to this podcast we'll try to do some to this podcast we'll try to do some audio description but you'll probably audio description but you'll probably audio description but you'll probably get a better experience if you go and get a better experience if you go and get a better experience if you go and check it out on YouTube because we're check it out on YouTube because we're check it out on YouTube because we're going to share Mark's screen for this so going to share Mark's screen for this so going to share Mark's screen for this so Scott you were talking about my case of Scott you were talking about my case of Scott you were talking about my case of The Unexplained yeah um you didn't get The Unexplained yeah um you didn't get The Unexplained yeah um you didn't get the name right which shows that you the name right which shows that you the name right which shows that you never really no not really a fan not a never really no not really a fan not a never really no not really a fan not a fan which is really disappointing fan which is really disappointing fan which is really disappointing because you missed out on some good because you missed out on some good because you missed out on some good times what did I say I don't know you said you babbled say I don't know you said you babbled something yeah okay um but one of the something yeah okay um but one of the something yeah okay um but one of the things that I always show is in uh case
-
things that I always show is in uh case things that I always show is in uh case The Unexplained is I'd get into crash The Unexplained is I'd get into crash The Unexplained is I'd get into crash dumps and I'd focus on Colonel dumps dumps and I'd focus on Colonel dumps dumps and I'd focus on Colonel dumps because because because uh in a decade or so ago blue screens on uh in a decade or so ago blue screens on uh in a decade or so ago blue screens on Windows weren't that all all that Windows weren't that all all that Windows weren't that all all that uncommon it's gotten a lot better now uncommon it's gotten a lot better now uncommon it's gotten a lot better now and I very very rarely encounter a blue and I very very rarely encounter a blue and I very very rarely encounter a blue screen or a green screen or a green screen or a green screen uh do you ever have any I I have screen uh do you ever have any I I have screen uh do you ever have any I I have only time I get green screens is when only time I get green screens is when only time I get green screens is when I'm installing uh unsigned drivers for I'm installing uh unsigned drivers for I'm installing uh unsigned drivers for weird iot stuff for weird you know weird iot stuff for weird you know weird iot stuff for weird you know Arduino things I probably shouldn't have Arduino things I probably shouldn't have Arduino things I probably shouldn't have installed a driver for I had a green installed a driver for I had a green installed a driver for I had a green screen a couple of days ago installing screen a couple of days ago installing screen a couple of days ago installing an unsigned open source butter FX butter an unsigned open source butter FX butter an unsigned open source butter FX butter FX brt FS file system driver and it was FX brt FS file system driver and it was FX brt FS file system driver and it was my fault and I removed it and it so I my fault and I removed it and it so I my fault and I removed it and it so I would not call that a that was an error would not call that a that was an error would not call that a that was an error between the chair and the keyboard between the chair and the keyboard between the chair and the keyboard self-inflicted yeah all right but in the self-inflicted yeah all right but in the self-inflicted yeah all right but in the course of normal usage of windows it's course of normal usage of windows it's course of normal usage of windows it's extremely rare these days so well even extremely rare these days so well even extremely rare these days so well even if like in the old days Graphics drivers if like in the old days Graphics drivers if like in the old days Graphics drivers would be blue screening you left and would be blue screening you left and would be blue screening you left and right and now it just flickers your right and now it just flickers your right and now it just flickers your screen and you get a little hey screen and you get a little hey screen and you get a little hey something happened but we figured it out something happened but we figured it out something happened but we figured it out yeah I don't even see that anymore it yeah I don't even see that anymore it yeah I don't even see that anymore it just flickers yeah just flickers yeah just flickers yeah but um one of the things that I would do but um one of the things that I would do but um one of the things that I would do was show collections of blue screens out was show collections of blue screens out was show collections of blue screens out in the in the in the wild um and I haven't updated this wild um and I haven't updated this wild um and I haven't updated this folder of blue screens yeah and they're folder of blue screens yeah and they're folder of blue screens yeah and they're just awesome there's waiting for baggage it's never there's waiting for baggage it's never GNA come it's never gonna come was in I GNA come it's never gonna come was in I GNA come it's never gonna come was in I was in Berlin in the Berlin airport when was in Berlin in the Berlin airport when was in Berlin in the Berlin airport when the entire uh air airline industry blue
-
the entire uh air airline industry blue the entire uh air airline industry blue screen that day yeah I guess it looked screen that day yeah I guess it looked screen that day yeah I guess it looked like this pretty much oh wow yeah yeah like this pretty much oh wow yeah yeah like this pretty much oh wow yeah yeah yeah you don't see that anymore very yeah you don't see that anymore very yeah you don't see that anymore very often but lots of airport ones I guess often but lots of airport ones I guess often but lots of airport ones I guess look this is just air airport airport look this is just air airport airport look this is just air airport airport airport before they added the friendly airport before they added the friendly airport before they added the friendly emo makes you feel better about it emo makes you feel better about it emo makes you feel better about it Furniture Furniture Furniture Store courtesy fun USB it's always USB Store courtesy fun USB it's always USB Store courtesy fun USB it's always USB yeah yeah yeah Customs airport airport airport airport Customs airport airport airport airport Customs airport airport airport airport airport wow starting to feel like it's airport wow starting to feel like it's airport wow starting to feel like it's the airport's fault at this point the airport's fault at this point the airport's fault at this point yeah uh one of my favorites yeah uh one of my favorites yeah uh one of my favorites though nice there's a Mac one oh wow I always like seeing I always one oh wow I always like seeing I always like it when the the airplane uh video like it when the the airplane uh video like it when the the airplane uh video thing on the chair in front of you thing on the chair in front of you thing on the chair in front of you reboots and then you're like what reboots and then you're like what reboots and then you're like what version of Linux is this chair running version of Linux is this chair running version of Linux is this chair running and it's like from 1997 yeah exactly and it's like from 1997 yeah exactly and it's like from 1997 yeah exactly look look here's a I like this one one look look here's a I like this one one look look here's a I like this one one that's nice but one of the things that I have nice but one of the things that I have on here is uh one of my fa favorites on here is uh one of my fa favorites on here is uh one of my fa favorites it's um the space it's um the space it's um the space shuttle uh they have a blue screen on shuttle uh they have a blue screen on shuttle uh they have a blue screen on the space shuttle and it's the recording the space shuttle and it's the recording the space shuttle and it's the recording of them talking to Mission Control I've of them talking to Mission Control I've of them talking to Mission Control I've got a blue screen here it's got white got a blue screen here it's got white got a blue screen here it's got white writing on writing on writing on it and you hear the mission control it and you hear the mission control it and you hear the mission control people say uh okay uh why don't you just people say uh okay uh why don't you just people say uh okay uh why don't you just write down what you see and we'll take a write down what you see and we'll take a write down what you see and we'll take a look and so okay I just so when this look and so okay I just so when this look and so okay I just so when this happens though I mean a lot of us feel
-
happens though I mean a lot of us feel happens though I mean a lot of us feel helpless but as developers we do not helpless but as developers we do not helpless but as developers we do not need to feel helpless when when when a a need to feel helpless when when when a a need to feel helpless when when when a a blue screen that generates a dump blue screen that generates a dump blue screen that generates a dump happens no you don't need to feel happens no you don't need to feel happens no you don't need to feel totally helpless but you you can get totally helpless but you you can get totally helpless but you you can get some idea about what went wrong and uh some idea about what went wrong and uh some idea about what went wrong and uh here um I can show you a tool that I've here um I can show you a tool that I've here um I can show you a tool that I've got that can let you practice if you got that can let you practice if you got that can let you practice if you interested in debugging blue screens and interested in debugging blue screens and interested in debugging blue screens and it's called not my fault so I've just it's called not my fault so I've just it's called not my fault so I've just searched for it and here it is I'll searched for it and here it is I'll searched for it and here it is I'll download download download it and then run it admin privileges and the reason it admin privileges and the reason it requires admin privileges is it's requires admin privileges is it's requires admin privileges is it's actually installing a device actually installing a device actually installing a device driver and that explains its name driver and that explains its name driver and that explains its name because when you have a blue screen because when you have a blue screen because when you have a blue screen crash it has to be something in kernel crash it has to be something in kernel crash it has to be something in kernel mode a driver that is causing the crash mode a driver that is causing the crash mode a driver that is causing the crash or the kernel itself and so this goey or the kernel itself and so this goey or the kernel itself and so this goey that we're looking at so just to be that we're looking at so just to be that we're looking at so just to be clear you have loaded a signed kernel clear you have loaded a signed kernel clear you have loaded a signed kernel driver that does bad stuff but it's okay driver that does bad stuff but it's okay driver that does bad stuff but it's okay because you did it as admin yes uh and because you did it as admin yes uh and because you did it as admin yes uh and you can crash you can hang the system you can crash you can hang the system you can crash you can hang the system you can also leak kernel memory okay so you can also leak kernel memory okay so you can also leak kernel memory okay so this is all aimed at uh trying to help this is all aimed at uh trying to help this is all aimed at uh trying to help you now I'm not going to like I said you now I'm not going to like I said you now I'm not going to like I said crash my system but I've got a a dump crash my system but I've got a a dump crash my system but I've got a a dump file from before and the way we're going file from before and the way we're going file from before and the way we're going to look at the dump file is using a tool to look at the dump file is using a tool to look at the dump file is using a tool called wind dbg windbag the kids called called wind dbg windbag the kids called called wind dbg windbag the kids called yeah affectionately called windbag and yeah affectionately called windbag and yeah affectionately called windbag and this is the new one this is actually this is the new one this is actually this is the new one this is actually really cool it's got a whole bunch of really cool it's got a whole bunch of really cool it's got a whole bunch of new features the the one I've been using
-
new features the the one I've been using new features the the one I've been using for 20 plus years is not as pretty as for 20 plus years is not as pretty as for 20 plus years is not as pretty as this one yeah the one that you get in this one yeah the one that you get in this one yeah the one that you get in the wdk or the SDK is the old one yeah the wdk or the SDK is the old one yeah the wdk or the SDK is the old one yeah uh there was a new one that was included uh there was a new one that was included uh there was a new one that was included with the SDK and wdk called wind windbag with the SDK and wdk called wind windbag with the SDK and wdk called wind windbag X that's evolved into just windbag and X that's evolved into just windbag and X that's evolved into just windbag and the Microsoft store yeah it's super good the Microsoft store yeah it's super good the Microsoft store yeah it's super good yeah so if we open this up here we go yeah so if we open this up here we go yeah so if we open this up here we go and then I can type control D which is and then I can type control D which is and then I can type control D which is load dump file and this is for loading load dump file and this is for loading load dump file and this is for loading kernel mode or user mode dumps mhm and kernel mode or user mode dumps mhm and kernel mode or user mode dumps mhm and these are some dumps from not my fault these are some dumps from not my fault these are some dumps from not my fault that I've collected that I've collected that I've collected okay from those options that you saw okay from those options that you saw okay from those options that you saw here's a here's a here's a highl high IRQL or high URL dump yeah um highl high IRQL or high URL dump yeah um highl high IRQL or high URL dump yeah um probably from loading your sound blaster probably from loading your sound blaster probably from loading your sound blaster card on the wrong interrupt well no this card on the wrong interrupt well no this card on the wrong interrupt well no this is yeah but this is from not my fault is yeah but this is from not my fault is yeah but this is from not my fault not from anything else so I know I know not from anything else so I know I know not from anything else so I know I know I just whenever I think irq yeah it's I just whenever I think irq yeah it's I just whenever I think irq yeah it's like did you put your card on seven or like did you put your card on seven or like did you put your card on seven or five that's that's true because they're five that's that's true because they're five that's that's true because they're interrupt requests exactly um and IRQL interrupt requests exactly um and IRQL interrupt requests exactly um and IRQL intercrops request level you've got intercrops request level you've got intercrops request level you've got there's certain rules about what colel there's certain rules about what colel there's certain rules about what colel functions you can call at different IRQL functions you can call at different IRQL functions you can call at different IRQL if you call a kernel function at the if you call a kernel function at the if you call a kernel function at the wrong rql you could get a blue screen wrong rql you could get a blue screen wrong rql you could get a blue screen which which which is IRQL related and that's what not is IRQL related and that's what not is IRQL related and that's what not that's what the my fault driver is that's what the my fault driver is that's what the my fault driver is calling causing here now you saw when I calling causing here now you saw when I calling causing here now you saw when I loaded it up it it loaded some symbols loaded it up it it loaded some symbols loaded it up it it loaded some symbols it's using the Microsoft symbol server it's using the Microsoft symbol server it's using the Microsoft symbol server to download symbols for Windows itself to download symbols for Windows itself to download symbols for Windows itself it doesn't have symbols for my fault it doesn't have symbols for my fault it doesn't have symbols for my fault though because that's my own driver okay
-
though because that's my own driver okay though because that's my own driver okay but even without the symbols we can but even without the symbols we can but even without the symbols we can understand potentially what happened understand potentially what happened understand potentially what happened here so if I type if I click on this here so if I type if I click on this here so if I type if I click on this analyze DV that right is an analyze DV that right is an analyze DV that right is an automated cisticola Trace at on the processor cisticola Trace at on the processor where the bsod function was called and where the bsod function was called and where the bsod function was called and if we look at this stack Trace you can if we look at this stack Trace you can if we look at this stack Trace you can see NTI trap so that's a a fault and see NTI trap so that's a a fault and see NTI trap so that's a a fault and then you can see the next frame up is then you can see the next frame up is then you can see the next frame up is the my fault driver so into the my fault the my fault driver so into the my fault the my fault driver so into the my fault driver we ended up crashing okay at that driver we ended up crashing okay at that driver we ended up crashing okay at that location so what are location so what are location so what are the the the the hex values there's five the the the the hex values there's five the the the the hex values there's five of them there and then a t and of them there and then a t and of them there and then a t and parenthesis to the left yeah so this is parenthesis to the left yeah so this is parenthesis to the left yeah so this is the the the stack frame mhm address this is the stack frame mhm address this is the stack frame mhm address this is the return address at that stack frame and return address at that stack frame and return address at that stack frame and here are parameters in the here are parameters in the here are parameters in the stack the first three of them those are stack the first three of them those are stack the first three of them those are the addresses to the parameters yeah the addresses to the parameters yeah the addresses to the parameters yeah okay and we'd have to know what the okay and we'd have to know what the okay and we'd have to know what the function that's being called you have to function that's being called you have to function that's being called you have to know what the shape of the function is know what the shape of the function is know what the shape of the function is and you know to figure out to go and and you know to figure out to go and and you know to figure out to go and decode those yeah but here's the actual decode those yeah but here's the actual decode those yeah but here's the actual line that crashed so it's the reference line that crashed so it's the reference line that crashed so it's the reference of this indirect reference of that that
-
of this indirect reference of that that of this indirect reference of that that caused the that and that is a caused the that and that is a caused the that and that is a disassembly so that's an x64 disassembly disassembly so that's an x64 disassembly disassembly so that's an x64 disassembly if I was on an arm machine would it be if I was on an arm machine would it be if I was on an arm machine would it be arm assembly this yeah this is actually arm assembly this yeah this is actually arm assembly this yeah this is actually 32-bit uh this is that old from an XP 32-bit uh this is that old from an XP 32-bit uh this is that old from an XP machine oh because this is you pulled machine oh because this is you pulled machine oh because this is you pulled out a 2005 I was wondering about the out a 2005 I was wondering about the out a 2005 I was wondering about the date on that but I saw the eax and I was date on that but I saw the eax and I was date on that but I saw the eax and I was like okay what would this be if it was like okay what would this be if it was like okay what would this be if it was 64bit so it's 32-bit you can see x 86 64bit so it's 32-bit you can see x 86 64bit so it's 32-bit you can see x 86 Window XP yeah there it is Window XP yeah there it is Window XP yeah there it is okay uh but then what you would do like okay uh but then what you would do like okay uh but then what you would do like you can say uh that it's pointing at you can say uh that it's pointing at you can say uh that it's pointing at this is the this is the this is the culprit did it just did it did it do culprit did it just did it did it do culprit did it just did it did it do like heuristics or did you just go back like heuristics or did you just go back like heuristics or did you just go back frame yeah Heretics okay you know oh frame yeah Heretics okay you know oh frame yeah Heretics okay you know oh here here's here here's here here's thetics uh let's take a look at this thetics uh let's take a look at this thetics uh let's take a look at this Frame oh look it's it's n that's that's Frame oh look it's it's n that's that's Frame oh look it's it's n that's that's the that's Windows it can't be Windows the that's Windows it can't be Windows the that's Windows it can't be Windows oh here look something that's not oh here look something that's not oh here look something that's not Windows probably that's very heris Windows probably that's very heris Windows probably that's very heris yeah staff R minus one yeah and then you yeah staff R minus one yeah and then you yeah staff R minus one yeah and then you can see uh you know information mhm can see uh you know information mhm can see uh you know information mhm crash test driver so you can see this is crash test driver so you can see this is crash test driver so you can see this is uh so you don't have the symbols but if uh so you don't have the symbols but if uh so you don't have the symbols but if you did have the symbols for my fault you did have the symbols for my fault you did have the symbols for my fault you would be able to see those you would be able to see those you would be able to see those parameters what they were yeah and parameters what they were yeah and parameters what they were yeah and exactly what function it would be like exactly what function it would be like exactly what function it would be like debugging you know live debugging you know live debugging you know live right and that's a thing that I think right and that's a thing that I think right and that's a thing that I think people don't realize a lot of folks that people don't realize a lot of folks that people don't realize a lot of folks that are you know know that windbag exists are you know know that windbag exists are you know know that windbag exists but may haven't spent time with it don't but may haven't spent time with it don't but may haven't spent time with it don't realize that they could load these dumps realize that they could load these dumps realize that they could load these dumps into
-
into into a visual studio like environment and see a visual studio like environment and see a visual studio like environment and see a moment in time where they're kind of a moment in time where they're kind of a moment in time where they're kind of the dump is preserved in Amber like a the dump is preserved in Amber like a the dump is preserved in Amber like a mosquito in Amber from Jurassic Park and mosquito in Amber from Jurassic Park and mosquito in Amber from Jurassic Park and they're like looking at it at at a they're like looking at it at at a they're like looking at it at at a moment and then of course you could get moment and then of course you could get moment and then of course you could get into even more cool stuff like time into even more cool stuff like time into even more cool stuff like time travel debugging travel debugging travel debugging Y and then there's user mode Y and then there's user mode Y and then there's user mode dumps more common more common and you dumps more common more common and you dumps more common more common and you debug those in your favorite debugger debug those in your favorite debugger debug those in your favorite debugger like Visual Studio or you can use wind like Visual Studio or you can use wind like Visual Studio or you can use wind bag to debug those too mhm and now I'm bag to debug those too mhm and now I'm bag to debug those too mhm and now I'm going to show you a cool tool related to going to show you a cool tool related to going to show you a cool tool related to dumps okay that can help you capture dumps okay that can help you capture dumps okay that can help you capture your app when it's in states that you your app when it's in states that you your app when it's in states that you want to go look at like high CPU usage want to go look at like high CPU usage want to go look at like high CPU usage or high memory usage if it's got a leak or high memory usage if it's got a leak or high memory usage if it's got a leak or if it's spiking every now and then or if it's spiking every now and then or if it's spiking every now and then you want to catch it when it's spiking you want to catch it when it's spiking you want to catch it when it's spiking to understand what's causing it to spike to understand what's causing it to spike to understand what's causing it to spike in CPU usage or it has a throws a in CPU usage or it has a throws a in CPU usage or it has a throws a certain exception you want to capture a certain exception you want to capture a certain exception you want to capture a dump and the tool we're going to use for dump and the tool we're going to use for dump and the tool we're going to use for that is called proc dump it's also on that is called proc dump it's also on that is called proc dump it's also on CIS inter internals so if you just go to CIS inter internals so if you just go to CIS inter internals so if you just go to back to back to back to internals how is proc dump different internals how is proc dump different internals how is proc dump different than me going into task manager than me going into task manager than me going into task manager right-clicking on a process and saying right-clicking on a process and saying right-clicking on a process and saying create dump so you that is you know create dump so you that is you know create dump so you that is you know manually generating the dump on demand manually generating the dump on demand manually generating the dump on demand but what proc dump does is lets you but what proc dump does is lets you but what proc dump does is lets you monitor the process to capture a dump um monitor the process to capture a dump um monitor the process to capture a dump um at a specific point in time I've got it at a specific point in time I've got it at a specific point in time I've got it installed here M and it comes with a installed here M and it comes with a installed here M and it comes with a slew of command line options so slew of command line options so slew of command line options so conditional break
-
conditional break conditional break points so here like this- C lets you set points so here like this- C lets you set points so here like this- C lets you set a trigger which is when the process that a trigger which is when the process that a trigger which is when the process that um that I point proc dump at gets to um that I point proc dump at gets to um that I point proc dump at gets to this CPU usage then generate a this CPU usage then generate a this CPU usage then generate a dump dump dump and you can specify how long it needs to and you can specify how long it needs to and you can specify how long it needs to be at that CP be at that CP be at that CP usage you can specify what type of dump usage you can specify what type of dump usage you can specify what type of dump you want it to you want it to you want it to collect um you can specify the format of collect um you can specify the format of collect um you can specify the format of the dump file where the dump file goes the dump file where the dump file goes the dump file where the dump file goes the number you can specify collect a the number you can specify collect a the number you can specify collect a number of dump files you can specify number of dump files you can specify number of dump files you can specify that you want when CP usage drops below that you want when CP usage drops below that you want when CP usage drops below a certain level um I mean just it comes a certain level um I mean just it comes a certain level um I mean just it comes with lot when the process is hung with lot when the process is hung with lot when the process is hung um the joke used to be this is that I um the joke used to be this is that I um the joke used to be this is that I put this in specifically for Outlook put this in specifically for Outlook put this in specifically for Outlook ouch um and actually I did because ouch um and actually I did because ouch um and actually I did because Outlook uh support team asked me to put Outlook uh support team asked me to put Outlook uh support team asked me to put it in for for them oh that's cool but it in for for them oh that's cool but it in for for them oh that's cool but this is much more deterministic than this is much more deterministic than this is much more deterministic than just trying to right click and hit just trying to right click and hit just trying to right click and hit create dump whenever you feel like so create dump whenever you feel like so create dump whenever you feel like so really right clicking and creating a really right clicking and creating a really right clicking and creating a dump from task manager is really only dump from task manager is really only dump from task manager is really only good for stuff that's clearly visibly good for stuff that's clearly visibly good for stuff that's clearly visibly hung but this is far far easier and far hung but this is far far easier and far hung but this is far far easier and far cleaner way to do things so let's go cleaner way to do things so let's go cleaner way to do things so let's go generate a dump just to show see this generate a dump just to show see this generate a dump just to show see this thing in action so if I say- C and I say thing in action so if I say- C and I say thing in action so if I say- C and I say like 10 that means when CP usage of the like 10 that means when CP usage of the like 10 that means when CP usage of the process exceeds 10% of the CPU of the process exceeds 10% of the CPU of the process exceeds 10% of the CPU of the system then generate a dump and I'm I'm system then generate a dump and I'm I'm system then generate a dump and I'm I'm going to going to going to actually run a tool called CPU
-
actually run a tool called CPU actually run a tool called CPU stress which is also a CIS internals stress which is also a CIS internals stress which is also a CIS internals tool this CPU stress tool is designed tool this CPU stress tool is designed tool this CPU stress tool is designed just to do things like consume CPU and just to do things like consume CPU and just to do things like consume CPU and so if I do proc dump dt10 CPU stress by default you can see that when stress by default you can see that when the CPU threshold goes above 10% of the the CPU threshold goes above 10% of the the CPU threshold goes above 10% of the system for 10 seconds then it's going to system for 10 seconds then it's going to system for 10 seconds then it's going to Jer a dump here's the format of the dump Jer a dump here's the format of the dump Jer a dump here's the format of the dump name here's where it's going to go into name here's where it's going to go into name here's where it's going to go into the tools the tools the tools directory and what we're going to do now directory and what we're going to do now directory and what we're going to do now is cause is cause is cause these create a bunch of threads in CPU these create a bunch of threads in CPU these create a bunch of threads in CPU stress M select them activate stress M select them activate stress M select them activate them raise direct and then you can see oh that's cool it's right at the see oh that's cool it's right at the thresold right now so it's dropping thresold right now so it's dropping thresold right now so it's dropping below every now and then so if I create below every now and then so if I create below every now and then so if I create another another another one and set it to activate we probably stay above let me activate we probably stay above let me raise the activity raise the activity raise the activity level you're trying to your computer's level you're trying to your computer's level you're trying to your computer's too good to make this thing get stressed too good to make this thing get stressed too good to make this thing get stressed out because you need to be above there out because you need to be above there out because you need to be above there for 10 seconds oh look we dropped below for 10 seconds oh look we dropped below for 10 seconds oh look we dropped below let me do another one work harder yeah okay so it's thinking and yeah okay so it's thinking and it's and boom there we go it's and boom there we go it's and boom there we go dump dump dump initiated it sounds very high-tech
-
initiated it sounds very high-tech initiated it sounds very high-tech doesn't it it doesn't it it doesn't it it does and now we can go back to windbg does and now we can go back to windbg does and now we can go back to windbg windbag and open that dump now you could windbag and open that dump now you could windbag and open that dump now you could also theoretically open this in just also theoretically open this in just also theoretically open this in just visual studio right yes good visual studio right yes good visual studio right yes good y oops and you can see here the thread active and you can see here the thread active thread here thread here thread here stack there CPU stress all over I think stack there CPU stress all over I think stack there CPU stress all over I think people get intimidated by these I know people get intimidated by these I know people get intimidated by these I know that this looks just like the Matrix to that this looks just like the Matrix to that this looks just like the Matrix to you and you just look at it you can you and you just look at it you can you and you just look at it you can immediately like identify stuff like you immediately like identify stuff like you immediately like identify stuff like you can you are fluent in this but I think can you are fluent in this but I think can you are fluent in this but I think for a lot of application developers they for a lot of application developers they for a lot of application developers they can follow visual studios's kind of can follow visual studios's kind of can follow visual studios's kind of visual debugger and spend some time in visual debugger and spend some time in visual debugger and spend some time in the stack in the stack uh you know the stack in the stack uh you know the stack in the stack uh you know looking at the stack but I don't think I looking at the stack but I don't think I looking at the stack but I don't think I I think that you as a fluent debugger I think that you as a fluent debugger I think that you as a fluent debugger expert maybe underestimate how few expert maybe underestimate how few expert maybe underestimate how few people spend time in this kind of place people spend time in this kind of place people spend time in this kind of place but I think this is a good place to but I think this is a good place to but I think this is a good place to spend time yeah it is um I mean it's a spend time yeah it is um I mean it's a spend time yeah it is um I mean it's a like I said you're handicapping yourself like I said you're handicapping yourself like I said you're handicapping yourself if you're not familiar with at least the if you're not familiar with at least the if you're not familiar with at least the basics of this yeah now I saw that they basics of this yeah now I saw that they basics of this yeah now I saw that they it just went to the the symbol debugger it just went to the the symbol debugger it just went to the the symbol debugger like the public CDN for symbols yeah and like the public CDN for symbols yeah and like the public CDN for symbols yeah and brought symbols down those are going to brought symbols down those are going to brought symbols down those are going to be stored in your symbols cache now this cache now this I mean you can see here by the way which I mean you can see here by the way which I mean you can see here by the way which proc dump inserted into the dump the
-
proc dump inserted into the dump the proc dump inserted into the dump the reason for the dump reason for the dump reason for the dump interesting is that a proc dump that interesting is that a proc dump that interesting is that a proc dump that seems like a uniquely proc dump thing I seems like a uniquely proc dump thing I seems like a uniquely proc dump thing I think people would be spoiled to have think people would be spoiled to have think people would be spoiled to have that otherwise uh no it's not I mean that otherwise uh no it's not I mean that otherwise uh no it's not I mean there's a when you proc dump is calling there's a when you proc dump is calling there's a when you proc dump is calling Windows apis to generate the dump and Windows apis to generate the dump and Windows apis to generate the dump and that API supports inserting a comment that API supports inserting a comment that API supports inserting a comment into the dump so proc dump inserts a into the dump so proc dump inserts a into the dump so proc dump inserts a comment about its trigger comment about its trigger comment about its trigger and you can see here it'll tell you the and you can see here it'll tell you the and you can see here it'll tell you the hottest thread so if this is the thread hottest thread so if this is the thread hottest thread so if this is the thread that pushed you over the limit for the that pushed you over the limit for the that pushed you over the limit for the trigger you can now go look at that trigger you can now go look at that trigger you can now go look at that thread in the thread in the thread in the debugger actually do this do this take debugger actually do this do this take debugger actually do this do this take the dump that you just had the CPU the dump that you just had the CPU the dump that you just had the CPU stress one and what does visual studio stress one and what does visual studio stress one and what does visual studio look like versus wind bag and why would look like versus wind bag and why would look like versus wind bag and why would I use one over the other all right let's I use one over the other all right let's I use one over the other all right let's see if we and then we'll then we'll see if we and then we'll then we'll see if we and then we'll then we'll close okay so what if I took that same dump okay so what if I took that same dump file that's wait wait wait wait wait how file that's wait wait wait wait wait how file that's wait wait wait wait wait how do I you literally just open it yeah yep watching you type slow is kind of yep watching you type slow is kind of like doing screen sharing with my dad like doing screen sharing with my dad like doing screen sharing with my dad helping him debug his problems with the helping him debug his problems with the helping him debug his problems with the computer you know what I'm like isn't that in the clipboard I'm like isn't that in the clipboard can't you just control V your way to can't you just control V your way to can't you just control V your way to Glory I'm like watching him type c col
-
Glory I'm like watching him type c col Glory I'm like watching him type c col backlash it's good that you have been so backlash it's good that you have been so backlash it's good that you have been so successful in your career such a slow successful in your career such a slow successful in your career such a slow typist I'm actually pretty typist I'm actually pretty typist I'm actually pretty fast is this a playback in [Laughter] [Laughter] slow-mo this is a nice this is a nice slow-mo this is a nice this is a nice slow-mo this is a nice this is a nice screen this is a track dump file summary screen this is a track dump file summary screen this is a track dump file summary you look at that I don't see the comment you look at that I don't see the comment you look at that I don't see the comment though which is lame that's interesting though which is lame that's interesting though which is lame that's interesting that feels like a opportunity us there that feels like a opportunity us there that feels like a opportunity us there you're absolutely right it should you're absolutely right it should you're absolutely right it should be analis to tell me what happened I be analis to tell me what happened I be analis to tell me what happened I don't think co-pilot's gonna work on don't think co-pilot's gonna work on don't think co-pilot's gonna work on that one dude I don't think I don't that one dude I don't think I don't that one dude I don't think I don't think it's to use mini dumps right think it's to use mini dumps right think it's to use mini dumps right now nah it's not gonna see that yeah try now nah it's not gonna see that yeah try now nah it's not gonna see that yeah try hitting run diagnostic analysis though there copilot for windbag though I think there copilot for windbag though I think people have been talking man debugging people have been talking man debugging people have been talking man debugging is not available for this oh because is not available for this oh because is not available for this oh because it's not a managed app yeah it's not a it's not a managed app yeah it's not a it's not a managed app yeah it's not a managed app yeah but you can go debug managed app yeah but you can go debug managed app yeah but you can go debug with Native only yeah all right there we go this was yeah all right there we go this was unresponsive andot as co-pilot that's cool I didn't know it I co-pilot that's cool I didn't know it I forgot that they put that in there cool this are happens because it there cool this are happens because it was became irresponsive and terminated was became irresponsive and terminated was became irresponsive and terminated by the operating system in fact not by the operating system in fact not by the operating system in fact not because it was terminated because it was terminated because it was terminated by but it couldn't know that it just by but it couldn't know that it just by but it couldn't know that it just knows it got slapped by somebody which
-
knows it got slapped by somebody which knows it got slapped by somebody which injected this yeah exactly you you so injected this yeah exactly you you so injected this yeah exactly you you so you injected the Hang to shut it down you injected the Hang to shut it down you injected the Hang to shut it down yeah that's cool all right do you want yeah that's cool all right do you want yeah that's cool all right do you want to back up and do this again I think to back up and do this again I think to back up and do this again I think this is good as it is I don't feel any this is good as it is I don't feel any this is good as it is I don't feel any you making F of me for typing slow oh you making F of me for typing slow oh you making F of me for typing slow oh that's hilarious people love that stuff that's hilarious people love that stuff that's hilarious people love that stuff that's going to meet more that's going to meet more that's going to meet more subscribers okay unless you're offended I am offended but unless you're offended I am offended but you know whatever it takes to drive you know whatever it takes to drive you know whatever it takes to drive [Laughter] [Laughter] [Laughter] views do me a favor go back over into views do me a favor go back over into views do me a favor go back over into the visual studio again and hit view dis the visual studio again and hit view dis the visual studio again and hit view dis assembly I'm just wondering like why assembly I'm just wondering like why assembly I'm just wondering like why would I pick vs versus windbag because I would I pick vs versus windbag because I would I pick vs versus windbag because I feel like there's feel like there's feel like there's things yeah right there there's things things yeah right there there's things things yeah right there there's things that are different in here that are that that are different in here that are that that are different in here that are that are that are better but I feel like I are that are better but I feel like I are that are better but I feel like I would end up using both of the tools would end up using both of the tools would end up using both of the tools yeah and bounce between yeah and bounce between yeah and bounce between them uh I mean it's whatever you're them uh I mean it's whatever you're them uh I mean it's whatever you're comfortable with you're just giving me nothing what with you're just giving me nothing what you're just giving me you're just giving me you're just giving me nothing yeah you can't continue because nothing yeah you can't continue because nothing yeah you can't continue because you're you're Frozen in Amber but look you're you're Frozen in Amber but look you're you're Frozen in Amber but look it thinks you it thinks you it thinks you can well it's yeah well it's it's giving can well it's yeah well it's it's giving can well it's yeah well it's it's giving yeah it's giving you the illusion that yeah it's giving you the illusion that yeah it's giving you the illusion that you're in the middle of a an active you're in the middle of a an active you're in the middle of a an active debug session which is kind of cool debug session which is kind of cool debug session which is kind of cool illusion oh look at this analyze illusion oh look at this analyze illusion oh look at this analyze oh unique thread yeah which is oh unique thread yeah which is oh unique thread yeah which is true look at that yeah this is a really
-
true look at that yeah this is a really true look at that yeah this is a really this is really good yeah here's the main this is really good yeah here's the main this is really good yeah here's the main thread and then hit show external thread and then hit show external thread and then hit show external code at the bottom and the call code at the bottom and the call code at the bottom and the call stack where's that down down down a stack where's that down down down a stack where's that down down down a little bit more what show external code little bit more what show external code little bit more what show external code oh it's a button there you go oh it's a button there you go oh it's a button there you go so now you can see CP stress yep and so now you can see CP stress yep and so now you can see CP stress yep and jump boom there it is all right so then you said other than is all right so then you said other than John Robbins book which is quite a bit John Robbins book which is quite a bit John Robbins book which is quite a bit older um well there could be more recent older um well there could be more recent older um well there could be more recent books it's just I haven't been paying books it's just I haven't been paying books it's just I haven't been paying attention to this space yeah yeah attention to this space yeah yeah attention to this space yeah yeah yeah learn yeah learn yeah learn windbag oh getting started with look at windbag oh getting started with look at windbag oh getting started with look at that Microsoft learn getting started that Microsoft learn getting started that Microsoft learn getting started with windbag in user mode open notepad with windbag in user mode open notepad with windbag in user mode open notepad oh they actually have you debugging it oh they actually have you debugging it oh they actually have you debugging it in notepad like debugging notepad rather in notepad like debugging notepad rather in notepad like debugging notepad rather so there's a whole tutorial over here to so there's a whole tutorial over here to so there's a whole tutorial over here to go and do that inside of Microsoft learn go and do that inside of Microsoft learn go and do that inside of Microsoft learn so you can go into getting started with so you can go into getting started with so you can go into getting started with Windows debugging they have both user Windows debugging they have both user Windows debugging they have both user mode and kernel mode they have a whole mode and kernel mode they have a whole mode and kernel mode they have a whole thing about choosing you know 32-bit thing about choosing you know 32-bit thing about choosing you know 32-bit versus 64bit tools and they walk through versus 64bit tools and they walk through versus 64bit tools and they walk through uh an example where you actually stop uh an example where you actually stop uh an example where you actually stop notepad look inside of notepad and then notepad look inside of notepad and then notepad look inside of notepad and then run around and uh see what's going on run around and uh see what's going on run around and uh see what's going on I didn't know that what a great thing I didn't know that what a great thing I didn't know that what a great thing that's up at Microsoft learn uh getting that's up at Microsoft learn uh getting that's up at Microsoft learn uh getting started with started with started with windbag cool well thank you so much for windbag cool well thank you so much for windbag cool well thank you so much for giving me that overview of windbag I got giving me that overview of windbag I got giving me that overview of windbag I got to go back and re familiarize myself
-
to go back and re familiarize myself to go back and re familiarize myself with the state-ofthe-art in both Colonel with the state-ofthe-art in both Colonel with the state-ofthe-art in both Colonel and user have you ever used wind oh yeah and user have you ever used wind oh yeah and user have you ever used wind oh yeah I was trying to play the foil so that I was trying to play the foil so that I was trying to play the foil so that you would you would feel smart and help you would you would feel smart and help you would you would feel smart and help me you never have D you dude I have I me you never have D you dude I have I me you never have D you dude I have I are you serious come on I'm driving are you serious come on I'm driving are you serious come on I'm driving stick shift stick shift stick shift constantly when's the last time uh constantly when's the last time uh constantly when's the last time uh uh it was the USB driver it was a um it uh it was the USB driver it was a um it uh it was the USB driver it was a um it was a Chinese uh noname Arduino thing was a Chinese uh noname Arduino thing was a Chinese uh noname Arduino thing that I was trying to debug this was a that I was trying to debug this was a that I was trying to debug this was a week ago or whatever no this was a week ago or whatever no this was a week ago or whatever no this was a couple months ago uh and I was trying couple months ago uh and I was trying couple months ago uh and I was trying and I was trying to figure out what's and I was trying to figure out what's and I was trying to figure out what's going on oh I almost used it with Tik going on oh I almost used it with Tik going on oh I almost used it with Tik Tock Tik Tock live studio I wrote a blog Tock Tik Tock live studio I wrote a blog Tock Tik Tock live studio I wrote a blog post about this couple of a couple maybe post about this couple of a couple maybe post about this couple of a couple maybe a week and a half ago turns out that Tik a week and a half ago turns out that Tik a week and a half ago turns out that Tik Tok talk installs a uh device on a Tok talk installs a uh device on a Tok talk installs a uh device on a virtual camera and I was trying to virtual camera and I was trying to virtual camera and I was trying to figure out if it was like their own figure out if it was like their own figure out if it was like their own driver file or not uh it's called LV uh driver file or not uh it's called LV uh driver file or not uh it's called LV uh lsv cam but it's a user mode thing not a lsv cam but it's a user mode thing not a lsv cam but it's a user mode thing not a not a kernel mode thing but uh spent a not a kernel mode thing but uh spent a not a kernel mode thing but uh spent a little time in there and ended up just little time in there and ended up just little time in there and ended up just finding out what registry key they were finding out what registry key they were finding out what registry key they were using and deleted it but um so I was using and deleted it but um so I was using and deleted it but um so I was close I was close to doing some close I was close to doing some close I was close to doing some debugging but didn't didn't need it I debugging but didn't didn't need it I debugging but didn't didn't need it I did use all the sis in tools though to did use all the sis in tools though to did use all the sis in tools though to save myself so you did nice I did well save myself so you did nice I did well save myself so you did nice I did well my most favorite one is the uh is it my most favorite one is the uh is it my most favorite one is the uh is it Zoom it well I love I do love zoomit but Zoom it well I love I do love zoomit but Zoom it well I love I do love zoomit but but I keep I I used to think about but I keep I I used to think about but I keep I I used to think about filemon regmon procmon but isn't there
-
filemon regmon procmon but isn't there filemon regmon procmon but isn't there like a unified supermon now well proon like a unified supermon now well proon like a unified supermon now well proon is f yeah yeah I I'm I'm so old school is f yeah yeah I I'm I'm so old school is f yeah yeah I I'm I'm so old school that I would open individual mons yeah that I would open individual mons yeah that I would open individual mons yeah rather than the supermon with his rather than the supermon with his rather than the supermon with his procmon but that's my most favorite procmon but that's my most favorite procmon but that's my most favorite thing in Windows is to be able to go and thing in Windows is to be able to go and thing in Windows is to be able to go and see what process is writing to the see what process is writing to the see what process is writing to the registry and why and then do all the registry and why and then do all the registry and why and then do all the filters and get them to highlight and go filters and get them to highlight and go filters and get them to highlight and go that's the one yeah so that that's the that's the one yeah so that that's the that's the one yeah so that that's the one that saved me in this instance more one that saved me in this instance more one that saved me in this instance more than win yeah when in there's a saying than win yeah when in there's a saying than win yeah when in there's a saying when in doubt run when in doubt run when in doubt run procmon that is true and that's another procmon that is true and that's another procmon that is true and that's another you know that I'll leave people with you know that I'll leave people with you know that I'll leave people with that with that reminder that there's that with that reminder that there's that with that reminder that there's nothing being hidden from you there is nothing being hidden from you there is nothing being hidden from you there is always a feeling that the operating always a feeling that the operating always a feeling that the operating system is a big black box and I can't system is a big black box and I can't system is a big black box and I can't get in but that is an illusion that is a get in but that is an illusion that is a get in but that is an illusion that is a lie if you want to know what's going on lie if you want to know what's going on lie if you want to know what's going on go one level below your comfort zone go one level below your comfort zone go one level below your comfort zone we've talked about this before everyone we've talked about this before everyone we've talked about this before everyone gets complacent you know if you're a gets complacent you know if you're a gets complacent you know if you're a webd you get comfortable at asp.net and webd you get comfortable at asp.net and webd you get comfortable at asp.net and you forget that processes exist and you forget that processes exist and you forget that processes exist and ports get open and you know all that and ports get open and you know all that and ports get open and you know all that and then when you get to the user mode you then when you get to the user mode you then when you get to the user mode you forget that the kernel is a thing so I forget that the kernel is a thing so I forget that the kernel is a thing so I always try to go one level below my always try to go one level below my always try to go one level below my comfort zone just to like get in the comfort zone just to like get in the comfort zone just to like get in the deep end of the pool to mix deep end of the pool to mix deep end of the pool to mix metaphors nice co thank you sir metaphors nice co thank you sir metaphors nice co thank you sir appreciate your work over over many appreciate your work over over many appreciate your work over over many years of of taking dumps we'll see you again next week we'll see you again next week [Music]
Summary
The main theme is the importance and underutilization of understanding process dumps among application developers, specifically on Windows. Key subjects include "process dumps" (DMP files) and their connection to debugging, contrasted with a humorous, non-technical interpretation of "take a dump." The practical takeaway is that improving developers' ability to analyze dump files is a valuable, yet surprisingly rare, skill that can significantly enhance their debugging capabilities.