Node:software rot, Next:softwarily, Previous:software laser, Up:= S =

software rot n.

Term used to describe the tendency of software that has not

been used in a while to lose; such

failure may be semi-humorously ascribed to bit rot. More commonly, `software rot'

strikes when a program's assumptions become out of date. If the

design was insufficiently robust,

this may cause it to fail in mysterious ways. Syn. `code rot'.

See also link rot.

For example, owing to endemic shortsightedness in the design

of COBOL programs, a good number of them succumbed to software

rot when their 2-digit year counters underwent wrap around at the beginning of the year

2000. Actually, related lossages often afflict centenarians who

have to deal with computer software designed by unimaginative

clods. One such incident became the focus of a minor public flap

in 1990, when a gentleman born in 1889 applied for a driver's

license renewal in Raleigh, North Carolina. The new system

refused to issue the card, probably because with 2-digit years

the ages 101 and 1 cannot be distinguished.

Historical note: Software rot in an even funnier sense than

the mythical one was a real problem on early research computers

(e.g., the R1; see grind

crank). If a program that depended on a peculiar

instruction hadn't been run in quite a while, the user might

discover that the opcodes no longer did the same things they once

did. ("Hey, so-and-so needs an instruction to do such-and-such.

We can snarf this opcode, right? No

one uses it.")

Another classic example of this sprang from the time an MIT

hacker found a simple way to double the speed of the

unconditional jump instruction on a PDP-6, so he patched the

hardware. Unfortunately, this broke some fragile timing software

in a music-playing program, throwing its output out of tune. This

was fixed by adding a defensive initialization routine to compare

the speed of a timing loop with the real-time clock; in other

words, it figured out how fast the PDP-6 was that day, and

corrected appropriately.

Compare bit rot.

The Jargon File, Version 4.2.2, 20 Aug 2000 · 第 1499 / 1941 题