My BSOD
My BSOD
Hi All,
Just wanted to share my nice new BSOD with you! This is after a deliberate page fault at 0xBFFFFFFF (just before my kernel). It takes a Windows user to get excited about this kind of thing!
I think it's more useful than the M$ attempt!
Cheers,
Adam
Just wanted to share my nice new BSOD with you! This is after a deliberate page fault at 0xBFFFFFFF (just before my kernel). It takes a Windows user to get excited about this kind of thing!
I think it's more useful than the M$ attempt!
Cheers,
Adam
-
- Member
- Posts: 2566
- Joined: Sun Jan 14, 2007 9:15 pm
- Libera.chat IRC: miselin
- Location: Sydney, Australia (I come from a land down under!)
- Contact:
I think the best BSODs are the ones that actually tell you what on earth went wrong, instead of giving some cryptic message...
Also, why does everyone default to BSODs? Why not a PSOD? Or even a RSOD?
Also, why does everyone default to BSODs? Why not a PSOD? Or even a RSOD?
I like your thinking, I'm inspired now...Alboin wrote: Grasshopper, you should have a configurable BSOD. So I can have a RSOD and a GSOD. Then, and only then, will your xSOD be truly awesome.
many times BSOD code actually fails. This isn't just with hardware errors though, what about a kernel/interrupt stack overflow? you would triple fault in an instant...
another thing, what if your page tables or GDT get corrupted? then you make a write to memory and your crashed...
I think a trully fatal BSOD should load a backup GDT(already written in memory and it should be at a constant address that you shouldn't accidentally overwrite..
then you do something load GS with a flat segment, you should then save all registers in some memory area(including segment registers other than GS) and finally, load CS, DS and such and display dump data..
note this is all theoretical
another thing, what if your page tables or GDT get corrupted? then you make a write to memory and your crashed...
I think a trully fatal BSOD should load a backup GDT(already written in memory and it should be at a constant address that you shouldn't accidentally overwrite..
then you do something load GS with a flat segment, you should then save all registers in some memory area(including segment registers other than GS) and finally, load CS, DS and such and display dump data..
note this is all theoretical
I've had some test BSOD lying in PortixOS, but it was "Black Screen of Death". Real mode hasnt much exceptions, no page fault, etc. just a divide overflow, bound errors etc. So I am having a NSOD - No Screen of Death - INT 00, generated by CPU, points at HLT, INT 06, points at HLT too.
My web site: http://inflater.wz.cz (Slovak)
Derrick operating system: http://derrick.xf.cz (Slovak and English )
Derrick operating system: http://derrick.xf.cz (Slovak and English )
Hi,
Cheers,
Brendan
I really don't see how people can debug their software without CR1 being displayed in the crash report...Andrew275 wrote:Here's my RSOD, nothing too fancy. I try to make it somewhat friendly (aside from all the debugging info of course).
Cheers,
Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.