bookssland.com » Other » The New Hacker's Dictionary - Eric S. Raymond (e book reader online txt) 📗

Book online «The New Hacker's Dictionary - Eric S. Raymond (e book reader online txt) 📗». Author Eric S. Raymond



1 ... 31 32 33 34 35 36 37 38 39 ... 125
Go to page:
documentation for

DDT that illuminates the origin of the term:

Historical footnote: DDT was developed at MIT for the PDP-1

computer in 1961. At that time DDT stood for "DEC Debugging Tape".

Since then, the idea of an on-line debugging program has propagated

throughout the computer industry. DDT programs are now available

for all DEC computers. Since media other than tape are now

frequently used, the more descriptive name "Dynamic Debugging

Technique" has been adopted, retaining the DDT abbreviation.

Confusion between DDT-10 and another well known pesticide,

dichloro-diphenyl-trichloroethane (C14-H9-Cl5) should be minimal

since each attacks a different, and apparently mutually exclusive,

class of bugs.

(The `tape' referred to was, incidentally, not magnetic but paper.)

Sadly, this quotation was removed from later editions of the handbook

after the [3666]suits took over and [3667]DEC became much more

`businesslike'.

The history above is known to many old-time hackers. But there's more:

Peter Samson, compiler of the original [3668]TMRC lexicon, reports

that he named `DDT' after a similar tool on the TX-0 computer, the

direct ancestor of the PDP-1 built at MIT's Lincoln Lab in 1957. The

debugger on that ground-breaking machine (the first transistorized

computer) rejoiced in the name FLIT (FLexowriter Interrogation Tape).

Node:de-rezz, Next:[3669]dead, Previous:[3670]DDT, Up:[3671]= D =

de-rezz /dee-rez'/

[from de-resolve' via the movie "Tron"] (alsoderez') 1. vi. To

disappear or dissolve; the image that goes with it is of an object

breaking up into raster lines and static and then dissolving.

Occasionally used of a person who seems to have suddenly `fuzzed out'

mentally rather than physically. Usage: extremely silly, also rare.

This verb was actually invented as fictional hacker jargon, and

adopted in a spirit of irony by real hackers years after the fact. 2.

vt. The Macintosh resource decompiler. On a Macintosh, many program

structures (including the code itself) are managed in small segments

of the program file known as resources';Rez' and `DeRez' are a pair

of utilities for compiling and decompiling resource files. Thus,

decompiling a resource is `derezzing'. Usage: very common.

Node:dead, Next:[3672]dead beef attack, Previous:[3673]de-rezz,

Up:[3674]= D =

dead adj.

Non-functional; [3675]down; [3676]crashed. Especially used of

hardware. 2. At XEROX PARC, software that is working but not

undergoing continued development and support. 3. Useless;

inaccessible. Antonym: `live'. Compare [3677]dead code.

Node:dead beef attack, Next:[3678]dead code, Previous:[3679]dead,

Up:[3680]= D =

dead beef attack n.

[cypherpunks list, 1996] An attack on a public-key cryptosystem

consisting of publishing a key having the same ID as another key (thus

making it possible to spoof a user's identity if recipients aren't

careful about verifying keys). In PGP and GPG the key ID is the last

eight hex digits of (for RSA keys) the product of two primes. The

attack was demonstrated by creating a key whose ID was 0xdeadbeef (see

[3681]DEADBEEF).

Node:dead code, Next:[3682]dead link, Previous:[3683]dead beef attack,

Up:[3684]= D =

dead code n.

Routines that can never be accessed because all calls to them have

been removed, or code that cannot be reached because it is guarded by

a control structure that provably must always transfer control

somewhere else. The presence of dead code may reveal either logical

errors due to alterations in the program or significant changes in the

assumptions and environment of the program (see also [3685]software

rot); a good compiler should report dead code so a maintainer can

think about what it means. (Sometimes it simply means that an

extremely defensive programmer has inserted [3686]can't happen tests

which really can't happen -- yet.) Syn. [3687]grunge. See also

[3688]dead, and [3689]The Story of Mel.

Node:dead link, Next:[3690]DEADBEEF, Previous:[3691]dead code,

Up:[3692]= D =

dead link n.

[very common] A World-Wide-Web URL that no longer points to the

information it was written to reach. Usually this happens because the

document has been moved or deleted. Lots of dead links make a WWW page

frustrating and useless and are the #1 sign of poor page maintainance.

Compare [3693]dangling pointer, [3694]link rot.

Node:DEADBEEF, Next:[3695]deadlock, Previous:[3696]dead link,

Up:[3697]= D =

DEADBEEF /ded-beef/ n.

The hexadecimal word-fill pattern for freshly allocated memory

(decimal -21524111) under a number of IBM environments, including the

RS/6000. Some modern debugging tools deliberately fill freed memory

with this value as a way of converting [3698]heisenbugs into

[3699]Bohr bugs. As in "Your program is DEADBEEF" (meaning gone,

aborted, flushed from memory); if you start from an odd half-word

boundary, of course, you have BEEFDEAD. See also the anecdote under

[3700]fool and [3701]dead beef attack.

Node:deadlock, Next:[3702]deadly embrace, Previous:[3703]DEADBEEF,

Up:[3704]= D =

deadlock n.

[techspeak] A situation wherein two or more processes are unable to

proceed because each is waiting for one of the others to do something.

A common example is a program communicating to a server, which may

find itself waiting for output from the server before sending anything

more to it, while the server is similarly waiting for more input from

the controlling program before outputting anything. (It is reported

that this particular flavor of deadlock is sometimes called a

starvation deadlock', though the termstarvation' is more properly

used for situations where a program can never run simply because it

never gets high enough priority. Another common flavor is

`constipation', in which each process is trying to send stuff to the

other but all buffers are full because nobody is reading anything.)

