jducoeur: (Default)
[personal profile] jducoeur
"A computer error that goes away every time you look at it closely, making it difficult to diagnose."

As, for example, spending the evening trying to figure out why your Internet connection has become flaky -- only to realize in the morning that the cablemodem is plugged into the light switch. D'oh...

(no subject)

Date: 2013-10-29 05:17 pm (UTC)
From: [identity profile] goldsquare.livejournal.com
I think I first encountered the term Heisenbug in 1988 - I was working on a system that failed every once in a while, and the only clue was that the speaker on the PC would always be on.

The resulting bug was a nightmare to find.

(no subject)

Date: 2013-10-29 06:36 pm (UTC)
From: [identity profile] serakit.livejournal.com
*blink* If it was that buggy, how on earth did Windows manage to keep selling stuff? These days it's big through sheer force of inertia, but back in the day, wouldn't Linux, Windows, and Apple all have been on a reasonably equal footing?

(no subject)

Date: 2013-10-30 12:14 am (UTC)
From: [identity profile] metahacker.livejournal.com
It's *still* that buggy and they still keep selling stuff. But they know their target market.

At work we run into a Windows "bug" (they call it a feature) that means that network access is 3x - 20x slower on Windows than it needs to be, as evinced by the speed on the same box running Linux. Normal people don't find it painful enough to jump ship, however.

Admittedly this is much better under Windows 7 than it was under XP, where it was 100x-300x slower.

(no subject)

Date: 2013-10-30 09:40 pm (UTC)
From: [identity profile] eclecticmagpie.livejournal.com
Unix, at least the version that ran on SUN 3 hardware, had a similar problem, with a continuously increasing log file for which the simple solution was to reboot every couple of months (before the system froze).

Of course, the big difference was that a lot of people knew about this problem, because otherwise you could keep the system up indefinitely.

(no subject)

Date: 2013-10-29 06:44 pm (UTC)
From: [identity profile] goldsquare.livejournal.com
Mine was a similar OS problem.

OLD HACKER MODE ON
I was working on a multitasking implementation of DOS, and we found that the system would suddenly crash-and-hang the OS on rare occasions. Our original hint was that the sound was always on, and while we weren't ALWAYS typing, we frequently were typing.

Back in the day when programming to DOS on an IBM PC, it was well understood that the BIOS calls were safely re-entrant. Not only were they, but IBM had actually published the code for the original BIOS to allow users to rely on its behavior.

It turns out that this BIOS was not sufficiently re-entrant - it had allowed itself to be called up to two-deep, but if it was called 3 deep, that was a problem. The developer was likely sure that could not happen. But that product I was using included some very smart boards that slotted into the data bus, and indirectly it could cause its own BIOS re-entrant calls.

Also, as it turns out, if you REALLY tried hard, you could make 3 levels of BIOS calls without using an external Board, although why would you?

I wrote a lovely assembly language program that would do just that - make 3 level deep calls into the BIOS. And my Heisenbug became a bug.

Alas: when I called the OS vendor, they sort of couldn't understand what I was talking about. That code had been written by a contractor who was long-gone, and they knew they didn't understand it, and weren't going to fix it. They offered to fly me to their offices for a week to fix it (and would pay me and my employer a bounty to do so), but my employer wouldn't bite.

So, we dumped that OS and went on to another. My 3-deep tool became a standard acceptance test for evaluating OS's.

(no subject)

Date: 2013-10-29 07:01 pm (UTC)
From: [identity profile] goldsquare.livejournal.com
I didn't get too into that - but from the behavior and a little hackerish use of the old DOS DEBUG commands obscure "reverse assemble" option... They just made a tiny little stack that only went 2 deep, and were sure that was enough.

Remember back in those days (and even now with embedded devices), space cost money and no one used space they didn't have to.

(no subject)

Date: 2013-10-30 11:50 am (UTC)
From: [identity profile] cvirtue.livejournal.com
You two have reminded me how much I liked listening to you and others talk programming after dance practice.

(no subject)

Date: 2013-10-30 02:21 pm (UTC)
From: [identity profile] cvirtue.livejournal.com
It was not only entertainment, but I learned a lot about how programmers interact, which meant I was highly employable as support staff, so it had actual benefits!

Plus 95% of my sweethearts have been techies...

(no subject)

Date: 2013-10-29 09:57 pm (UTC)
From: [identity profile] ilaine-dcmrn.livejournal.com
You are reminding me of the link() system call bug I ran across years ago. It was insufficiently atomic, resulting sometimes in a caller being told it had won a race it had not.

(no subject)

Date: 2013-10-30 12:11 am (UTC)
From: [identity profile] metahacker.livejournal.com
Ooooops.

Often heisenbugs are the result of bogon fields interacting poorly with the hardware and/or software, which can be extra hard to diagnose--even taking into account the laws of quantum chromobogodynamics. Glad this one was easier to track down...

Profile

jducoeur: (Default)
jducoeur

July 2025

S M T W T F S
  12345
6789101112
13141516171819
20212223242526
27 28293031  

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags