- API
-
Application Programming Interface.
The
set of procedure calls that communicates with a linkable procedure
library or an operating-system kernel or the combination of
both.
- BSD
-
Berkeley System Distribution
; also
Berkeley Software Distribution
; sources are
ambiguous. The generic name of the Unix
distributions issued by the Computer Science Research Group at the
University of California at
Berkeley between
1976 and 1994, and of the open-source Unixes genetically descended
from them.
- CLI
-
Command Line Interface.
Considered
archaic by some, but still very useful in the Unix world.
- CPAN
-
Comprehensive Perl Archive Network.
The
central Web repository for
Perl modules and extensions.
-
GNU
-
GNU's Not
Unix!
The recursive acronym for the Free Software
Foundation's project to produce an entire free-software clone of
Unix. This effort didn't completely succeed, but did produce many of
the essential tools of modern Unix development including Emacs and
the GNU Compiler Collection.
- GUI
-
Graphical User Interface.
The modern
style of application interface using mice, windows, and icons
invented at Xerox PARC during the 1970s, as opposed to the older
CLI or roguelike styles.
- IDE
-
Integrated Development Environment.
A GUI workbench for developing code, featuring facilities like
symbolic debugging, version control, and data-structure browsing.
These are not commonly used under Unix, for reasons discussed in
Chapter15.
-
IETF
-
Internet Engineering Task Force.
The
entity responsible for defining Internet protocols such as
TCP/IP. A loose, collegial organization mainly of technical
people.
- IPC
-
Inter-Process Communication.
Any
method of passing data between processes running in separate
address spaces.
-
MIME
-
Multipurpose Internet Mail Extensions.
A
series of RFCs that describe standards for embedding binary and
multipart messages within RFC-822 mail. Besides being used for
mail transport, MIME is used as an underlevel by important
application protocols including HTTP and BEEP.
-
OO
-
Object Oriented.
A style of programming
that tries to encapsulate data to be manipulated and the code that
manipulates it in (theoretically) sealed containers called objects.
By contrast, non-object-oriented programming is more casual about
exposing the internals of the data structure and code.
- OS
-
Operating System.
The foundation software of a
machine; that which schedules tasks, allocates storage, and presents a
default interface to the user between applications. The facilities an
operating system provides and its general design philosophy exert an
extremely strong influence on programming style and on the technical
cultures that grow up around its host machines.
-
PDF
-
Portable Document Format.
The
PostScript language for control of printers and other imaging
devices is designed to be streamed to printers. PDF is a sequence
of PostScript pages, packaged with annotations so it can
conveniently be used as a display format.
-
PDP-11
-
Programmable Data Processor 11.
Possibly
the single most successful minicomputer design in history; first
shipped in 1970, last shipped in 1990, and the immediate ancestor
of the VAX. The PDP-11 was the first major Unix platform.
-
PNG
-
Portable Network Graphics.
The World
Wide Web Consortium's standard and recommended format for bitmap
graphics images. An elegantly designed binary graphics format
described in Chapter5.
- RFC
-
Request For Comment.
An Internet
standard. The name arose at a time when the documents were
regarded as proposals to be submitted to a then-nonexistent
but anticipated formal approval process of some sort. The
formal approval process never materialized.
- RPC
-
Remote Procedure Call.
Use of
IPC methods that attempt to create the illusion that the
processes exchanging them are running in the same address
space, so they can cheaply (a) share complex structures, and (b)
call each other like function libraries, ignoring latency and other
performance considerations. This illusion is notoriously
difficult to sustain.
-
TCP/IP
-
Transmission Control Protocol/Internet
Protocol.
The basic protocol of the Internet since the
conversion from NCP (Network Control Protocol) in 1983. Provides
reliable transport of data streams.
- UDP/IP
-
Universal Datagram Protocol/Internet
Protocol.
Provides unreliable but low-latency transport
for small data packets.
- UI
-
User Interface.
- VAX
-
Formally,
Virtual Address Extension
:
the name of a classic minicomputer design developed by Digital
Equipment Corporation (later merged with Compaq, later merged with
Hewlett-Packard) from the PDP-11. The
first VAX shipped in 1977. For ten years after 1980 VAXen were
among the most important Unix platforms. Microprocessor
reimplementations are still shipping today.