See [3705]deadly embrace. 2. Also used of deadlock-like interactions

between humans, as when two people meet in a narrow corridor, and each

tries to be polite by moving aside to let the other pass, but they end

up swaying from side to side without making any progress because they

always move the same way at the same time.

Node:deadly embrace, Next:[3706]death code, Previous:[3707]deadlock,

Up:[3708]= D =

deadly embrace n.

Same as [3709]deadlock, though usually used only when exactly two

processes are involved. This is the more popular term in Europe, while

[3710]deadlock predominates in the United States.

Node:death code, Next:[3711]Death Square, Previous:[3712]deadly

embrace, Up:[3713]= D =

death code n.

A routine whose job is to set everything in the computer -- registers,

memory, flags, everything -- to zero, including that portion of memory

where it is running; its last act is to stomp on its own "store zero"

instruction. Death code isn't very useful, but writing it is an

interesting hacking challenge on architectures where the instruction

set makes it possible, such as the PDP-8 (it has also been done on the

DG Nova).

Perhaps the ultimate death code is on the TI 990 series, where all

registers are actually in RAM, and the instruction "store immediate 0"

has the opcode "0". The PC will immediately wrap around core as many

times as it can until a user hits HALT. Any empty memory location is

death code. Worse, the manufacturer recommended use of this

instruction in startup code (which would be in ROM and therefore

survive).

Node:Death Square, Next:[3714]Death Star, Previous:[3715]death code,

Up:[3716]= D =

Death Square n.

The corporate logo of Novell, the people who acquired USL after AT&T

let go of it (Novell eventually sold the Unix group to SCO). Coined by

analogy with [3717]Death Star, because many people believed Novell was

bungling the lead in Unix systems exactly as AT&T did for many years.

Node:Death Star, Next:[3718]DEC, Previous:[3719]Death Square,

Up:[3720]= D =

Death Star n.

[from the movie "Star Wars"] 1. The AT&T corporate logo, which appears

on computers sold by AT&T and bears an uncanny resemblance to the

Death Star in the movie. This usage is particularly common among

partisans of [3721]BSD Unix, who tend to regard the AT&T versions as

inferior and AT&T as a bad guy. Copies still circulate of a poster

printed by Mt. Xinu showing a starscape with a space fighter labeled

4.2 BSD streaking away from a broken AT&T logo wreathed in flames. 2.

AT&T's internal magazine, "Focus", uses `death star' to describe an

incorrectly done AT&T logo in which the inner circle in the top left

is dark instead of light -- a frequent result of dark-on-light logo

images.

Node:DEC, Next:[3722]DEC Wars, Previous:[3723]Death Star, Up:[3724]= D

=

DEC /dek/ n.

v. Verbal (and only rarely written) shorthand for decrement, i.e.

