3 ms·
I agree! For Windows, getting symbols was trivial: you just pointed your debugger to the publicly-available symbol server[1]. You can see this attitude continui
by alambert 9y ago
I agree! For Windows, getting symbols was trivial: you just pointed your debugger to the publicly-available symbol server[1]. You can see this attitude continuing in [2]: a beginner is warned away from using a debugger to understand the kernel behavior.
[1] https://msdn.microsoft.com/en-us/library/windows/desktop/ee416588(v=vs.85).aspx#using_the_microsoft_symbol_server https://msdn.microsoft.com/en-us/library/windows/desktop/ee4...
[2] https://lists.kernelnewbies.org/pipermail/kernelnewbies/2016-August/016692.html https://lists.kernelnewbies.org/pipermail/kernelnewbies/2016...
- bcantrill 9y agoWow, that second example is very telling. For whatever it's worth, before we started work on DTrace (ca. 2001), we prioritized a project to add not just symbol information but also debugging information to production kernels. This project -- the Compact C Type Format (CTF)[1][2] -- has proved essential many times over in the years since (and is a major reason why we can consider kernel debugging a part of the core system functionality). It is clear that a project like CTF is unlikely to even be understood let alone prioritized by those displaying such a dismissive attitude towards debugging. [1] http://illumos.org/man/4/ctf http://illumos.org/man/4/ctf [2] http://www.smnd.sk/lovasko/paper.pdf http://www.smnd.sk/lovasko/paper.pdf
- harry8 9y agoBrian, I love your work but seriously. You've mispelled "read" as "understood" there and to write it off as a dismissive attitude toward debugging in toto is not something you should lower yourself to pretend to believe. Deep breath. DTrace is awesome, Oracle is not. Yeah my kissing may not be up to scratch either... ;-)
- bcantrill 9y agoThe attitude towards debugging is dismissive -- and I'm not the only one to have drawn that conclusion. Indeed, it's the original author of this article who came across that and drew that inference -- one that I (obviously) share. To flip this around: do you think that the work outlined in the original article is work that should be expected of anyone wishing to debug the kernel?
- harry8 9y agoI think there is room for reasonable people to disagree reasonably about most issues. Flip that around? Linux is a long way from being the buggiest OS kernel I've ever used, how about you? Perhaps they've found and fixed some bugs? Perhaps they've prevented some from being written? Perhaps their approach is something that can be disagreed with, even strongly so, on the grounds of being less than optimal without suggesting that it has zero merit and by extension its proponents are somehow to be considered with derision? The inference that anyone hacking any OS kernel is too stupid to understand a differing idea is probably not necessary and unlikely to be justified in my humble opinion. You may of course reasonably disagree and maybe one of us did understand something the other did not on the point? Anyway this is now dull. But don't be less opinionated, that would be the wrong response!
- Dylan16807 9y ago> Perhaps their approach is something that can be disagreed with, even strongly so, on the grounds of being less than optimal without suggesting that it has zero merit If a yes or no attitude results in fewer bugfixes, all else equal, then that attitude does have exactly zero merit.
- makomk 9y agoErrm, the email at https://lists.kernelnewbies.org/pipermail/kernelnewbies/2016-August/016692.html https://lists.kernelnewbies.org/pipermail/kernelnewbies/2016... seems to be warning him against using an unusual set of custom compiler optimisation options that none of the kernel developers have ever tested with rather than against using a debugger full stop.
- alambert 9y agoThe beginner wants to disable optimizations, so he can better understand the kernel behavior by stepping through it in a debugger; he's told this isn't possible. Compare this with the availability of checked builds of Windows components, which support debugging by disabling optimizations: https://docs.microsoft.com/en-us/windows-hardware/drivers/devtest/checked-and-free-build-differences https://docs.microsoft.com/en-us/windows-hardware/drivers/de...
- vbitz 9y agoChecked builds are no longer distributed. Source: https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/65e77ce8-2d3f-4266-bba1-0bf2e70a6d86/wdk-1703-15063-does-not-include-a-debug-directory-with-checked-builds-of-ntoskrnl-and-hal?forum=wdk&prof=required https://social.msdn.microsoft.com/Forums/windowsdesktop/en-U...
- yuhong 9y agoI think checked builds did not disable optimizations, though it did include useful stuff.