Tom's Computer Dictionary

Copyright 2008, Tom R. Halfhill
*** To find a term: after page downloads, press Ctrl-F (Cmd-F on Mac) ***
Can't find a definition? Ask Tom!
0.13, 0.18, 0.25, 0.35 micron: see fabrication.

130nm: see fabrication.

1394: See IEEE-1394.

22nm: a 22-nanometer semiconductor-fabrication technology scheduled to begin mass production in 2011. See fabrication.

24/7: access or uptime that's available 24 hours a day, 7 days a week. This term often refers to the availability of a server or network.

2G: the second-generation wireless-telephony standard, which uses digital instead of analog technology and supports data-transfer rates up to 9.6Kbps. This is the cellular standard currently in wide use. See 2.5G, 3G.

2.5G: the "two-and-a-half" generation wireless-telephony standard, which uses basically the same digital technology as the 2G cellular standard but increases the data-transfer rate to a maximum 115Kbps. See 2G, 3G.

32nm: a 32-nanometer semiconductor-fabrication technology scheduled to begin mass production in 2009. See fabrication.

3DNow!: Introduced in 1998 with AMD's K6-2 processor, 3DNow! originally consisted of 21 new instructions that speed up 3D graphics and other tasks on x86-compatible processors. In late 1999, with the introduction of the Athlon (formerly K7) processor, AMD added 24 additional instructions to 3DNow!. The 3DNow! extensions also gained the support of chipmakers Cyrix and Centaur Technology, now owned by VIA. Notably missing from this loose alliance was Intel, which introduced its own Streaming SIMD Instructions (SSE) in early 1999.

3G: the third-generation wireless-telephony standard, which boosts the data-transfer rate to 2Mbps.

3GIO: Third-Generation Input/Output. An internal system bus for PCs developed by Intel, intended to replace PCI. It has been renamed PCI Express. See PCI Express, PCI, HyperTransport, ISA, EISA.

4004: the first single-chip microprocessor available as a distinct commercial product. Intel introduced the 4004 on November 15, 1971, about a year after designing the processor (and related chips) for Busicom, a Japanese calculator company. Some earlier microprocessors were multichip implementations or were sold only in systems.

419 scam: financial fraud that originates in Nigeria ("419" is a relevant clause in the Nigerian criminal code). Usually the fraud takes the form of e-mail messages that attempt to convince the recipient to transfer money or reveal bank account numbers in a scheme to obtain larger amounts of money.

45nm: a 45-nanometer semiconductor-fabrication technology that began mass production in 2007. See fabrication.

65nm: a 65-nanometer semiconductor-fabrication technology that began mass production in 2005. See fabrication.