`decrease by one'. Especially used by assembly programmers, as many

assembly languages have a dec mnemonic. Antonym: [3725]inc. 2. n.

Commonly used abbreviation for Digital Equipment Corporation, later

deprecated by DEC itself in favor of "Digital" and now entirely

obsolete following the buyout by Compaq. Before the [3726]killer micro

revolution of the late 1980s, hackerdom was closely symbiotic with

DEC's pioneering timesharing machines. The first of the group of

cultures described by this lexicon nucleated around the PDP-1 (see

[3727]TMRC). Subsequently, the PDP-6, [3728]PDP-10, [3729]PDP-20,

PDP-11 and [3730]VAX were all foci of large and important hackerdoms,

and DEC machines long dominated the ARPANET and Internet machine

population. DEC was the technological leader of the minicomputer era

(roughly 1967 to 1987), but its failure to embrace microcomputers and

Unix early cost it heavily in profits and prestige after [3731]silicon

got cheap. Nevertheless, the microprocessor design tradition owes a

major debt to the PDP-11 instruction set, and every one of the major

general-purpose microcomputer OSs so far (CP/M, MS-DOS, Unix, OS/2,

Windows NT) was either genetically descended from a DEC OS, or

incubated on DEC hardware, or both. Accordingly, DEC was for many

years still regarded with a certain wry affection even among many

hackers too young to have grown up on DEC machines.

DEC reclaimed some of its old reputation among techies in the first

half of the 1990s. The success of the Alpha, an innovatively-designed

and very high-performance [3732]killer micro, helped a lot. So did

DEC's newfound receptiveness to Unix and open systems in general. When

Compaq acquired DEC at the end of 1998 there was some concern that

these gains would be lost along with the DEC nameplate, but the merged

company has so far turned out to be culturally dominated by the ex-DEC

side.

Node:DEC Wars, Next:[3733]decay, Previous:[3734]DEC, Up:[3735]= D =

DEC Wars n.

A 1983 [3736]Usenet posting by Alan Hastings and Steve Tarr spoofing

the "Star Wars" movies in hackish terms. Some years later, ESR

(disappointed by Hastings and Tarr's failure to exploit a great

premise more thoroughly) posted a 3-times-longer complete rewrite

called [3737]Unix WARS; the two are often confused.

Node:decay, Next:[3738]deckle, Previous:[3739]DEC Wars, Up:[3740]= D =

decay n.,vi

[from nuclear physics] An automatic conversion which is applied to

most array-valued expressions in [3741]C; they `decay into'

pointer-valued expressions pointing to the array's first element. This

term is borderline techspeak, but is not used in the official standard

for the language.

Node:deckle, Next:[3742]DED, Previous:[3743]decay, Up:[3744]= D =

deckle /dek'l/ n.

[from dec- and [3745]nybble; the original spelling seems to have been

`decle'] Two [3746]nickles; 10 bits. Reported among developers for

Mattel's GI 1600 (the Intellivision games processor), a chip with

16-bit-wide RAM but 10-bit-wide ROM. See [3747]nybble for other such

terms.

Node:DED, Next:[3748]deep hack mode, Previous:[3749]deckle, Up:[3750]=

D =

DED /D-E-D/ n.

Dark-Emitting Diode (that is, a burned-out LED). Compare [3751]SED,

[3752]LER, [3753]write-only memory. In the early 1970s both Signetics

and Texas instruments released DED spec sheets as [3754]AFJs

(suggested uses included "as a power-off indicator").

Node:deep hack mode, Next:[3755]deep magic, Previous:[3756]DED,

Up:[3757]= D =

deep hack mode n.

See [3758]hack mode.

Node:deep magic, Next:[3759]deep space, Previous:[3760]deep hack mode,

Up:[3761]= D =

deep magic n.

[poss. from C. S. Lewis's "Narnia" books] An awesomely arcane

technique central to a program or system, esp. one neither generally

published nor available to hackers at large (compare [3762]black art);

one that could only have been composed by a true [3763]wizard.

Compiler optimization techniques and many aspects of [3764]OS design

used to be [3765]deep magic; many techniques in cryptography, signal

processing, graphics, and AI still are. Compare [3766]heavy wizardry.

Esp. found in comments of the form "Deep magic begins here...".

Compare [3767]voodoo programming.

Node:deep space, Next:[3768]defenestration, Previous:[3769]deep magic,

Up:[3770]= D =

deep space n.

Describes the notional location of
1 ... 31 32 33 34 35 36 37 38 39 ... 125
Go to page:

Free e-book «The New Hacker's Dictionary - Eric S. Raymond (e book reader online txt) 📗» - read online now

Comments (0)

There are no comments yet. You can be the first!
Add a comment