4 ms·
BTW it's not obvious that an OS is harder to debug. A logical error in an accounting package can probably often only be found by a checking tool that has the e
by yosefk 5y ago
BTW it's not obvious that an OS is harder to debug.
A logical error in an accounting package can probably often only be found by a checking tool that has the equivalent of all the functionality of the package under test.
OS bugs are more likely to have the side effect of violating language invariants (which eg KASan, UBSan and KCSan often detect), or violating protocols (so you can stress-test eg a TCP implementation and detect the bug), or it can violate API invariants (so you can use some API-level stress test like stress-ng to detect the bug.)
All of these tools are much less complex than the software under test. I think the warlord of Wu made the comment about debugging before massive automated testing, compiler instrumentation etc were a thing.
And I think a similar argument can be made wrt software and hardware-level visibility/tracing mechanisms - again an OS will end up being easier than higher-level software given a good investment in tooling.