666.66: suggested retail price of the Apple I personal computer when first sold in April 1976. Not a satanic allusion. Retail price was a 33% markup from the wholesale price of $500, rounded to $666.66 because inventor Steve Wozniak was inspired to use a string of identical numbers by his association with the first dial-a-joke phone service, which adopted a similar phone number to solve the problem of callers dialing the wrong number. (Editor's note: Woz answered this question for me during the 30th anniversary reunion of the Homebrew Computer Club at the Computer History Museum in 2005.)

68000: the first in a family of 16- and 32-bit microprocessors introduced by Motorola in 1979. Major members of the 68K family include the 68020, 68030, 68040, and 68060. In performance and features, those processors roughly compare to Intel's 286, 386, 486, and Pentium, respectively. 68K processors are based on a CISC architecture that's generally cleaner than Intel's x86, though they're not always faster. Computer platforms that have used 68K chips include the original Apple Macintosh, Commodore Amiga, Atari ST, and early Sun workstations. Motorola's RISC-based PowerPC chips are more efficient and powerful and have replaced the 68K in personal computers and workstations, but 68K chips remain popular for embedded applications.

802.11: a group of IEEE standards for wireless LANs. Currently the most popular version is 802.11b, also known as Wi-Fi, which operates in the 2.4GHz radio-frequency band and provides up to 11Mbps of bandwidth at distances up to 300 feet. Another version, 802.11a, operates in the 5.2GHz band and provides up to 54Mbps, but has less range (about 150 feet) and isn't compatible with 802.11b. The newest version is 802.11g, also known as Wireless-G, which operates in the 2.4GHz band, provides up to 54Mbps at distances up to 300 feet, and is backward-compatible with 802.11b. See LAN, NAN, Wi-Fi.

90nm: a 90-nanometer semiconductor-fabrication technology that began mass production in 2003. See fabrication.

AAC: Advanced Audio Coding. Apple's proprietary method of compressing digital audio files for use on iPod portable players and personal computers. AAC is a lossy compression codec that sacrifices some audio quality to shrink the file size. It is similar in concept to another popular compression method, MP3. See codec, lossy, MP3, FLAC, HD-AAC.

ADC: analog-to-digital converter. A device that converts analog signals into digital signals, usually as part of an interface. See DAC.

ADSL: asymmetrical digital subscriber line, a form of DSL that provides more bandwidth in one direction than in the other. See bandwidth, DSL.

affinity: associating a particular software process with a particular microprocessor or processor core in a multiprocessing system. In a dual-core system, for example, the operating-system software may be assigned to run on only one of the processors, leaving the other available for user tasks. Affinity may be set manually or automatically. See multicore, SMP.

AGP: Accelerated Graphics Port. It's a point-to-point channel (technically not a bus) that connects the system chipset to the graphics controller, bypassing the PCI bus. This allows faster graphics performance than with PCI-based graphics controllers. The AGP channel is 32 bits wide, like PCI, but runs at higher frequencies and can transfer more data per bus cycle. Bus speeds are 66.6MHz (AGP-1x), 133MHz (AGP-4x), and 266MHz (AGP-8x). Intel introduced AGP in 1996.

AGU: address-generation unit. A function unit in a microprocessor that calculates memory addresses. When a branch instruction redirects the program flow, the AGU calculates the memory address of the instruction that's the target of the branch.

AI: artificial intelligence. (1) The hypothesis that computers can achieve humanlike intelligence, including self-awareness. (2) Any computer program or program routine that simulates intelligence. Definition #2 is widely used, often to describe the behavior of computer-generated characters in games and virtual worlds, but definition #1 is used by scientists. True AI has never been achieved. See Turing test, singularity.

AJAX: Asynchronous JavaScript and XML. Web developers use this term to describe a collection of technologies for dynamically updating web pages in response to user input. The goal is to build interactive web-based applications. See JavaScript, XML, Web 2.0.

Alpha: a 64-bit RISC microprocessor architecture introduced by DEC (the former Digital Equipment Corp.) in 1992. Compaq inherited the Alpha by acquiring DEC in 1998; Hewlett-Packard inherited the Alpha by acquiring Compaq in 2002. In 2001, Compaq announced it would stop developing Alpha processors after 2003 and Alpha-based systems after 2004.

alpha: a stage of product development preceding the final release. Products at the alpha stage lack some features specified in the design. When the product is feature-complete but still has known bugs, it reaches the beta stage. See beta, release candidate, gold master.

alpha blending: a technique for making 3D objects in computer graphics appear more realistic. It blends multiple textures together, allowing fog effects and the reduced visibility of distant objects.

alpha geek: the most technically proficient person in a group of people.

ALU: arithmetic/logic unit. A function unit in a microprocessor that carries out integer arithmetic and logic instructions. Arithmetic instructions operate on whole numbers (such as 2+2=4), and logic instructions typically compare values (is X equal to Y?).

Amiga: a largely defunct personal-computer platform originally sold by Commodore. Introduced in 1985, the Amiga 1000 was arguably the first true multimedia computer. It had features that took other platforms years to match, including the ability to display thousands of colors, stereo sound, built-in speech synthesis, a multitasking GUI operating system, video outputs, mixed video/graphics, and the ability to display multiple screen resolutions simultaneously. After Commodore collapsed in 1994, the rights to Amiga technology passed through several companies, but the platform has never been revived.

anisotropic filtering: a technique that improves the appearance of textures mapped onto 3D objects. Without it, textures may appear unnaturally elongated on curved surfaces. Anisotropic filtering compensates by modifying the textures when projecting them onto the surface.

anti-aliasing: a technique that smooths the edges of diagonal lines on the screen and in print. Without anti-aliasing, diagonal lines often have a "jaggy" appearance caused by the stair-step effect of the pixels. Anti-aliasing blurs the edges of the lines. In 3D graphics, bilinear and trilinear filtering provide anti-aliasing for textures.

AOL: America Online. A proprietary computer network and ISP used mainly by consumers. AOL has grown to become the largest proprietary online service in the world, with about 30 million members. AOL owns CompuServe and Time Warner.

Apache: free, open-source web-server software that runs on Linux and Unix. Apache is an economical, reliable, and popular way to host a website.

API: application programming interface. A collection of subroutines -- usually part of an operating system -- that application programs can call upon to perform common tasks. For example, a program might call an API routine to display a window on the screen. An API may also allow different programs to work together, such as plug-ins for Adobe Photoshop. APIs reduce the amount of code that programmers must write.

APOP: authenticated POP3. A variation of the POP3 e-mail protocol that requires a POP3 mail client to authenticate itself to a POP3 mail server before receiving e-mail. APOP is a more secure alternative to sending a POP3 username and password in clear text to the server. See POP3.

Apple II: one of the first three personal computers introduced in 1977 that were available off the shelf and didn't require assembly. In contrast, the Apple I (1976) didn't come with a case or even a power supply as standard equipment. The Apple II was designed by Apple co-founders Steve Wozniak and Steve Jobs and had many improvements over the Apple I, although the basic design was the same. Together with the Commodore PET and TRS-80 Model 1, the Apple II helped move computing beyond the electronics-hobbyist era toward mass popularity. See PET, TRS-80.

applet: (1) a small program; (2) a Java program that runs inside a web browser under security restrictions that limit what the applet can do.

application: a software program that serves some direct purpose for users. A word processor or a game is an application, but an operating system is considered to be system software, not application software. Programs that perform system maintenance functions (such as antivirus checkers or disk defragmenters) are often called utilities.

application processor: the microprocessor in a cellphone that runs user applications, such as the address book, text-messaging program, e-mail program, web browser, etc. The application processor is distinct from the baseband processor, which performs lower-level functions required for wireless communications. Often, both processors are integrated on the same chip.

architecture: In the context of microprocessors, a family of chips that shares related features and can run the same software. Important features are the instruction set and the register file.

artificial intelligence: (1) The hypothesis that computers can achieve humanlike intelligence, including self-awareness. (2) Any computer program or program routine that simulates intelligence. Definition #2 is widely used, often to describe the behavior of computer-generated characters in games and virtual worlds, but definition #1 is used by scientists. True AI has never been achieved. See Turing test, singularity.

ASCII: American Standard Code for Information Interchange, a method of representing text (numbers, letters, punctuation, and special characters) as numbers that computers can manipulate. ASCII assigns each character a number; for example, uppercase A is ASCII code 65. Invisible characters -- such as tabs, linefeeds, and carriage returns -- also have ASCII codes.

ASIC: application-specific integrated circuit. A chip specially designed for a particular application -- unlike general-purpose microprocessors, which are designed to be suitable for many different applications.

ASP: active server page. ASPs are dynamic web pages that can change in response to user input or environmental variables (such as the type of computer with which the user is accessing the page). ASPs often display responses to database queries. ASPs require a web server running a Microsoft Windows operating system.

assembler: a programming tool for writing assembly language.

assembly language: a low-level programming language that substitutes mnemonics (short abbreviations, such as ADC for "add with carry") for the binary codes of machine instructions. Technically, the binary codes of machine instructions are "machine language," but sometimes the terms assembly language and machine language are used interchangeably.

ATA: Advanced Technology Attachment. ATA is an I/O specification for PCs, specifically for hard disk drives. "Advanced Technology" refers to the IBM PC-AT computer introduced in 1984. ATA works with the parallel IDE/EIDE bus and has been updated several times over the years. See IDE, EIDE, Serial ATA.

Athlon: an x86-compatible microprocessor from Advanced Micro Devices (AMD), formerly known as the K7. It is a superscalar, out-of-order processor with speculative execution and branch prediction. Introduced in 1999, the Athlon became the first mass-production x86 processor to reach a clock frequency of 1GHz (1000MHz).

ATM: (1) asynchronous transfer mode; (2) Adobe Type Manager; (3) automatic teller machine. Asynchronous transfer mode is a low-level network protocol that transfers data in 53-byte packets. Adobe Type Manager is a program that allows a computer to use Adobe PostScript-format type fonts. An automatic teller machine is a computer that provides round-the-clock access to personal bank accounts.

ATX: a PC motherboard standard announced by Intel in 1995 and widely adopted by the industry. ATX motherboards rearrange the motherboard components for greater efficiency and manufacturing economy, and they stack the rear connectors in two rows to save space. They have replaced the earlier AT and Baby AT motherboards. See BTX, motherboard.

avatar: an on-screen graphic (usually a face or body) that represents a user in cyberspace. Some graphical chat rooms allow users to choose or design an avatar as their online personas; other users can see and interact with the avatar.

B2B: business to business. Usually it describes a business model in which a vendor sells products or services to other businesses, not to consumers.

babble-rouser: derogatory term for rabble-rousers who babble, especially those who post their ignorant screeds on the Internet. (Coined in 2002 by Tom Halfhill)

backside bus: a special interface that connects a microprocessor to a Level 2 (L2) cache. No other system devices share the backside bus. This contrasts with the frontside bus, or system I/O (input/output) bus, which many system devices typically share. A backside bus helps eliminate performance bottlenecks.

bandwidth: the data-carrying capacity of a communications channel. More is better.

baseband processor: the microprocessor in a cellphone or other communications device that performs low-level functions required for wireless communications. Cellphones also have an application processor for running higher-level software, such as the address book, text-messaging program, e-mail program, etc. Often, the baseband and application processors are integrated on the same chip.

BASIC: Beginner's All-purpose Symbolic Instruction Code. BASIC is a programming language invented in the 1960s for teaching purposes. Since then, BASIC has evolved into a powerful language often used by professionals. Microsoft's Visual Basic is currently the most popular version.

BBS: bulletin-board service. A remote computer that usually hosts discussion groups and offers software for downloading, typically over one or more phone lines connected to modems. Hundreds of these automated systems, often operated by individuals, were popular in the 1980s. In the 1990s, they were largely supplanted by Internet newsgroups and then by websites. See modem, World Wide Web.

benchmark: a performance-measurement tool, utility, or application. Benchmark tests can measure the performance of microprocessors, disk drives, graphics cards, network connections, or a whole computer system. Some benchmark tests are sanctioned by industry organizations and others are created by private companies, publications, or individuals. Synthetic benchmarks are programs written expressly to measure performance. Application-level benchmarks are real programs whose performance is carefully monitored. See Dhrystone, EEMBC, and SPEC.

benchmarketing: the use (or misuse) of benchmark scores for product marketing.

BeOS: an operating system created and owned by Be Inc., a company founded by some former Apple employees in the 1990s. BeOS originally was released for IBM/Motorola PowerPC processors and has been ported to Intel x86 processors. BeOS has powerful multimedia capabilities.

beta: a stage of product development preceding the final release. Products at the beta stage are supposed to have all the features specified in the design, but they also have known problems ("bugs"). Developers distribute beta versions of the product to testers who look for additional problems. A product may go through several beta cycles of testing and fixing before it's deemed ready for release. See alpha, release candidate, gold master.

BGA: ball grid array. A type of package for chips that uses tiny "balls" instead of pins to make the electrical contacts with the socket.

bi-endian: the ability of a microprocessor to handle multibyte values in either little-endian or big-endian formats.

big endian, big-endian: a multibyte value that begins with the most significant byte (MSB), which is stored at the lowest memory address. The opposite is little endian. Microprocessors are often described as big endian or little endian, depending on how they store multibyte values. For example, the IBM/Motorola PowerPC architecture is big endian. Some architectures can handle both formats and are bi-endian.

binary: the number system used by computers. Binary has only two digits (0 and 1) that are known as bits (BInary digiTs). Electronic circuits represent bits by varying the voltage of electrical signals. Transistors can act as switches with two states -- on (binary 1) or off (binary 0). Internally, computers store and manipulate all data in binary.

binary code: the actual program code a computer executes. Programmers write in source code, which a compiler converts into binary code (also called object code, executable code, or machine code). Binary code is specific to a particular microprocessor architecture, so a program compiled for an x86 processor won't run on a PowerPC processor or vice versa.

BIOS: basic input/output system. It's a low-level part of the operating system found in IBM PC-compatible computers. Unlike the rest of the operating system, it's stored in ROM or flash ROM chips on the motherboard instead of on the hard disk. The BIOS is responsible for initializing the computer during startup and performing other low-level functions.

BIST: built-in self-test. Computers and peripherals often have a small program that runs and checks for problems when the power is switched on. The BIST program is usually stored in ROM or flash memory. Also known as POST (power-on self-test).

bit: a binary digit, 0 or 1. Computers process all information digitally in the form of bits. Eight bits make a byte, 1,024 bytes make a kilobyte, 1,024 kilobytes make a megabyte, etc. See byte.

black box: (1) hardware or software that performs a function without visibility into its operation; (2) any hardware device that performs a needed function.

black-hat hacker: A malicious computer hacker. See hacker.

bleeding edge: descriptive term for a product, technology, or company at the forefront of its field. Derived from "leading edge," it implies that getting too far ahead of the market is hazardous to survival.

blog, blogging: see weblog.

blogger: one who blogs. See weblog.

blogosphere: the global community of blogs. See blog, weblog.

Blu-ray: an optical-disc format that greatly increases the capacity of DVD-size (4.75-inch) discs. It's named for the blue lasers whose shorter-wavelength light allows more data to be recorded in the same space. (Ordinary DVDs and CDs use red lasers.) Also, Blu-ray records data in multiple layers. Maximum available capacity is 50GB. Can be used to store video or computer data. Blu-ray has enough capacity and speed for high-definition (HD) video. In a format war that essentially ended in 2008, Blu-ray defeated its rival, HD-DVD. See CD, DVD, HD, HD-DVD.

Bluetooth: an industry standard for wireless communications over relatively short distances. Bluetooth was originally conceived in the 1990s by Ericsson to eliminate the clutter of peripheral cables and to allow portable computing devices to communicate wirelessly with each other and with PCs and networks. Operating in the 2.4GHz range, Bluetooth is intended for short-range (10 meters, or 100 meters with amplification), low-bandwidth (723.2Kbps master-to-slave, 57.6Kbps slave-to-master) communications, either point-to-point or point-to-multipoint.

BOFH: bastard operator from hell. A tech-support term for a stupid computer user.

Boolean logic: a formal way of defining conditions using operators like AND, OR, and NOT. Internet search engines typically apply Boolean logic to the user's search terms. Programmers use Boolean logic to define conditional statements. Developed by English mathematician George Boole in the 1800s.

boot: to start up a computer. During the boot process, the computer loads the operating system and may also begin running one or more application programs.

boot drive: the disk drive that loads the operating-system software into memory when a computer is switched on. This process is known as "booting the computer."

booth bunny: a pretty woman hired to attract businessmen into a trade-show exhibit. Booth bunnies rarely know anything about the products on display; they function merely as flypaper, usually in skimpy costumes.

BOPS: billions of operations per second. Often used to express the performance of a DSP or microprocessor.

bot: a computer program that performs an autonomous function. Once started, a bot requires little or no interaction with a user and often runs quietly in the background. Originally, bots were benevolent programs that helped manage online discussion groups and chat rooms. More recently, malevolent bots have become common. They secretly run on an unsuspecting user's computer and perform some mischief, such as sending e-mail spam to other computers on the Internet. See botnet, spam, zombie.

botnet: a virtual network of bots working together for a common purpose. Each bot runs on a different computer, sometimes without the knowledge of the computer's owner. Malicious botnets may send e-mail spam to other computers on the Internet or participate in identity theft. In 2007 it was estimated that 11% of PCs are infected with bots and that botnets send more than 80% of spam. See bot, spam, zombie.

brain dump: the act of quickly bringing someone up to speed on a subject by sharing the most important things they need to know. Example: "John is an expert on networking; ask him to give you a brain dump." Derived from core dump.

branch: a program instruction that diverts the flow of execution along two or more alternate paths. For example, a dialog box with "OK" and "Cancel" buttons represents a branch in the program. Depending on which button the user clicks, the program will execute one path of instructions or the other.

branch prediction: the ability of a microprocessor to predict the outcome of conditional branches. The sophistication of this ability varies greatly, from static prediction (always guessing a branch will fork in the same direction) to dynamic prediction (basing predictions on previous behavior).

branch target: the destination of a branch instruction -- another instruction at an address in memory.

brick and mortar: describes a business that's not online. Example: "Amazon.com competes with brick-and-mortar bookstores."

bricked: when an electronic device is rendered useless by a hardware or software problem, perhaps forever. Example: "I downloaded a buggy BIOS update, and now my computer is bricked."

broadband: in computer terminology, an Internet connection that runs at about 1Mbps or faster. Cable modems, DSL modems, and T1 lines all provide broadband speeds. In contrast, an ISDN connection (up to 128Kbps) is considered middleband, and an ordinary analog telephone modem (up to 56Kbps) is considered a narrowband connection. See cable modem, middleband, modem, narrowband.

BSOD: blue screen of death. The blank blue screen that sometimes appears when a Microsoft Windows operating system crashes. The only recourse is to reboot.

BTX: Balanced Technology eXtended, a new specification for desktop PC motherboards announced by Intel in 2003. BTX offers several improvements over ATX, including three different motherboard sizes and two height specifications. BTX enables the design of smaller, cooler-running PCs. See ATX, motherboard.

buffer: some memory set aside for a special purpose, usually to allow two devices to exchange data without overwhelming their input/output interfaces. The buffer acts as a temporary reservoir for data. Video cards have very large buffers, often called frame buffers, to store the data for screen displays.

bug: a defect in a computer program or computer-controlled device. Bugs usually cause the program or device to behave in unexpected ways or to stop working altogether. Contrary to popular belief, the term did not originate when a dead moth was found in the wiring of an early computer; it actually pre-dates computers, and engineers were using it by 1878.

burn rate: the rate at which an unprofitable company (usually a startup) spends its capital. Example: "At our current burn rate, we have enough money for another six months."

bus: a datapath over which two or more components communicate with each other. There are many types of buses. Examples include the PCI bus, which supports the PCI slots in a PC, and the CPU's system bus, which the microprocessor uses to communicate with the rest of the system.

bus bandwidth: the data-carrying capacity of a bus. To calculate maximum theoretical bus throughput, multiply the bus frequency times the bus width. If a 100MHz bus is 64 bits wide, it transfers 8 bytes per clock cycle 100 million times per second, for a maximum theoretical throughput of 800MBps.

buttberry: slang term for a BlackBerry two-way text messaging device. Adopted because BlackBerry devices are often worn as a belt accessory on the hip.

byte: eight bits. A byte is the basic unit of measure for memory and mass storage. Higher units of measure are expressed as numbers of bytes raised to increasingly large powers of two. A kilobyte is 1,024 (2^10) bytes; a megabyte is 1,024 kilobytes (2^20 bytes); a gigabyte is 1,024 megabytes (2^30 bytes); a terabyte is 1,024 gigabytes (2^40 bytes); a petabyte is 1,024 terabytes (2^50 bytes); an exabyte is 1,024 petabytes (2^60 bytes); a zettabyte is 1,024 exabytes (2^70 bytes); and a yottabyte is 1,024 zettabytes (2^80 bytes). However, disk-drive manufacturers usually round off these values to make them easier to understand, so in that context, a megabyte is 1,000 kilobytes, a gigabyte is 1,000 megabytes, a terabyte is 1,000 gigabytes, etc. See bit and nybble.

C#: (pronounced "C sharp") a new high-level, object-oriented programming language introduced by Microsoft in 2001 that combines features of C, C++, and Java. Like Java programs, C# programs can run on a virtual machine, offering the possibility of hardware-platform independence. C# is part of Microsoft's .NET initiative.

C, C++: (pronounced "C" and "C plus plus") two closely related programming languages often used by professionals for software development. C came first and is a conventional procedural-type language. C++ came later and adds object-oriented extensions.

cable modem: a device that allows a personal computer to access the Internet over cable TV lines, which is much faster than an analog telephone modem. The transfer rates of cable modems range from less than 1 megabit per second to 10 megabits per second. The digital cable-modem signals don't interfere with cable TV reception.

cache: a block of memory that temporarily holds data for faster access. In the context of microprocessors, caches are usually static RAM (SRAM) chips or cells that operate much faster than dynamic RAM (DRAM) chips.

cache miss: when a microprocessor can't find what it's looking for in a cache. The processor must then look elsewhere in the memory hierarchy: in another cache (if present), main memory, or the hard disk. The penalty in wasted clock cycles increases as the processor moves deeper into this hierarchy.

CAD: computer-aided design. The process of designing something on a computer, rather than on a paper-and-pencil drawing board. Most CAD work is done on powerful workstations, although high-end PCs are encroaching on this market.

captcha: alphanumeric characters displayed on a web page as a graphic image, instead of as plain text. Captchas try to defeat automated computer programs that scan web pages. Sometimes, the captcha may display an e-mail address as a graphic image, in order to defeat programs that harvest addresses for spammers. In other cases, the captcha may display a password that a person must enter to post a comment or access another part of the website; automated programs cannot read the password.

CAS: column address strobe. A signal that together with the RAS locates a memory address in a RAM chip. See RAS, RAM, DRAM, CL1.

Category 5 cable: eight-wire shielded cabling that's commonly used to connect local-area networks. Also known as CAT-5 or CAT5 cable.

CCD: charge-coupled device. It's a chip that contains an array of solid-state light sensors. Each sensor generates an electrical charge in proportion to the amount of light it detects. Many digital cameras and scanners use CCDs to capture and record an image as pixels. The more sensors, the more pixels, and the higher the image resolution (quality).

CD: Compact Disc. An optical-disc format that stores digital data on 4.75-inch plastic platters coated with a reflective surface. A laser scans the surface of the disc to read the data. Maximum data capacity is 650MB-700MB. See CD-R, CD-ROM, CD-RW.

CD-R: Compact Disc Recordable. A write-once data-storage medium based on CD-ROM technology. A CD-R drive permanently records information on the disc by using a laser to burn microscopic spots on a photosensitive surface. Later, a CD-R or CD-ROM drive can retrieve the information by reading the spots with a laser. CD-Rs cannot be erased or rewritten. Each disc stores 650MB-700MB.

CD-ROM: Compact Disc Read-Only Memory. A data-storage medium for computers based on the same principles used for audio CDs -- information is permanently recorded on the disc by etching microscopic pits on a metal surface, and a laser reads the pits to retrieve the information. CD-ROMs cannot be erased or rewritten. Each disc stores 650MB-700MB.

CD-RW: Compact Disc Rewritable. A standard that allows a CD drive to write, erase, and rewrite data on a special disc a virtually unlimited number of times. The drive has a laser that writes and erases data by heating up the disc surface. Early CD-ROM drives cannot recognize CD-RW discs, because their laser pickups aren't sensitive enough to read the less-reflective surfaces. Most CD-ROM drives made after 1997 can read CD-RW discs.

CGI: common gateway interface. A protocol that allows web pages to launch small programs or "scripts" on a web server. Usually a CGI program creates a dynamic web page that returns some information to the user in response to input. Perl is a popular language for writing CGI scripts.

chimping: interrupting the act of photographing with a digital camera to look at recently taken pictures on the camera's LCD screen.

CISC: complex instruction-set computing. CISC is an architectural design style for microprocessors that dates to the 1970s. CISC processors try to conserve memory and other system resources by encoding program instructions in a compact format and by using complex instructions that perform multiple operations. Examples of CISC architectures are Intel's x86 and Motorola's 68K.

CL1, CL2, CL3: on memory chips, these specifications mean CAS latency 1, CAS latency 2, etc. They specify the number of bus clock cycles required for the memory to respond to a data request from the CPU. Lower numbers are better (shorter latency). The specification should match the requirements of the computer's motherboard and BIOS. See CAS, RAM, DRAM, BIOS.

class library: a collection of classes (object definitions) that programmers use to build object-oriented programs. Essentially, it's a prewritten code library that saves programmers from reinventing the wheel so they can develop applications more rapidly.

CLI: see command-line interface.

client: a single-user computer attached to a network. Clients are usually desktop PCs but can also include laptop computers and even hand-held devices. Clients can access servers and sometimes other clients over the network.

clock cycle: one moment in the operation of a microprocessor. An oscillator regulates the processor's actions. During each clock tick, electrical signals flow through circuits and turn transistors on or off. The number of ticks per second is the clock frequency, typically expressed in megahertz or gigahertz.

clock frequency: the operating speed of a microprocessor, interface, or bus in clock cycles per second. It's regulated by a "clock" or oscillator that synchronizes operations. During each clock cycle, transistors switch on and off to redirect electrical current through a chip's circuits. Synonymous with clock speed, it's usually expressed in megahertz or gigahertz. Clock frequency alone does not equal processor performance; processor performance is defined as instructions per clock x frequency.

clock speed: see clock frequency.

clone: a copycat product that tries to be compatible with the original product. The vast majority of today's PCs are cloned descendants of the original IBM PC of 1981. Clones are usually the result of reverse engineering.

cloud: the Internet or any computer network.

cloud computing: using computer resources located elsewhere on a network.

CMOS: complementary metal oxide semiconductor, the most common type of integrated circuit for modern microprocessors and memory chips.

CMP: chip multiprocessing. The integration of two or more processor cores on a single chip. It allows multiprocessing in a single-processor system. Not to be confused with SMP (symmetric multiprocessing), which requires two or more separate processors.

CO: central office -- a local telephone exchange.

COA: certificate of authenticity. A label that certifies a copy of software is legitimate -- not pirated or counterfeited.

COBOL: COmmon Business-Oriented Language. COBOL is a programming language that dates to the 1950s and was the standard for many years on mainframe computers. Some say that most of the business code still running on computers today was written in COBOL, but it has been largely superseded by modern languages.

code: slang for source code -- the instructions that programmers use to write software. In a broader sense, it also describes the executable (runnable) form of a program.

code coolie: derogatory term for a programmer who is assigned to a less-important or boring part of a project.

code expansion: software bloat. Some techniques that boost the performance of microprocessors also result in larger programs. For example, programs for RISC processors are often larger than equivalent programs for CISC processors because the RISC instructions have a greater average length.

codec: compressor/decompressor. A program that compresses digital data (usually audio or video) to reduce the file size. Lossless codecs preserve the original quality; lossy codecs sacrifice some quality to achieve greater compression. Examples of popular audio codecs are MP3, AAC, and FLAC.

coder: a computer programmer. See code.

Colossus: the world's first electronic digital computer. Colossus was a top-secret codebreaking machine built by the British at Bletchley Park, England, to crack German ciphers during World War II. It entered service in January 1944 and was quickly succeeded by Colossus Mark 2, an improved model, in June 1944. The Mark 2 had 1,500 vacuum tubes and remained in operation until 1960. See ENIAC.

command-line interface: a textual user interface that allows users to control a computer program by typing commands at a screen prompt. Example: MS-DOS. See user interface, GUI, DOS.

Compact Flash: a standard format for flash-memory cards often used in digital cameras, digital audio players, and other electronic devices. See flash memory, SmartMedia.

compiler: a tool that programmers use to convert their source code into object code (also known as binary code, executable code, or machine code). Object code is the actual code that runs on a computer. Compilers also check for errors in source code.

conditional branch: a program instruction that forks in two directions, depending on the outcome of a condition. For example, if you click an "OK" button, the program branches in one direction (perhaps saving a file), while if you click a "Cancel" button, it branches in another direction (canceling the operation).

context switch: the result of an interrupt that forces a microprocessor to stop executing the current instruction stream and begin executing a different instruction stream. Generally a context switch happens in response to input from a peripheral, an error, or when a user switches among multitasking programs. During a context switch, the OS must save the contents of the CPU's registers before switching to the next instruction stream, then restore the registers when execution resumes with the original instruction stream.

cookie: a small text file managed by a web browser on the client's local hard disk. It contains information saved by some web servers. Among other things, cookies allow websites to recognize returning visitors and present customized web pages. Despite much hysteria, cookies are rarely dangerous or invasive.

coordinate matrix: A set of numbers required to draw a 3D object on the screen. Each object consists of numerous polygons, often triangles. Each vertex (corner) of each polygon needs a coordinate matrix to describe its location in virtual space. The coordinate matrix is usually a set of four numbers describing the horizontal, vertical, and depth positions of the vertex.

coprocessor: a microprocessor chip that assists the main microprocessor in a computer, usually by handling some specialized task such as graphics.

core: (1) a logic component for chip integration; (2) the main logic circuits of a microprocessor chip; (3) an obsolete type of computer memory consisting of a fabric of tiny wires and doughnut-shaped metal rings. Term 1 usually refers to hard macros or synthesizable intellectual property. Term 2 usually refers to the microarchitecture (internal design) of a processor, exclusive of buses and caches. Term 3 is rarely used these days.

core dump: a screen display or printout of the contents of a computer's main memory or a region of memory. Programmers sometimes use a core dump to help them debug a program. See core (definition #3).

core-logic chipset: two or more chips on the motherboard of a PC that connect the microprocessor to other system devices. The core logic defines many of the features of a PC: how much main memory (RAM) it can use, how many expansion slots it has, the types of system interfaces available, how much memory it can cache, and so forth. Core logic is usually partitioned into two sections known as the north bridge and south bridge. Core logic is also known as the system chipset. See north bridge, south bridge, motherboard.

CPI: cycles per instruction. A measure of efficiency for microprocessors; the fewer CPI, the better.

CPU: central processing unit. Another term for a microprocessor chip. Sometimes incorrectly used to refer to the main box of a PC.

cracker: a malicious hacker who attacks computers and networks.

craplet: a program of dubious value. Craplets are often preinstalled on new PCs or included on CD-ROMs with other products. See shovelware.

crash: an undesirable event in which a computer program unexpectedly stops running because of a bug or some other problem. If the program that stops running is the operating system, the whole computer may be disabled until rebooted.

crowdsourcing: outsourcing labor to users or customers. It saves the expense of hiring staff or contractors, and it gives the laborers a sense of belonging to the project, even if they don't benefit financially. Prime example: the online encyclopedia Wikipedia.

crypto: cryptography, the science of codes and ciphers.

CSI: Common System Interface. A high-speed point-to-point serial connection between multiple processor cores and between a processor core and a memory controller. Intel developed CSI to compete with a similar interconnect, HyperTransport. CSI is now known as the QuickPath Interconnect.

CSS: Content Scrambling System, an encryption method for protecting the content on commercial DVDs. See DeCSS, crypto.

cube farm: a large work area with open cubicles instead of private offices. Silicon Valley companies are famous for their cube farms.

cyberchondriac: a person who self-diagnoses a phantom illness after reading about symptoms on the Internet. Amalgam of cyberspace and "hypochondriac."

cyberpunk: a subgenre of science fiction typified by gritty atmosphere and often a dystopian future. The seminal cyberpunk novel was William Gibson's Neuromancer (1984); a cyberpunk cult film was Blade Runner (1982). See steampunk.

cyberspace: the virtual world of the Internet and the World Wide Web. Cyberspace exists only online, not in physical space. The real world is meatspace.

cybersquatter: someone who reserves a second-level Internet domain (such as "mcdonalds.com") likely to be desired by another person or especially a company, then offers to sell the domain at a large profit. The practice, known as cybersquatting, was most common in the early days of the World Wide Web. See typo squatting.

D-cache: see data cache.

DAC: digital-to-analog converter. A device that converts digital signals into analog signals, usually as part of an interface. See ADC.

daemon: a program that runs in the background -- that is, invisibly or nearly so -- usually to provide a service, not a user application. An example of a daemon might be an antivirus checker or a printer-inkwell monitor. Daemons often load and run at startup and continue running until shutdown unless manually disabled. In Microsoft Windows, press Ctrl-Alt-Del to see a list of memory-resident daemons.

data cache: a block of fast memory on a microprocessor chip that temporarily holds data for a running program. The processor fetches data into the cache from main memory so it's immediately available when the program needs it. This saves time because data-cache memory (SRAM) responds much faster than main memory (DRAM). The program can also save data (the results of program instructions) into the data cache, where the data is available for subsequent processing. At some point, the processor "flushes" the cache by saving the data back to main memory.

data compression: any method that stores data in less space than the original data requires. There are many forms of data compression. For some applications (such as graphics and sound), lossy compression is tolerable -- there is some loss of quality, usually not perceptible or important. For other applications (such as text and numbers), only lossless compression is acceptable -- there can be no distortion of the original data.

data mining: sifting through raw data to find useful information. Special programs can automate the process.

data parallelism: performing a large task by reducing it to smaller chunks of data that a computer can process simultaneously. Data parallelism can yield huge gains in performance. However, it usually requires special programming, and not all tasks can be reduced in this manner. See program, instruction parallelism, massively parallel.

data sabbath: one day a week in which a person doesn't use a computer, PDA, or Internet-enabled cellphone. Some people extend their fasting to include all electronic devices.

database: a structured collection of information. See database engine, query engine.

database engine: a program that manages a database, allowing the storage and retrieval of information. The engine may be part of a larger program. See database, query engine, SQL.

datapath: an electrical pathway (a wire) that carries signals representing data. Datapaths connect the transistors inside chips and eventually lead to the contacts that carry signals on and off the chip.

datastream: the flow of data over a wire. See datapath.

daughtercard: a circuit board that plugs into a larger circuit board, usually to provide additional functions.

DDoS: distributed denial-of-service attack. A DoS attack launched on a target computer from multiple computers on a network. See cracker, DoS, hacker, zombie.

DDR-SDRAM: double-data-rate synchronous dynamic random-access memory. A type of memory chip that transfers data twice as fast as regular SDRAM. "Double data rate" means that two bits of data move on or off the chip on each wire during each bus cycle (by synchronizing with the leading and trailing edges of the clock signal).

debugger: a software tool that helps programmers find and fix the bugs in their programs. Modern development tools have built-in debuggers.

decoder: circuitry inside a microprocessor that figures out what a program instruction is supposed to do. For example, when the decoder finds a multiply instruction, it tells the appropriate function unit to multiply the numbers referenced by the instruction.

DeCSS: a simple computer program released in 1999 that defeats the copy protection on commercial DVDs encrypted with the Content Scrambling System. See CSS, crypto.

DES: Data Encryption Standard. A cryptography standard developed by the U.S. government in the 1980s. DES is widely used for protecting government and commercial data transmissions. Internet security protocols such as SSL and TLS use DES.

determinism, deterministic: the ability of a computer system to respond to input or interrupts in a timely, predictable, and repeatable fashion. Example: an anti-lock braking system must respond to the driver's actions on the brake pedal consistently and without delay. In contrast, clicking on a web-page hyperlink usually evokes a nondeterministic response.

development tool: a program that programmers use to write programs. Dev tools come in many forms, but often include a text editor (for entering source code), a compiler (for converting source code into object code), and a debugger (for finding and fixing bugs). See program, source code, object code, compiler, debugger.

Dhrystone: a synthetic benchmark program for measuring CPU performance. Although widely used and quoted, Dhrystone is not an adequate way to evaluate modern CPUs. Even the latest version (2.1) is such a small program that it fits entirely inside the caches of today's processors, thus eliminating the latency of memory I/O. Dhrystone results are expressed in MIPS (millions of instructions per second), but this doesn't necessarily correspond to native MIPS. Dhrystone MIPS are based on the performance of a VAX 11/780, a popular minicomputer introduced by DEC in 1978. The VAX 11/780 could execute 1 MIPS. With the Dhrystone test, 1,757 iterations are equal to one VAX MIPS.

dial-up connection: A connection to a remote network (such as the Internet) through an analog modem over an ordinary telephone line. It's a slower and less convenient connection than a direct digital hookup, such as an ISDN, DSL, or cable modem.

digicam: digital camera. It's a still camera, not a video camera or camcorder, although some digicams can record motion video and some camcorders can record still photos.

DIMM: dual inline memory module. A small circuit board with memory chips (RAM) that plugs into a socket on a motherboard. DIMMs are commonly used to install main memory in a PC. The memory interface is 64 bits wide. Earlier memory boards called SIMMs (single inline memory modules) were only 32 bits wide, so they had to be installed in pairs in PCs with 64-bit memory interfaces.

DIP switch: a tiny switch that manually controls some function of a computer device. (DIP stands for dual inline package.) DIP switches are commonly found on disk drives, printers, and motherboards.

Direct RDRAM: see DRDRAM or RDRAM.

disassembler: a software tool used by programmers to convert the executable object code of a program into assembly-language source code. This makes it easier to understand the function of the program when the original source code is not available. See object code, source code, assembler, assembly language.

disruptive technology: the latest buzzword for "revolutionary," which has become so trite and difficult to defend that almost nobody dares to use it anymore. Supposedly, a new technology is disruptive when it obsoletes everything else and rewrites the rules. Actual disruptive technologies are rare. See paradigm shift.

dithering: combining multiple colors to approximate an intermediate color that a system cannot reproduce exactly. Some computers, graphics cards, or programs have more limited color capabilities than others, so dithering allows them to display images with unavailable colors, albeit with compromises. Dithered colors often look different or grainy.

DLL: dynamic-link library, a program file that loads into memory on demand by another program. Programmers often divide large programs into a main program plus several DLLs to conserve memory when certain features supported by the DLL aren't needed. DLLs also allow programmers to add features or fix bugs without recompiling the main program. Sometimes DLLs conflict with each other in memory or don't respond in the way the main program expected, which can cause a crash.

domain: a region or range of addresses on a computer network. On the Internet, top-level domains include .com (commercial), .net (network), .org (organization), .mil (military), and .edu (educational institution). Second-level domains encompass a smaller range of addresses: intel.com, pacbell.net, pbs.org, army.mil, stanford.edu, etc. A third-level domain is even more specific: developer.intel.com. Inside these domains, local-area networks are divided into even smaller domains at the department level.

dongle: a small device that plugs into a computer I/O port. The most common purpose is for security -- the dongle allows a commercial software application to run. When you launch the application, it queries a chip in the dongle and quickly aborts if it doesn't receive the correct response.

DOS: (pronounced "doss") disk operating system. A low-level program that allows a computer to interact with mass-storage devices and (typically) other system devices. Although DOS is a generic term, in common usage it refers to MS-DOS (Microsoft DOS), the DOS found on IBM-compatible PCs.

DoS: denial of service. An attack that overwhelms a computer or network with requests for a service, usually for the purpose of disabling the target. For example, a malicious hacker might program a computer to repeatedly access the home page of a website in order to block the requests of other people who want to access the site.

dot com, dot-com: a business whose primary or sole presence is online.

dot commie, dot-commie: derogatory term for an employee of a dot-com company.

dot pitch: the distance between the tiny dots that form images on video screens. The smaller the dot pitch, the sharper the picture, although dot pitch isn't the only factor in image sharpness.

double-precision floating point: A floating-point number represented in a computer by 64 bits. Commonly used in financial, scientific, and technical applications. See extended-precision floating point, single-precision floating point.

downtime: the amount of time a computer is shut down for repair or maintenance. It's often used as an inverse measure of availability or reliability for servers -- the less downtime, the better. See uptime, five nines.

DRAM: dynamic random-access memory. DRAM is RAM that requires a periodic refresh signal to maintain data; SRAM (static RAM) does not. DRAM is also volatile; it loses all data when the power shuts off.

DRDRAM: Direct Rambus dynamic random-access memory. Also known as RDRAM, it's a proprietary memory standard controlled by Rambus that transfers data more quickly than ordinary DRAM.

DRM: digital rights management. Any method for protecting copyrighted digital content against unauthorized use.

DSP: digital signal processor. A type of microprocessor chip that's optimized for performing repetitive operations on large data sets, especially data converted from analog signals. DSPs are often used for communications, networking, multimedia, and other specialized tasks.

DSL: digital subscriber line, a special service that allows a personal computer to access the Internet over ordinary phone lines at much higher speeds than regular analog modems. DSL modems transmit and receive broadband digital signals over phone lines without interfering with voice communications. Rates vary widely, but usually range from 0.6 to 8 megabits per second. See ADSL.

DSLAM: digital subscriber loop access multiplexer. A bank of DSL modems and related equipment at a telephone company's central office that provides DSL service to customers.

DTD: document type definition. A file associated with an XML document that defines the format of the document's tags. XML is an extensible metalanguage that allows anyone to define new tags, so a DTD declares how those tags should work. An XML document can refer to a public DTD at any URL on the Internet.

dumpster diving: the practice of sifting through trash to find useful information. Malicious hackers can often discover passwords, account numbers, and other vital data by looking at the unshredded trash left in wastebaskets, recycling bins, and dumpsters. See social engineering.

DVD: Digital Versatile Disc. An optical-disc standard for mass storage that supersedes CD-ROMs. By using multiple layers and both sides of a disc, DVDs can store 4.7GB to 17GB of data, while CDs are limited to a maximum 700MB.

e-tailer: electronic retailer. An online merchant.

easter egg: a hidden software feature, usually frivolous. Easter eggs are typically invoked by pressing an undocumented key combination. The hidden "feature" may be as simple as the programmer's name, or as complex as an animated cartoon. Programmers often sneak easter eggs into the software without permission from management.

EDA: electronic design automation. Software tools used by engineers to design and test electronic circuits for chips.

eDRAM: embedded dynamic random-access memory. A type of DRAM integrated on logic chips, such as microprocessors. This requires special manufacturing techniques. Normally, the type of memory integrated on logic chips is SRAM. eDRAM is slower than SRAM but cheaper, because it needs only one transistor per memory cell instead of six transistors.

EEMBC: EDN Embedded Microprocessor Benchmark Consortium. An independent industry organization that defines, certifies, and publishes benchmarks for embedded processors. Benchmarks are certified by ECL (EEMBC Certification Laboratory).

EIDE: Enhanced Integrated Device Electronics, an industry-standard I/O interface for connecting disk drives to PCs. EIDE is a parallel-type interface that uses 40- or 80-wire ribbon cables. An EIDE interface can handle two devices, known as the master and the slave. Most PCs have two EIDE interfaces, known as the primary EIDE and secondary EIDE. This permits a total of four EIDE devices. The Ultra ATA-66, ATA-100, and ATA-133 standards require an 80-pin EIDE interface. EIDE is commonly called "IDE," which is actually an older version of the standard. It is being superseded by Serial ATA.

EISA: Extended Industry Standard Architecture, an improved 16-bit version of the ISA bus found in early IBM-compatible PCs. It's an internal system bus for adding expansion cards and other devices. EISA has been supplanted by PCI. See ISA, PCI, AGP, HyperTransport, 3GIO.

electromigration: the atomic erosion that occurs over time in an active electrical conductor. Electricity passing through a wire can actually wear down the physical structure of the wire, eventually breaking the circuit. Electromigration is becoming a larger problem as microprocessors use thinner wire traces at smaller process geometries.

electronic leash: derogatory term for a mobile phone or wireless pager provided by an employer, especially if the employer uses the device to contact the hapless worker at odd hours.

elegant: good design. Among geeks, to say that some hardware or software is "elegant" is to pay a high compliment. Antonym: kludge.

embedded processor: a microprocessor or microcontroller inside a non-PC device, such as an appliance, an industrial machine, or a vehicle.

embedded software: a computer program that runs inside a non-PC device, such as an appliance, an industrial machine, or a vehicle. Usually the device stores the program in a ROM or flash ROM chip.

emoticon: an amalgam of "emotion" and "icon," it's a combination of punctuation marks that express emotion, usually as part of an e-mail message or online posting. Some common emoticons are :-) smile :-( frown ;-) wink and :-0 surprise.

emulator: hardware or software that allows a computer to use programs designed to run on a different, incompatible computer. Emulators work by converting one type of program instructions into another while the program is running, or by translating operating-system calls so they can execute on the native operating system. There is always some loss of performance with emulation, due to the translation overhead, but an emulator may actually exceed the performance of the original computer when running on a much faster computer. See retrocomputing.

ENIAC: Electronic Numerical Integrator and Computer, the first electronic digital computer built in the U.S. ENIAC entered service in 1946 and was originally designed to calculate ballistic trajectories for artillery. The machine contained more than 19,000 vacuum tubes and weighed 30 tons. It was shut down for the last time in 1955. See Colossus.

Ethernet: a networking standard commonly used for local-area networks (LANs). It defines how data travels over the network between computers, network printers, and other devices. Regular Ethernet can transfer data at a maximum speed of 10Mbps; Fast Ethernet operates at 100Mbps; Gigabit Ethernet operates at 1Gbps. See network, LAN, NIC.

EULA: end-user license agreement, the legal contract you must agree to before using new software for the first time. Contrary to popular belief, you don't actually own the software you buy; the publisher licenses it to you. If you don't agree with or obey the terms of the license, the publisher can revoke it. EULAs are controversial and widely ignored.

exabit: 1,024 petabits, or 2^60 bits. Abbreviated eB. See bit, byte.

exabyte: 1,024 petabytes, or 2^60 bytes. Abbreviated E, EB, or eB. See bit, byte.

execution unit: a collection of circuits in a microprocessor that executes program instructions. There are different types of execution units for different types of instructions (integer, floating point, multimedia, etc.). Also called a function unit.

ExpressCard: the next-generation PCMCIA standard introduced in 2003. Plug-in cards come in two sizes: 34mm x 75mm and 54mm x 75mm. The I/O interface can support PCI Express and USB 2.0. See PCMCIA, PC Card, PCI Express, USB.

extended-precision floating point: A floating-point number represented in a computer by 80 bits. Available only with x86 processors and rarely used. See double-precision floating point, single-precision floating point.

fab: a chip fabrication plant. It's the place where the people in dust-proof "bunny suits" work. Building and equipping a modern fab can cost $1 billion to $3 billion. See fabless, fabrication, wafer.

fabless: describes a semiconductor company that doesn't have its own chip-fabrication plants (fabs). Fabless companies rely on independent foundries for manufacturing. An example of a fabless semiconductor company is Broadcom. See fab, fabrication, wafer.

fabrication: the process of manufacturing semiconductor chips. Fabrication processes are described by the smallest size of the elements they can etch into the semiconductor layer. Smaller is better, because it means the elements (mainly transistors and their connecting wires) can be packed more densely, so the chip can be smaller, which reduces manufacturing costs by fitting more chips on a wafer. Also, the chip can run at a lower voltage and/or higher clock speed while consuming less power. In the past, fabrication processes were measured in microns, such as "0.13 microns." The latest processes are measured in nanometers (nm), billionths of a meter. (0.13 microns = 130nm) For comparison, the width of a human hair is about 100 microns. See fab, fabless, wafer.

fanboy: a person (of either sex) who enthusiastically and sometimes irrationally supports a particular product, technology, company, or viewpoint. Generally not complimentary. Fanboys are like shills, but are unpaid. Sometimes spelled "fanbois."

Fast Ethernet: an upgraded version of the Ethernet networking standard that increases the maximum data-transfer speed tenfold, from 10Mbps to 100Mbps. See Ethernet.

FB-DIMM: fully buffered dual-inline memory module. A next-generation standard for dynamic random-access memory (DRAM) that uses a serial connection instead of the usual parallel connection to the memory chips. The goal is to improve overall memory performance while reducing the number of pins on the input/output interface. See DRAM, parallel interface, serial interface.

FCPGA: flip-chip pin grid array, a type of packaging for microprocessors that distributes the pins in a grid over the entire bottom of the chip instead of around the periphery. It also positions the die closer to the top of the chip for more efficient cooling. Intel uses FCPGA packaging for some Pentium III and Celeron processors that fit Socket 370. Other versions of those processors use PPGA packaging, also compatible with Socket 370.

featuritis: the tendency of products to accumulate more features over time, eventually becoming too confusing for users and unmanageable for the developers. Sometimes spelled "featureitis." Also known as "feature creep" or "creeping featurism."

femtocell: a small wireless base station in a house or office building that connects cellphones to the wireless phone network or to the Internet. Some femtocells are intended to remedy poor cellphone coverage; others provide faster Internet access.

fetch: to retrieve a program instruction or data from memory.

FIFO: first in, first out. Usually refers to the order in which data enters and leaves a buffer. See FILO and LIFO.

file format: The specific way data is arranged in a file. When a word processor saves a text file, for example, it usually doesn't save only the text -- it also saves formatting information. Different programs do this in different ways, which is why it's often difficult or impossible to exchange files between programs.

file server: a computer that stores files for client computers on a network. Centralized file storage is often more reliable than local file storage and makes it easier to keep track of files. See server.

FILO: first in, last out. Usually refers to the order in which data enters and leaves a buffer. See FIFO and LIFO.

firewall: a program that restricts network access, usually for security. The most common purpose of a firewall is protect a computer from unauthorized access over a network -- it prevents outsiders from browsing files on the computer, deleting data, planting viruses, and other mischief. Firewalls can also restrict outgoing network access, either for security or to keep employees from using an office computer for recreational purposes.

FireWire: See IEEE-1394.

firmware: software stored in nonvolatile memory. Firmware is usually system software required to operate a digital device. Examples include the BIOS in a PC and the audio decoding/playback software in a CD player. The nonvolatile memory may be ROM or flash memory; the latter may be user-upgradable.

five nines: a measure of computer availability or reliability equal to 99.999 percent uptime, or about 53 minutes of downtime per year. See uptime, downtime.

FLAC: Free Lossless Audio Codec. A free open-source program for compressing digital audio files without sacrificing quality. FLAC is an alternative to proprietary audio-compression formats such as MP3 and AAC. See AAC, MP3, codec, open source.

flame: a text message that angrily attacks another person or point of view. Flames can be private e-mail messages exchanged between people but usually are public messages posted in online discussion groups. Flames are often considered impolite or unfair attacks.

flame war: a series of angry and often insulting messages exchanged between two or more people, usually in an online discussion group. See flame.

flash memory: a type of nonvolatile computer memory often used in digital cameras, digital audio players, cellphones, and other devices needing compact mass storage. Flash memory is solid-state memory that stores data using transistors, but unlike DRAM and SRAM, it retains the data even after electrical power is shut off. Popular flash-memory cards for portable storage are Secure Digital, Compact Flash, Sony Memory Stick, and SmartMedia. See SSD, DRAM, SRAM.

floating point: a fractional number, such as 9.95 or 98.6. Computers have a more difficult time working with FP numbers than they do with integers (whole numbers), but the greater range of FP is required for some operations.

floppy: common term for a floppy disk.

floppy disk: a data-recording medium for computers. A floppy disk drive records information (programs and data) on the magnetic surface of a disk, which is similar to recording tape. Using a disk instead of tape allows random access to the data, instead of the sequential access that is characteristic of tape. Although most floppies are encased in a hard plastic shell for protection, the inner disk is a flexible magnetic material, so the term "floppy disk" still applies. Most floppies are 3.5 inches in diameter and store 1.44MB of data; SuperDisk floppies store 120MB. Older floppies were larger (5.25 and 8 inches) but stored much less data because of their lower areal densities.

FLOPS: floating-point operations per second. A common measure of performance for microprocessors and computers. One million FLOPS is one MFLOPS (megaflops); one billion FLOPS is one GFLOPS (gigaflops); one trillion FLOPS is one TFLOPS (teraflops); 1,000 trillion FLOPS is one PFLOPS (petaflops). See floating point, FPU.

folie à million: a delusion or fantasy shared by large numbers of people on the Internet. (Coined in 2002 by Tom Halfhill) It's derived from the psychological term folie à deux, or "madness of two" -- a mutually reinforced delusion shared by two unbalanced people. In the Internet age, believers of almost any fantasy or conspiracy theory can find support on a deranged website. See babble-rouser.

footprint: (1) the amount of physical space an object occupies on a flat surface; (2) the amount of storage space a program or file occupies in memory or on a disk.

forklift upgrade: an upgrade that replaces most or all of a system. An office worker who receives a new PC might describe the replacement as a forklift upgrade.

form factor: the size, shape, or physical design of an object. It's a largely useless technobabble term that can almost always be replaced with "size," "shape," or "design," or omitted altogether.

FORTRAN: FORmula TRANslator. FORTRAN is a programming language invented in the 1950s for scientific and technical computing. It excels at mathematical operations and is still used today.

foundry: an independent semiconductor manufacturer that makes chips for other companies. Vertically integrated companies like Intel have their own chip-fabrication plants (fabs), but some chip companies are "fabless" and rely on independent foundries for manufacturing. An example of a popular foundry is TSMC (Taiwan Semiconductor Manufacturing Corp.).

FP: see floating point.

FPS: first-person shooter. An electronic game in which the player directly controls a weapon that fires projectiles or energy beams; the onscreen character holding the weapon is often not seen. The graphics are usually pseudo-3D.

FPU: floating-point unit. A function unit in a microprocessor that executes floating-point instructions.

frame buffer: a block of memory for temporarily storing information displayed on the screen. Graphics cards usually have a large amount of fast memory for this purpose. The larger the frame buffer, the more resolution and colors a computer can display. 3D graphics cards may also store 3D objects and textures in a frame buffer.

frontside bus, front-side bus: the main system I/O (input/output) interface that connects a microprocessor to other system chips. Typically, it allows the main processor in a PC to communicate with the north-bridge part of the system chipset, which in turn connects to main memory (RAM), PCI devices, the AGP graphics channel, and the south-bridge part of the system chipset. The frontside bus also connects to the Level 2 (L2) cache unless the processor has a separate backside bus or integrated L2 cache. See system chipset, north bridge, south bridge, AGP, PCI, cache, RAM.

FSB: see frontside bus.

ftp: file-transfer protocol. A standard method of uploading and downloading files to and from a server over the telephone network. To use ftp, the client computer needs an ftp program. The server usually has an address such as ftp.server.com and often requires a registered username and password for access. "Anonymous ftp" means anyone can access the server by entering their e-mail address for the username and "anonymous" for the password.

FUD: fear, uncertainty, and doubt. FUD is a marketing tactic for selling a product by instilling negative emotions about a competitor's product. Examples: "Sure, you can buy a Mac, but then you won't be able to run any software" or "Do you really want to bet your company on Linux, an operating system written by anonymous hackers?" IBM was widely considered to be the champion of FUD until succeeded by Microsoft.

FUI: (pronounced "FOO-ee") fake user interface. Derived from GUI (graphical user interface), it's a slang term for anything that pretends to be a legitimate user interface, usually for malicious or commercial purposes. Examples: the deceptive password-entry screens sometimes displayed by virus programs, or the fake error-message boxes that pop up on some websites and are actually advertisements.

FWIW: "For what it's worth...." A brief way of introducing a remark, usually in an e-mail message or online posting. See IMHO.

function: a type of subroutine that generally returns a value when called. For instance, a function named SumAnnualSales might add up a company's sales for the year and return a dollar value to the calling program or routine. See procedure, method.

function unit: a related block of circuitry in a microprocessor that executes program instructions or performs other necessary operations. There are different types of function units for different types of instructions: integer, floating point, multimedia, etc.

gate: the most basic element of logic circuits in a microprocessor. There are several different kinds of gates that process signals in different ways. On average, a gate has about three transistors.

GBps: gigabytes per second. (Billions of bytes per second)

Gbps: gigabits per second. (Billions of bits per second)

geek: someone who is technically adept but socially inept. Synonym: nerd.

GFLOPS: giga (one billion) floating-point operations per second. A measure of arithmetic performance on a microprocessor or computer. Also called gigaflops. See FLOPS, floating point, FPU.

geometry transformation: A math-intensive process that creates the skeleton of a 3D object on a screen. It makes heavy use of floating-point numbers and matrix multiplication.

GIF: Graphics Interchange Format. A proprietary and popular file format for digital images. GIF uses a lossless compression method to reduce the file size without sacrificing quality. However, it is limited to 256 colors or grays, making it less suitable for color photos than JPEG format. See lossless, lossy, JPEG.

gigabit: 1,024 megabits, or 2^30 bits. Abbreviated Gb. See bit, byte.

Gigabit Ethernet: an upgraded version of the Ethernet networking standard that increases the maximum data-transfer speed by 100x, to 1Gbps. See Ethernet.

gigabyte: 1,024 megabytes, or 2^30 bytes. Abbreviated G, GB, or gB. See bit, byte.

gigaflops: one billion floating-point operations per second. A measure of arithmetic performance on a microprocessor or computer. Also called GFLOPS. See FLOPS, floating point, FPU.

GIGO: "garbage in, garbage out." The principle that bad data fed into a computer will result in bad answers coming out.

glitch: a bug or a transitory malfunction in hardware or software. Often this term describes a malfunction that unlike a bug is not repeatable, or is difficult to repeat.

GNOME: (usually pronounced "Guh-NOME") GNU Network Object Model Environment. It's a graphical user interface (GUI) for the GNU/Linux operating system that provides a Windows-like desktop for file management, system maintenance, and other common tasks. See http://www.gnome.org/.

GNU: (pronounced "guh-NOO") GNU's Not Unix. This self-referential acronym describes an operating system that looks and runs like Unix but is freely distributed by the GNU Project, which is sponsored by the Free Software Foundation. GNU is often combined with the Linux open-source kernel. GNU runs on a wide variety of microprocessor architectures.

gold master: programmer's term for a version of software deemed stable enough for shipment as a product. See alpha, beta, release candidate.

Googlebombing: creating web links that fool Google's Internet search engine into returning manipulated results for a particular query. Example: at one time, entering "failure" into Google returned an online biography of President George W. Bush.

Googleplex: originally, the vast server array in Silicon Valley that Google uses to index the Internet for its online search engine. Now that Google has built multiple server farms in different locations, the term often describes Google's main corporate campus in Silicon Valley. See server farm.

Gouraud shading: a method for making 3D objects in computer graphics appear naturally lighted. The computer calculates a lighting effect for each polygon vertex and interpolates the results across the entire face of the polygon.

GPIO: general-purpose I/O. Usually refers to pins on a microprocessor that are available to hardware designers for data input/output.

GPS: Global Positioning System, a method of identifying locations on Earth by triangulating signals from orbiting satellites. Originally developed for the U.S. military, GPS technology is now widely available in portable receivers for consumer applications.

graphics: images displayed or printed by a computer. They may be animated or static, color or monochrome. Modern graphics almost always consist of individually addressable pixels, but many older computers drew images with special characters. See graphics card, graphics chip, pixel.

graphics card: a circuit board that contains a graphics processor and memory chips. Usually, the board plugs into a slot inside a computer and handles many of the processing tasks required to display graphics on the screen. The graphics card accelerates those tasks by assisting the CPU. See AGP, CPU, graphics, graphics chip, memory.

graphics chip: a special processor that helps a computer draw graphics on the screen. The computer's CPU offloads many data-intensive tasks to the optimized graphics processor, which is also known as a graphics coprocessor or accelerator. See AGP, coprocessor, CPU, graphics, graphics card.

griefers: people who amuse themselves by interfering with the operation of online games, causing grief for legitimate players.

GUI: (pronounced "GOO-ee") graphical user interface. The windows, buttons, menus, scrollbars, and other graphical screen elements that allow a user to control a computer program. See command-line interface, user interface, skin.

hack: (verb) to work on a computer or program, sometimes with malicious intent, or (noun) a crude solution to a problem with a computer or program. Example (verb): "Someone tried to hack into our network." Example (noun): "I fixed the problem for now, but it's a hack." See hacker, hacktivist.

hacker: originally any skilled person who enjoyed tinkering with computers. Now the term usually refers to people who maliciously attempt to break the security of a network or computer. Such black-hat hackers may be countered by good white-hat hackers. See pen tester.

hacktivist: a "hacker-activist" -- a hacker who inflicts damage on computers, networks, or websites not for personal gain, but supposedly for a political or social cause. An example are the hacktivists who use denial-of-service attacks to disable the websites of multinational corporations and international trade organizations.

hard disk: a rewritable mass-storage device that uses a magnetic recording surface on a hard metal platter. Modern hard disk drives have several platters that spin at 3,600 to 7,200 rpm or even faster. The drive stores information (programs and data) on the platters for fast retrieval. A hard disk is usually built inside a computer and isn't removable without tools; sometimes it's called a fixed disk. See ATA, EIDE, IDE, Serial ATA.

hard drive: see hard disk.

HD: high definition. An international video standard that has more screen resolution than the first-generation standards used by television since the 1930s. HD resolution may vary, but the most common formats are 1280 x 720 pixels and 1920 x 1080 pixels.

HD-AAC: High-Definition Advanced Audio Coding. A new method of compressing digital music that attempts to retain full fidelity without compromising quality. HD-AAC was developed by Fraunhofer, the German company that also developed the MP3 codec. HD-AAC is backward compatible with AAC, the compression method commonly used on the Apple iPod. See AAC, codec, lossy, MP3, FLAC.

HD-DVD: High-Definition Digital Versatile Disc. (Also abbreviated HD DVD.) An optical-disc format that greatly increases the capacity of DVD-size (4.75-inch) discs. It uses blue lasers, whose shorter-wavelength light allows more data to be recorded in the same space. (Ordinary DVDs and CDs use red lasers.) Also, HD-DVD records data in multiple layers. Maximum available capacity is 30GB. Can be used to store video or computer data. HD-DVD has enough capacity and speed for HD video. However, in a format war that essentially ended in 2008, HD-DVD was defeated by its rival, Blu-ray. See Blu-ray, HD.

HDTV: high-definition television. See HD.

head crash: a disastrous event in which a read/write head of a hard disk drive falls out of alignment and collides with the surface of a spinning platter. It almost always damages the head and the platter, resulting in lost data.

headless server: a server without a video monitor. Installations that have many servers often share a monitor among several servers. Once a server is properly configured and running, it usually doesn't need a monitor, except for occasional maintenance.

heat sink: a structure that draws heat away from an electrical device. Heat sinks often have fins to radiate heat more efficiently. They are commonly used on modern CPU chips.

hexadecimal: a base-16 number system used in computer programming. There are 16 digits -- 0 through 9 plus A, B, C, D, and E. Hexadecimal 10 equals decimal 16. Programmers use hexadecimal numbers to represent binary numbers in a more compact form.

HomeRF: a wireless local-area network (WLAN) standard, primarily for home use. HomeRF WLANs operate in the 2.4GHz radio-frequency band and can carry both voice and data traffic. The data-transfer rate is 1Mbps to 2Mbps. A future version will hit 10Mbps, making it more competitive with IEEE 802.11b; the two standards are incompatible. See LAN, 802.11.

honeypot: a networked computer designed to trap malicious hackers. The honeypot computer -- often left deliberately vulnerable -- diverts the hacker's attention away from other computers on the network and allows administrators to intercept and possibly trace the hacker's communications.

hot plugging: the ability to attach or detach devices on an interface without turning off their power and without causing damage. Interfaces that support hot plugging also have software that recognizes the arrival of a new device and allows it to function without rebooting the computer. USB and FireWire are examples of interfaces with hot plugging.

hot spot or hotspot: (1) an access point for a wireless network; (2) a critical section of a computer program that can be accelerated by optimizing the program code. See 802.11, warchalking, Wi-Fi, WLAN.

HTML: hypertext markup language, a standard set of tags that defines how the contents of a web page should appear in a web browser. Most tags describe the appearance of text and the position of graphics. HTML standards are defined by a committee called the W3C (World Wide Web Consortium).

HTTP: hypertext transfer protocol, the industry standard for sending pages of text and graphics over the World Wide Web from servers to personal computers. It allows pages to link to other pages containing related material.

hub: a network device that joins cables together, often for the purpose of attaching additional devices to the network.

hyperlink: a reference from one web page to another, or from one location of a web page to another location on the same page. Also known as hypertext. Users can click on a hyperlink to view the referenced page or location. The hyperlink is encoded in HTML, a formatting language for web pages, and uses HTTP, a file-transfer protocol for web pages. For example, the following HTML hyperlink points to the home page of this website: Tom's home page. Here's what the HTML formatting looks like:

<A HREF="http://www.halfhill.com/">Tom's home page</A>

Hyper-Pipeline, hyperpipeline: Intel's term for the unusually deep superpipeline in the Pentium 4. See superpipeline.

hypertext: text on a computer screen that points to some other text or graphics stored elsewhere on the same computer or on a network. Hypertext provides a "live reference"--clicking on the hypertext automatically displays the referenced text or graphics. See hyperlink, HTML, HTTP, Internet, World Wide Web.

HyperTransport: an internal system bus for PCs developed by AMD and API Networks. HyperTransport is a serial-link bus that supports widths of 4, 8, 16, and 32 bits and data-transfer rates up to 12.8 gigabytes per second. It is backward compatible with PCI. See PCI, 3GIO, ISA.

I-cache: see instruction cache.

i-Mode: a proprietary wireless data protocol from NTT DoCoMo (Nippon Telegraph and Telephone Mobile Communications Network Inc., Japan). Based on CompactHTML, i-Mode allows mobile phones, pagers, PDAs, and other wireless communication devices to access special content on the Internet. A competing protocol is WAP.

I/O: input/output. See interface.

IA-64: Intel Architecture 64, a 64-bit microprocessor architecture owned by Intel. It's based on a design philosophy called EPIC (explicitly parallel instruction computing) created in partnership with Hewlett-Packard; EPIC, in turn, is based on VLIW. Intel designed IA-64 as the eventual successor to the x86 architecture. The first IA-64 processor was code-named Merced and is now known as Itanium.

IC: integrated circuit. A single piece of semiconducting material (usually silicon) that has multiple components (usually transistors).

IDE: Integrated Device Electronics, an industry-standard I/O interface for connecting disk drives to PCs. IDE is a parallel-type interface that uses 40- or 80-wire ribbon cables. An IDE interface can handle two devices, known as the master and the slave. Most PCs have two IDE interfaces, known as the primary IDE and secondary IDE. This permits a total of four IDE devices. Modern PCs use EIDE (Enhanced IDE), which is faster than the original IDE standard. The Ultra ATA-66, ATA-100, and ATA-133 standards require an 80-pin EIDE interface.

IEEE-1394: a high-speed serial peripheral interface for hooking up disk drives, digital-video cameras, and other devices to computers and to each other. Apple invented the technology and calls it FireWire. (Sony calls it iLink.) In 1995 it was adopted as a standard by IEEE, an industry organization. The IEEE-1394a standard allows data-transfer rates of 100, 200, and 400Mbps. The future 1394b standard will scale to 800Mbps and higher rates.

iLink: Sony's brand name for the IEEE-1394 interface, also known as FireWire.

IM: instant messaging. A service that allows people to send brief text messages that instantly appear in a small window on the recipient's computer screen.

IMAP: Internet Message Access Protocol, a worldwide standard that defines how computers can retrieve e-mail stored on mail servers. IMAP is a popular standard supported by most mail clients, including Microsoft Outlook, Netscape Messenger, and Eudora. Another standard is POP3.

IMHO: "In my humble opinion...." A brief way of introducing a remark, usually in an e-mail message or online posting. See FWIW.

infinite loop: a programming error that causes the computer to circle endlessly through the same sequence of program instructions. Sometimes there's no escape but to force the program or even the whole computer to shut down.

ink-jet printer: a computer peripheral that prints text and graphics by depositing tiny droplets of ink on the paper or other printing material.

instruction cache: a block of extra-fast memory on a microprocessor chip that temporarily holds instructions for a running program. The processor fetches instructions into the cache from main memory so they are immediately available when the program needs them. This saves time because cache memory (SRAM) responds much faster than main memory (DRAM). If the program cannot find the instructions it needs in the cache, it "flushes" part of the cache and reloads it with the required instructions from main memory.

instruction parallelism: performing a large task by reducing it to smaller streams of program instructions that a computer can process simultaneously. Instruction parallelism can yield huge gains in performance. However, it may require special programming, and not all tasks can be reduced in this manner. See program, data parallelism, massively parallel.

instruction set: the program instructions a microprocessor can execute. Different microprocessor architectures have different instruction sets, which is why they usually can't run the same software. See ISA.

integer: A whole number, such as 1, 2, 3, etc. Computers can manipulate integers much faster than they can manipulate floating-point numbers (fractions), but floating-point numbers have greater dynamic range.

integration: adding more functions to a chip. Over time, advances in manufacturing technology make it possible to squeeze more transistors onto a silicon chip. Engineers can use those transistors to add more functionality. Devices that used to be built as separate chips can be combined into a single chip.

interconnect layers: metal layers in a silicon chip that wire the transistors together. Chips may have several interconnect layers made of aluminum, but the most advanced processors have faster layers made of copper.

interface: a connection between two or more electronic devices, usually for transferring data. There are many different kinds of interfaces for different purposes.

Internet: a worldwide network of computer networks based on the TCP/IP standard. Originally created by the U.S. Department of Defense to link networks at government installations and universities, the Internet evolved into a worldwide commercial network in the 1990s. The World Wide Web uses the Internet to transmit hyperlinked pages of text and graphics using HTTP. See HTTP, TCP/IP, network, newsgroup, World Wide Web.

interrupt: a signal or instruction that causes a microprocessor to respond to new input, usually by executing a different instruction stream. See context switch, determinism.

intranet: a restricted-access network based on the TCP/IP standard. Users access the network with a web browser, as they do with the World Wide Web, but access usually requires a password available only to the employees of a company or some other group of people.

I/O: input/output. Sending and receiving electrical signals, which usually carry data.

IP: (1) Internet Protocol; (2) intellectual property. Internet Protocol is a low-level standard for transferring packets of data over the Internet. Intellectual property is proprietary hardware, software, or content that may be protected by patents or copyrights.

IP address: Internet Protocol address. A 32-bit (IPv4) or 128-bit (IPv6) number that identifies a computer on a TCP/IP network, such as the Internet. Computers use IP addresses to exchange data; for example, the address tells a web server which PC on the Internet requested a web page. Every computer attached to the Internet needs a unique IP address, although it's common for computers on a LAN to share external IP addresses through a router. See Internet, LAN, router, TCP/IP.

IPC: instructions per cycle. A measure of efficiency for microprocessors; the higher the IPC, the better.

IRC: Internet relay chat. A protocol that uses the Internet for real-time text-only chat sessions between users.

ISA: (1) instruction-set architecture; (2) Industry Standard Architecture. The first term refers to the distinguishing characteristics of a microprocessor architecture, such as the instruction set, register file, and byte ordering. The second term refers to an internal system bus for PCs that IBM introduced in 1981. It was also known as the XT bus or AT bus (named after early IBM PCs). The ISA bus was upgraded to EISA (Extended ISA) and later supplanted by PCI. See EISA, PCI, PCI Express.

ISDN: integrated services digital network. A telephony service that allows a computer to access the Internet over ordinary phone lines at higher speeds than regular analog modems. ISDN modems transmit and receive middleband digital signals over phone lines without interfering with voice communications. Transmission speeds are usually 56Kbps to 128Kbps.

ISP: Internet service provider. A company that provides access to the Internet. In the U.S., a monthly fee of $20-$25 usually buys unlimited dial-up access over ordinary telephone lines. See ADSL, broadband, cable modem, DSL, Internet, modem.

Itanic: derogatory name for Intel's Itanium processor, code-named Merced. Derived from "Itanium" and "Titanic." (Coined in 1999 by Kraig Finstad)

j-mail: unwanted e-mail, usually mass-mailed advertising. "J-mail" is derived from "junk mail" and is more commonly known as spam. ("J-mail" was coined in the 1980s by Arlan Levitan)

jaggies: the visibly jagged edges of pixels in a digital image, especially apparent when viewing the square or rectangular pixels along the edge of a curved line. Smaller pixels (higher resolution) is the cure; anti-aliasing helps, too. The jaggy effect is also called "staircasing." See anti-aliasing, pixel.

Java: an object-oriented programming language introduced in 1995 by Sun Microsystems. It has strong support for networking. It's also unusual in that it's a virtual platform as well as a language: Programs written in Java can run on many different computers without porting or recompiling.

JavaScript: a web-page scripting language invented by Netscape Communications. Originally called LiveScript, it bears only a superficial resemblance to Java and is not a full-fledged programming language. JavaScript adds functionality to HTML forms and other types of web pages. See AJAX, HTML.

JIT: just-in-time compiler. Often used with Java, it's a compiler that converts some form of intermediate program code into object code that a native platform can execute. The JIT compiler translates the code when the program runs -- in contrast to a regular compiler, which programmers use during development.

JPEG: Joint Photographic Experts Group. An international organization that defines standards for digital photography. In general usage, JPEG refers not to the organization but to a popular file format for digital images. Almost all digital cameras use JPEG. It's a lossy compression format, meaning it sacrifices some image quality to reduce the file size. See lossy, lossless, codec.

jumper: an electrical connection that closes a circuit, usually to enable some function in a computer device. It's really a crude on/off switch. The motherboards and disk drives in PCs often have jumpers for adjusting configuration settings.

K7: AMD's code name for the Athlon x86-compatible microprocessor. See Athlon.

Katmai: Intel's code name for Pentium III, a P6-series x86 microprocessor chip introduced in March 1999. Pentium III was the first chip to include SSE (Streaming SIMD Extensions), 70 new instructions for speeding up 3D graphics and other operations.

KBps: kilobytes per second. Don't confuse with Kbps.

Kbps: kilobits per second. Don't confuse with KBps.

KDE: K Desktop Environment. (The "K" doesn't stand for anything.) A graphical user interface (GUI) for Linux that provides a Windows-like desktop for file management, system maintenance, and other common tasks.

kernel: a low-level component of an operating system that's primarily responsible for allocating the computer's resources, such as memory. An example of a kernel is Linux.

killer app: an application so compelling that it alone justifies the purchase of a computer or establishes a new computer platform. Spreadsheet programs were the killer app for early IBM-compatible PCs; desktop publishing was the killer app for the Macintosh.

kilobit: 1,024 (2^10) bits. Abbreviated Kb. See bit, byte.

kilobyte: 1,024 (2^10) bytes. Abbreviated K, KB, or kB. See byte.

kludge: (pronounced "klooj") a poor or overcomplicated design. Among geeks, to say that a program or a hardware device is a kludge or kludgy is an insult. Antonym: elegant.

KNI: Katmai new instructions, the prerelease code name for SSE. These are the 70 new instructions introduced by Intel in the Pentium III processor that was known as Katmai before its release in March 1999. The new instructions accelerate 3D graphics and other multimedia tasks. KNI also adds eight new registers to the x86 architecture.

L1 cache: see Level 1 cache.

L2 cache: see Level 2 cache.

L3 cache: see Level 3 cache.

LAN: local-area network. A private computer network within a building or group of buildings. Most LANs are wired with cables hidden in walls and ceilings, although wireless connections are also available.

LAN party: a social gathering in which everyone brings a computer and hooks the machines together in a temporary network, usually to run a multiplayer computer game.

laser printer: a computer peripheral that prints text and graphics by using the heat of a laser to bond finely ground powder with the paper or other printing material.

LCD: liquid-crystal display. This technology uses the liquid state of some crystalline structures to form monochrome or color images on a flat-panel screen. There are many variations of LCD technology.

Level 1 cache: the fastest cache memory available to a microprocessor. It consists of on-chip SRAM cells. Also known as primary cache.

Level 2 cache: the second-fastest memory available to a microprocessor (second only to the Level 1 cache). It may consist of SRAM chips near the processor, although many recent processors have on-chip L2 caches. Also known as secondary cache.

Level 3 cache: the third-fastest memory available to a microprocessor (following the Level 1 and Level 2 caches). L3 cache is not common, but when it's present, it usually consists of SRAM chips near the processor. However, a few processors have integrated on-chip L3 caches.

LIFO: last in, first out. Usually refers to the order in which data enters and leaves a buffer. See FIFO and FILO.

Linux: (pronounced "LIN-icks") a kernel for the GNU operating system that looks and runs like Unix but is written in free open-source program code. It runs on a variety of microprocessor architectures. See GNU, kernel, Unix.

Lisa: a personal computer introduced by Apple in 1983 that was the first attempt to popularize the graphical user interface (GUI). Although the Lisa was a groundbreaking computer, it was expensive and underpowered, and it never achieved widespread success. A year later, Apple introduced the Macintosh, which was somewhat less powerful than the Lisa but much less expensive. The Mac improved on the Lisa's GUI and succeeded in establishing the GUI as the dominant user interface for personal computers.

little endian, little-endian: a multibyte value that begins with the least significant byte (LSB) stored at the lowest memory address. The opposite is big endian. Microprocessors are either big endian or little endian, depending on how they store multibyte values. For example, the Intel x86 architecture is little endian. Some architectures can handle both formats and are bi-endian.

LOL: "laughing out loud." A brief response to a humorous e-mail message or online posting. See ROFL.

LON: LAN-on-motherboard. A motherboard with an integrated network interface, so a network interface card (NIC) isn't required. See LAN, motherboard, network, NIC.

LongHaul: a power-saving feature of some VIA x86 microprocessors. LongHaul saves power by automatically reducing the chip's supply voltage and clock frequency when the demand for processing power is low. LongHaul automatically raises the voltage and frequency when the demand for performance is higher. See LongRun, PowerNow, SpeedStep.

LongRun: an innovative power-saving feature pioneered by Transmeta's microprocessors. LongRun saves power by automatically reducing the chip's supply voltage and clock frequency when the demand for processing power is low. LongRun automatically raises the voltage and frequency when the demand for performance is higher. See LongHaul, PowerNow, SpeedStep.

look and feel: the visual appearance and operation of a graphical user interface (GUI). There are several styles of GUIs, such as Microsoft Windows, the Macintosh, Motif (for Unix), etc.

loop: a programming structure that repeatedly executes one or more program statements a specified number of times or until a certain condition is met. Almost all programming languages have multiple ways of creating loops.

lossless: describes a method of compressing digital data (usually audio, video, or graphics) that preserves the original quality of the data. Examples of popular lossless compression methods are GIF and TIFF (for graphics) and FLAC (for audio). See lossy, codec, GIF, JPEG, AAC, MP3.

lossy: describes a method of compressing digital data (usually audio, video, or graphics) that sacrifices some quality to achieve greater compression. Examples of popular lossy compression methods are AAC and MP3 (for audio) and JPEG (for graphics). See lossless, codec, AAC, MP3, JPEG.

LSB: least significant byte or bit. In a multibyte value, it's the byte that has less value than the next most significant byte (MSB). The position of the LSB depends on whether the architecture is little endian or big endian. Within a byte, the least significant bit is the rightmost bit.

lurker: someone who reads messages posted in an online forum, but who never posts.

luser: (pronounced "loser") derogatory term for computer users, sometimes used by programmers who have a low opinion of the people who use their software.

MAC: (1) multiply-accummulate; (2) media-access controller. The first term refers to the MAC instructions used by DSPs and some microprocessors to multiply and add numbers together in a single operation. The second term refers to a chip (or part of a chip) that allows a computer to communicate over an interface with a peripheral or network.

machine code: the actual program code a computer executes. Programmers write in source code, which a compiler converts into machine code (also called object code, executable code, or binary code). Machine code is specific to a particular microprocessor architecture, so a program compiled for an x86 processor won't run on a PowerPC processor or vice versa.

Macintosh: a personal-computer platform introduced by Apple in 1984. The Mac was the first popular platform with a GUI operating system. Although based on Apple's earlier Lisa and some computers built at Xerox PARC (Palo Alto Research Center), the Mac was a highly original design that pioneered many new features. The first Macs used Motorola 68000-family processors; in 1994, Apple introduced the first Power Macs based on IBM/Motorola PowerPC processors, while retaining backward compatibility with 68000 software. Apple tried licensing the Mac platform to other companies in the 1990s, but later discontinued the licenses and is once again the only supplier of Macs.

macro: a script of commands that automatically carries out a series of tasks. Macros typically automate repetitive tasks in spreadsheet programs, database programs, word processors, and other types of software. They are really small programs.

mainboard: another term for motherboard. Mainboard seems to be the more popular term outside the USA. Apple refers to Macintosh motherboards as the "main logic board."

mainframe: a large computer designed for running a sizable business or organization. Traditional mainframes filled entire rooms and were built with expensive custom components. Today's mainframes are usually smaller and built with off-the-shelf chips, including microprocessors. Often, modern mainframes are called enterprise servers. Larger machines designed for heavy-duty number crunching are called supercomputers. See microprocessor, minicomputer, supercomputer.

malware: malicious software. See cracker, hacker, virus, worm, Trojan horse, spoof, zombie.

manycore: a chip design that integrates many microprocessor cores on a single chip. A manycore chip has more processor cores than a multicore chip, but fewer cores than a massively parallel chip. There is no hard rule, but a chip with 16 or more cores may be described as a manycore design. See multicore, microprocessor, massively parallel.

massively parallel: a type of computer design that coordinates numerous microprocessors to perform a single task. The task must be reducible to pieces that can execute independently (or nearly so) on the microprocessors. There is no hard rule, but a system with at least 64 microprocessors operating in parallel may be called a massively parallel computer. Sometimes, the microprocessor cores are integrated on a single chip to create a massively parallel processor. See multicore, manycore, supercomputer, microprocessor, data parallelism, instruction parallelism.

matrix multiplication: A mathematical process, commonly used by 3D graphics programs, in which the computer multiplies and adds two sets of numbers together. One set is the coordinate matrix and the other set is the transform matrix. The result of matrix multiplication is a new coordinate matrix.

MBps: megabytes per second. Don't confuse with Mbps.

Mbps: megabits per second. Don't confuse with MBps.

meatspace: slang term for the real world, as opposed to cyberspace.

megabit: 1,024 kilobits, or 2^20 bits. Abbreviated Mb. See bit, byte.

megabyte: 1,024 kilobytes, or 2^20 bytes. Abbreviated M, MB, or mB. See bit, byte.

megaflops: one million floating-point operations per second. A measure of arithmetic performance on a microprocessor or computer. Also called MFLOPS. See FLOPS, floating point, FPU.

megapixel: one million pixels. It's commonly used to describe the resolution of digital cameras. If the camera's sensor can resolve at least one million pixels (for example, 1280 x 1024), then it's a megapixel camera. The more pixels, the more detailed the image.

memory: in the broad sense this term can describe any data-storage device for a computer system, but usually it refers to the memory chips that temporarily store programs and data while the computer is running. Most memory is volatile, so the system needs some form of mass storage to permanently store programs and data files, which are copied into memory on demand. See RAM, DRAM, SRAM, RDRAM, volatile.

metalanguage: A language for designing other languages. XML is an example of a metalanguage for designing document markup languages. It's derived from SGML, a more complete metalanguage.

method: a subroutine in object-oriented languages. Objects have methods that perform tasks. An object named Circle might have methods named draw (which draws a circle on the screen) and fill (which fills the circle with color). The instruction Circle.draw() would call the Circle object's draw method. See function, procedure.

MFLOPS: one million floating-point operations per second. A measure of arithmetic performance on a microprocessor or computer. Also called megaflops. See FLOPS, floating point, FPU.

memory controller: a chip (or part of a chip) that manages the interface between a microprocessor and main memory.

microarchitecture: the internal design of a microprocessor. Not to be confused with the processor's architecture, which defines its compatibility. Two chips with different microarchitectures but the same architecture can run the same software.

microcomputer: a computer based on a microprocessor chip; usually a personal computer. "Microcomputer" was a popular term in the 1970s and early 1980s, because it distinguished microprocessor-based computers from their larger minicomputer and mainframe-computer brethren. By the late 1980s, the term gave way to "personal computer" (or simply "PC") and is rarely used today. See microprocessor, PC, minicomputer, mainframe.

microcontroller: a microprocessor for embedded systems that typically has on-chip memory and peripherals. It some cases a microcontroller can function as a self-contained system without additional chips. Microcontrollers are commonly found in non-PC devices, such as appliances, industrial machines, and vehicles. Often, they are based on older CPUs no longer considered powerful enough for PCs.

microprocessor: the primary chip that performs arithmetic and logical functions in a computer. It executes program instructions and stores results in memory. All other chips basically assist the microprocessor; for instance, memory chips store the program instructions and data that the processor manipulates. See architecture, CPU, microarchitecture, microcontroller.

microprocessor core: (1) the central part of a microprocessor chip that carries out program instructions; (2) a microprocessor design ready for integration on a chip, usually in combination with other components, such as peripherals and memory. The first term generally refers to a CPU's microarchitecture; the second term refers to licensable IP (intellectual property).

middleband: in computer terminology, an Internet connection that's faster than an ordinary analog telephone modem but slower than a broadband connection. An ISDN connection (up to 128Kbps per second) is considered middleband. Cable modems, DSL modems, and T1 lines all provide broadband speeds (about 1Mbps or faster). An analog modem (up to 56Kbps) is considered a narrowband connection. See broadband, cable modem, modem, narrowband.

mindshare: desirable public awareness or recognition. Example: "Yahoo has incredible mindshare among web surfers." Derived from "market share."

minicomputer: obsolete term for a computer that was smaller and less expensive than a mainframe computer, but larger and more expensive than a desktop computer. Whereas older mainframes often filled whole rooms, minicomputers were about the size of refrigerators. Minicomputers have been supplanted by smaller mainframes and especially by microprocessor-based servers. See mainframe, microcomputer, server, microprocessor, PC.

MIS: management information systems. It's the department that installs and maintains computers at medium- to large-sized companies. Also known as the IT (information technology) department.

mispredict penalty: the penalty in wasted clock cycles that a microprocessor pays for wrongly guessing the outcome of a conditional branch. The processor must discard the results of any speculatively executed instructions and flush its pipelines of speculatively fetched instructions.

MMX: multimedia extensions, though Intel insists it's just a brand name. Introduced in early 1997, MMX consists of 57 new instructions that speed up multimedia tasks in x86-compatible microprocessors. It's also supported by chipmakers AMD, Transmeta, and VIA.

mo jo: mobile journalist. This trendy term defines a modern journalist adept in multiple skills, such as writing (for print or web), still photography, and videography.

mobo: slang for motherboard.

modem: modulator/demodulator. A device that allows computers to link over a telecommunications channel by converting digital data into electrical or radio signals and reconverting those signals back into digital data. Modems may operate over land lines (telephone wires or television cables) or wirelessly by radio. Modems operate at a variety of speeds, depending on the bandwidth of the telecommunications channel and their efficiency. See broadband, cable modem, middleband, narrowband.

Moore's law: a general principle, first expressed by engineer Gordon Moore, that the number of components integrated on affordable semiconductor chips increases at a relatively steady rate. When Moore initially described this principle in 1965, he predicted that component counts would double every 12 months. In 1975, he amended his prediction, saying that component counts would double every 24 months. Other people have split the difference to predict a doubling every 18 months. Moore's law isn't a real scientific law; it's a general guideline tracing the progress of integrated circuits. Actual progress varies widely from Moore's predictions, but few people understand Moore's law, so it is widely misquoted and misinterpreted.

motherboard: the main system board inside a computer. Usually, all the major components are attached to the motherboard, including the microprocessor chip, the core-logic system chipset, RAM chips, expansion slots, power supply, etc. Also known as a mainboard or mobo.

mouse: an input device for controlling an on-screen cursor. It's usually a separate peripheral with a roller ball and one or more buttons, but its functions may be carried out by a pressure-sensitive pad, a trackball, a light pen, or some other contrivance.

MP3: MPEG-2 Layer-3, a digital-audio standard that's part of the MPEG-2 audio/video standard. It defines a way to compress and decompress digital audio data to save memory, disk space, and bandwidth. Popular music is often stored in MP3 format for distribution over the Internet. See AAC, FLAC, codec, lossy.

MPEG: Moving Pictures Experts Group, an industry organization that devises standards for audio and video compression. Often mistaken as "Motion Pictures Experts Group."

MPEG-2, MPEG-3, MPEG-4: (also MPEG2, MPEG3, MPEG4) audio/video standards formulated by the Moving Pictures Expert Group and widely supported throughout the industry. They define methods for compressing and decompressing audio and video data to conserve resources in computers, digital TVs, and other multimedia devices.

MSB: most significant byte or bit. In a multibyte value, it's the byte that has greater value than the least significant byte (LSB). The position of the MSB depends on whether the architecture is little endian or big endian. Within a byte, the most significant bit is the leftmost bit.

multicore: two or more microprocessor cores on one chip. Until recently, almost all microprocessor chips contained a single processor core; designs with multiple cores are becoming commonplace. See core, microprocessor, manycore, massively parallel.

multidrop bus: a data-transfer interface that connects two or more devices. Technically, all buses are multidrop buses if they support more than two devices. A "bus" that supports only two devices is a point-to-point channel.

multiprocessing: running software on multiple computers, microprocessors, or processor cores. If the workload is divided evenly, it's symmetric multiprocessing; otherwise, it's asymmetric multiprocessing. See multicore, affinity.

munge: (pronounced "muhnj") to scramble or damage some data. Example: "When my computer crashed, it munged my spreadsheet."

NAN: neighborhood-area network. Usually a wireless 802.11b network for sharing Internet access among several households. See 802.11, LAN, WAN, Wi-Fi, WLAN.

narrowband: in computer terminology, an Internet connection that's slower than middleband or broadband connections. An analog modem (up to 56Kbps) is considered a narrowband connection. An ISDN connection (up to 128Kbps) is considered middleband. Cable modems, DSL modems, and T1 lines all provide broadband speeds (about 1Mbps or faster). See broadband, cable modem, middleband, modem.

NAS: network-attached storage. A stand-alone mass-storage device (disk drive, tape drive, or CD-ROM jukebox) attached to a computer network without being part of a server. NAS can be more economical and reliable than file servers for network storage and backups. See SAN.

native code: program code written to run on a specific platform. Nonnative code may be able to run on the same platform with help from an emulator. See code, emulator, object code, source code.

native platform: the combination of an operating system and a microprocessor architecture that determines what kind of software can run on a particular computer. An example of a platform is Windows XP on an Intel x86-compatible processor. The Macintosh is a different platform because it runs Mac OS on a PowerPC processor. Each is a native platform to itself but is nonnative to other platforms.

NDA: nondisclosure agreement. A contract in which the signer promises not to divulge certain information about a company, product, or service. Companies often require journalists, analysts, and business partners to sign NDAs before disclosing advance information about something the company is working on. Usually, NDAs expire on the date of the public announcement.

nerd: someone who is technically adept but socially inept. Synonym: geek.

net neutrality (network neutrality): enforcing equal delivery priority for all data packets traversing the Internet, regardless of the nature of the packets or the effect on network traffic. Under this policy, government regulations would require Internet routers to always deliver packets in the exact order in which the routers received them, no matter what the contents, sources, or destinations of the packets. Example: earlier-arriving packets carrying e-mail would get higher priority than later-arriving packets carrying live audio/video streams or online gaming traffic, even if this priority degrades the audio/video or gaming experience. Likewise, government regulations would prohibit Internet providers from charging their customers higher rates for higher-priority delivery. The alternative to net neutrality is "traffic shaping," which allows Internet providers to optimize network traffic by handling packets differently. See Internet, network, packet, packet switching, traffic shaping.

netizen: network citizen. Someone who participates in virtual communities on the Internet. The original meaning implied that everyone who uses the Internet shares some common interests, such as concern for online privacy and open access to information -- a concept now largely discredited.

network: two or more computers linked together for mutual communication. The link can be wired or wireless. See Ethernet, LAN, NIC.

newbie: a new, and usually clueless, user. Often derogatory, but not always.

newsgroup: an online "bulletin board" where people can post and read text messages, organized by topic. There are thousands of topical newsgroups. They operate on Internet servers and are one of the oldest applications of the Internet, predating the web. In the 1990s, newsgroups largely supplanted the similar bulletin-board systems operated on individual computers, which were accessed directly by dial-up connections instead of on the Internet. See Internet, BBS, World Wide Web.

NIC: network interface card (pronounced "nick"). An expansion card that plugs into a motherboard slot and allows connection to a network. See Ethernet, interface, LAN, motherboard, network.

NIH: "not invented here." An attitude biased against ideas, products, or technologies from an outside source. Example: "Even though it's better, our engineers won't use that technology because it's NIH."

nonvolatile: see volatile.

north bridge: the part of a PC system chipset that connects directly to the microprocessor on the system I/O or frontside bus. The north bridge may have interfaces that connect to main memory (RAM), the AGP graphics channel, PCI bus, and south-bridge part of the system chipset. The north bridge may also connect to the microprocessor's Level 2 cache if the processor doesn't have a separate backside bus or integrated on-chip L2 cache.

nybble: half a byte, or four bits. Also spelled "nibble." Programmers sometimes manipulate these small quantities, though not often these days. See byte and bit.

object: a structure in an object-oriented program that consists of variables and methods. Analogous to a subroutine in procedural languages.

object code: the actual program code a computer executes. Programmers write in source code, which a compiler converts into object code (also called executable code, binary code, or machine code). Object code is specific to a particular microprocessor architecture, so a program compiled for an x86 processor won't run on a PowerPC processor or vice versa.

OC-1, OC-3, OC-12, OC-48, OC-192: Optical Carrier transmission standards for fiber-optic networks. See SONET.

OCR: optical character recognition, the process of converting the digitized image of text into editable text. OCR software usually starts with a digitized image of text captured by a scanner, then analyzes the image to identify individual characters, and finally converts those characters into their ASCII equivalents.

octal: a base-8 number system used in computer programming. There are eight digits, 0 through 7. Octal 10 equals decimal 8. Programmers use octal numbers to represent binary numbers in a more compact form. Hexadecimal is more popular than octal for this purpose.

ODF: Open Document Format. A proposed standard for defining the file formats of electronic documents, such as those created by word processors and spreadsheets. ODF allows different programs on any computers to easily share documents. ODF is based on XML and is supported by the Open Office software suite. Not to be confused with Microsoft's rival format, OOXML, implemented in Microsoft Office 2007. See OOXML, XML.

OEM: original equipment manufacturer. A manufacturer that sells equipment to another company, which in turn resells the equipment after repackaging or rebranding it.

OLPC: One Laptop Per Child. A nonprofit project sponsored by the faculty of the Massachusetts Institute of Technology (MIT) Media Lab. OLPC's goal is to manufacture sturdy laptop computers that can sell for about $100 in emerging markets for use by schoolchildren. The vision is to spread education and Internet access throughout the world.

OOO: out of order (sometimes written O-O-O). To increase performance, some microprocessors can execute program instructions out of their original order in the instruction stream before retiring the results in order. See out-of-order execution.

OOP: object-oriented programming. OOP is not a programming language, but rather an approach to designing languages and programs. Object-oriented programs consist of independent modules that interact with each other in carefully defined ways. OOP is intended to speed development and improve reliability by encouraging code reuse.

OOXML: Office Open eXtensible Markup Language. A standard way of defining electronic documents, such as those created by word processors and spreadsheets, that allows different programs to share the documents while preserving the formatting. Microsoft created OOXML by extending XML. The Microsoft Office 2007 software suite supports OOXML. Not to be confused with Open Document Format (ODF), a rival formatting standard proposed by other companies and supported in the Open Office software suite. See ODF, XML.

open source: software wh