-->

Table of Contents

developer.com - Reference Library

Page 633

APPENDIX D

Glossary

by David B. Horvath

Page 634

This is a fairly extensive glossary of terms that are related to the UNIX environment and their definitions. All the authors of this book contributed to this section.

NOTE
The language of the computer field is constantly expanding. If you cannot find a word in this glossary, it is because it is newer than anything the authors knew about or the authors decided is was so obvious that "everyone should already know it."




#—Octothorpe.



$HOME—Environment variable that points to your login directory.



$PATH—Pathname environment variable.



$PATH—The shell environment variable that contains a set of directories to be searched for

UNIX commands.



.1—Files with this extension contain manual page entries. The actual extension can be

any value between 1 and 9 and can have an alphabetic suffix

(.3x, .7, and so on).



.ag—Applixware graphics file.



.as—Applixware spreadsheet file.



.aw—Applixware word processing file.



.bmp—Bitmap graphics file.



.c—C source file.



.C—C++ source file.



.cc—C++ source file.



.conf—Configuration file.



.cxx—C++ source file.



.db—Database file.



.dvi—Device-independent TeX output.



.gif—GIF graphics file.



.gz—File compressed using the GNU gzip utility.



.h—C header file.



.html—HTML document.



Page 635


.jpg—JPEG graphics file.



.m—Objective C source file.



.o—Compiled object file.



.p—Pascal language source file.



.pbm—Portable bitmap graphics file.



.pdf—Adobe Acrobat file.



.ps—PostScript file



.s—Assembler language file.



.tar—tar file.



.tgz—Gzipped tar file.



.tif—TIFF graphics file.



.txt—Text document.



.Z—File compressed using the compress command.



/—Root directory.



/dev—Device directory.

/dev/null file—The place to send output that you are not interested in seeing; also the place to get input from when you have none (but the program or command requires something). This is also known as the bit bucket (where old bits go to die).

/dev/printer—Socket for local print requests.

/etc/cshrc file—The file containing shell environment characteristics common to all users that use the C Shell.

/etc/group file—This file contains information about groups, the users they contain, and passwords required for access by other users. The password might actually be in another file, the shadow group file, to protect it from attacks.

/etc/inittab file—The file that contains a list of active terminal ports for which UNIX will issue the login prompt. This also contains a list of background processes for UNIX to initialize. Some versions of UNIX use other files, such as /etc/tty.

/etc/motd file—Message of the day file; usually contains information the system administrator feels is important for you to know. This file is displayed when the user signs on the system.

/etc/passwd file—Contains user information and password. The password might actually be in another file, the shadow password file, to protect it from attacks.

Page 636

/etc/profile—The file containing shell environment characteristics common to all users of the Bourne and Korn shells.

/usr/local—Locally developed public executables directory.

/var/spool—Various spool directories.

[]—Brackets.

{}—Braces.

ANSI—American National Standards Institute.

API—Application Program Interface. The specific method prescribed by a computer operating system, application, or third-party tool by which a programmer writing an application program can make requests of the operating system. Also known as Application Programmer's Interface.

ar—Archive utility.

arguments—See parameters.

ARPA—See DARPA.

ASCII—American Standard Code for Information Interchange. Used to represent characters in memory for most computers.

AT&T UNIX—Original version of UNIX developed at AT&T Bell Labs, later known as UNIX Systems Laboratories. Many current versions of UNIX are descendants; even BSD UNIX was derived from early AT&T UNIX.

attribute—The means of describing objects. The attributes for a ball might be rubber, red, 3 cm in diameter. The behavior of the ball might be how high it bounces when thrown. Attribute is another name for the data contained within an object (class).

awk—Programming language developed by A.V. Aho, P.J. Weinberger, and Brian W. Kernighan. The language is built on C syntax, includes the regular expression search facilities of grep, and adds in the advanced string and array handling features that are missing from the C language. nawk, gawk, and POSIX awk are versions of this language.

background—Processes usually running at a lower priority and with their input disconnected from the interactive session. Any input and output are usually directed to a file or other
process.

background process—An autonomous process that runs under UNIX without requiring user interaction.

backup—The process of storing the UNIX system, applications, and data files on removable media for future retrieval.

Page 637

bash—Stands for GNU Bourne Again Shell and is based on the Bourne shell, sh, the original command interpreter.

biff—Background mail notification utility.

bison—GNU parser generator (yacc replacement).

block-special—A device file that is used to communicate with a block-oriented I/O device. Disk and tape drives are examples of block devices. The block-special file refers to the entire device. You should not use this file unless you want to ignore the directory structure of the device (that is, if you are coding a device driver).

boot or boot up—The process of starting the operating system (UNIX).

Bourne shell—The original standard user interface to UNIX that supported limited programming capability.

BSD—Berkeley Software Distribution.

BSD UNIX—Version of UNIX developed by Berkeley Software Distribution and written at University of California, Berkeley.

bug—An undocumented program feature.

C—Programming language developed by Brian W. Kernighan and Dennis M. Ritchie. The C language is highly portable and available on many platforms including mainframes, PCs, and, of course, UNIX systems.

C shell—A user interface for UNIX written by Bill Joy at Berkeley. It features C
programming-like syntax.

CAD—Computer-aided design.

cast—Programming construct to force type conversion.

cat—Concatenate files command.

CD-ROM—Compact Disk-Read Only Memory. Computer-readable data stored on the same physical form as a musical CD. Large capacity, inexpensive, slower than a hard disk, and limited to reading. There are versions that are writable (CD-R, CD Recordable) and other formats that can be written to once or many times.

CGI—Common Gateway Interface. A means of transmitting data between Web pages and programs or scripts executing on the server. Those programs can then process the data and send the results back to the user's browser through dynamically creating HTML.

character special—A device file that is used to communicate with character-oriented I/O devices like terminals, printers, or network communications lines. All I/O access is treated as a series of bytes (characters).

characters, alphabetic—The letters A through Z and a through z.

Page 638

characters, alphanumeric—The letters A through Z and a through z, and the numbers 0
through 9.

characters, control—Any nonprintable characters. The characters are used to control devices, separate records, and eject pages on printers.

characters, numeric—The numbers 0 through 9.

characters, special—Any of the punctuation characters or printable characters that are not alphanumeric. Include the space, comma, period, and many others.

child process—See subprocess.

child shell—See subshell.

class—A model of objects that have attributes (data) and behavior (code or functions). It is also viewed as a collection of objects in their abstracted form.

command-line editing—UNIX shells support the ability to recall a previously entered command, modify it, and then execute the new version. The command history can remain between sessions (the commands you did yesterday can be available for you when you log in today). Some shells support a command-line editing mode that uses a subset of the vi, emacs, or gmacs editor commands for command recall and modification.

command-line history—See command-line editing.

command-line parameters—Used to specify parameters to pass to the execute program or procedure. Also known as command-line arguments.

configuration files—Collections of information used to initialize and set up the environment for specific commands and programs. Shell configuration files set up the user's environment.

configuration files, shell—For Bourne shell: /etc/profile and $HOME/.profile.

For Korn and pdksh shells: /etc/profile, $HOME/.profile, and ENV= file.

For C and tcsh shells: /etc/.login, /etc/cshrc, $HOME/.login, $HOME/.cshrc, and $HOME/.logout. Older versions might not support the first two files listed.

For bash: /etc/profile/, $HOME/.bash_profile, $HOME/.bash_login, $HOME/.profile, $HOME/.bashrc, and ~/.bash_logout.

CPU—Central Processing Unit. The primary "brain" of the computer—the calculation engine and logic controller.

daemon—A system-related background process that often runs with the permissions of root and services requests from other processes.

DARPA—(U.S. Department of) Defense Advanced Research Projects Agency. Funded development of TCP/IP and ARPAnet (predecessor of the Internet).

database server—See server, database.

Page 639

device file—File used to implement access to a physical device. This provides a consistent approach to access of storage media under UNIX; data files and devices (like tapes and communication facilities) are implemented as files. To the programmer, there is no real difference.

directory—A means of organizing and collecting files together. The directory itself is a file that consists of a list of files contained within it. The root (/) directory is the top level and every other directory is contained in it (directly or indirectly). A directory might contain other directories, known as subdirectories.

directory navigation—The process of moving through directories is known as navigation. Your current directory is known as the current working directory. Your login directory is known as the default or home directory. Using the cd command, you can move up and down through the tree structure of directories.

DNS—Domain Name Server. Used to convert between the name of a machine on the Internet (name.domain.com) to the numeric address (123.45.111.123).

DOS—Disk Operating System. Operating system that is based on the use of disks for the storage of commands. It is also a generic name for MS-DOS and PC-DOS on the personal computer. MS-DOS is the version Microsoft sells; PC-DOS is the version IBM sells. Both are based on Microsoft code.

double—Double-precision floating point.

dpi—Dots per inch.

EBCDIC—Extended Binary Coded Decimal Interchange Code. The code used to represent characters in memory for mainframe computers.

ed—A common tool used for line-oriented text editing.

elm—Interactive mail program.

emacs—A freely available editor now part of the GNU software distribution. Originally written by Richard M. Stallman at MIT in the late 1970s, it is available for many platforms. It is extremely extensible and has its own programming language; the name stands for editing with macros.

e-mail—Messages sent through an electronic medium instead of through the local postal service. There are many proprietary e-mail systems that are designed to handle mail within a LAN environment; most of these are also able to send over the Internet. Most Internet (open) e-mail systems make use of MIME to handle attached data (which can be binary).

encapsulation—The process of combining data (attributes) and functions (behavior in the form of code) into an object. The data and functions are closely coupled within an object. Instead of all programmers being able to access the data in a structure their own way, they have to use the code connected with that data. This promotes code reuse and standardized methods of working with the data.

Page 640

environment variables—See variables, environmental.

Ethernet—A networking method where the systems are connected to a single shared bus and all traffic is available to every machine. The data packets contain an identifier of the recipient, and that is the only machine that should process that packet.

expression—A constant, variable, or operands and operators combined. Used to set a value, perform a calculation, or set the pattern for a comparison (regular expressions).

FIFO—First In, First Out. See pipe, named.

file—Collection of bytes stored on a device (typically a disk or tape). Can be source code, executable binaries or scripts, or data.

file compression—The process of applying mathematical formulas to data, typically resulting in a form of the data that occupies less space. A compressed file can be uncompressed, resulting in the original file. When the compress/uncompress process results in exactly the same file as was originally compressed, it is known as lossless. If information about the original file is lost, the compression method is known as lossy. Data and programs need lossless compression; images and sounds can stand lossy compression.

file, indexed—A file based on a file structure where data can be retrieved based on specific keys (name, employee number, and so on) or sequentially. The keys are stored in an index. This is not directly supported by the UNIX operating system; usually implemented by the programmer or by using tools from an ISV. A typical form is known as ISAM.

file, line sequential—See file, text.

file, sequential—This phrase can mean either a file that can only be accessed sequentially (not randomly), or a file without record separators (typically fixed length, but UNIX does not know what that length is and does not care).

file, text—A file with record separators. Can be fixed or variable length; UNIX tools can handle these files because the tools can tell when the record ends (by the separator).

filename—The name used to identify a collection of data (a file). Without a pathname, it is assumed to be in the current directory.

filename generation—The process of the shell interpreting metacharacters (wildcards) to produce a list of matching files. This is referred to as filename expansion or globbing.

filename, fully qualified—The name used to identify a collection of data (a file) and its location. It includes both the path and name of the file; typically, the pathname is fully specified (absolute). See also pathname and pathname, absolute.

filesystem—A collection of disk storage that is connected (mounted) to the directory structure at some point (sometimes at the root). Filesystems are stored in a disk partition and are sometimes referred to as being the disk partition.

Page 641

finger—User information lookup program.

firewall—A system used to provide a controlled entry point to the internal network from the outside (usually the Internet). This is used to prevent outside or unauthorized systems from accessing systems on your internal network. The capability depends on the individual software package, but the features typically include filter packets and filter datagrams, system (name or IP address) aliasing, and rejecting packets from certain IP addresses. In theory, it provides protection from malicious programs or people on the outside. It can also prevent internal systems from accessing the Internet on the outside. The name comes from the physical barrier between connected buildings or within a single building that is supposed to prevent fire from spreading from one to another.

flags—See options.

float—Single-precision floating point.

foreground—Programs running while connected to the interactive session.

fseek—Internal function used by UNIX to locate data inside a file or filesystem. ANSI standard fseek accepts a parameter that can hold a value of +2 to -2 billion. This function, used by the operating system, system tools, and application programs, is the cause of the 2GB file and filesystem size limitation on most systems. With 64-bit operating systems, this limit is going away.

FSF—Free Software Foundation.

FTP—File Transfer Protocol or File Transfer Program. A system-independent means of transferring files between systems connected via TCP/IP. Ensures that the file is transferred
correctly, even if there are errors during transmission. Can usually handle character set conversions (ASCII/EBCDIC) and record terminator resolution (linefeed for UNIX, carriage return and linefeed for MS/PC-DOS).

gateway—A combination of hardware, software, and network connections that provides a link between one architecture and another. Typically, a gateway is used to connect a LAN or UNIX server with a mainframe (that uses SNA for networking, resulting in the name SNA gateway). A gateway can also be the connection between the internal and external network (often referred to as a firewall). See also firewall.

GID—Group ID number.

globbing—See filename generation.

GNU—GNU stands for GNU's Not UNIX, and is the name of free useful software packages commonly found in UNIX environments that are being distributed by the GNU project at MIT, largely through the efforts of Richard Stallman. The circular acronym name ("GNU" containing the acronym GNU as one of the words it stands for) is a joke on Richard Stallman's part. One of the textbooks on operating system design is titled XINU: XINU Is Not UNIX, and GNU follows in that path.

Page 642

GPL—GNU General Public License.

grep—A common tool used to search a file for a pattern. egrep and fgrep are newer versions. egrep allows the use of extended (hence the e prefix) regular expressions; fgrep uses limited expressions for faster (hence the f prefix) searches.

GUI—Graphical user interface.

here document—The << redirection operator, known as here document, allows keyboard input (stdin) for the program to be included in the script.

HTML—Hypertext Markup Language. Describes World Wide Web pages. It is the document language that is used to define the pages available on the Internet through the use of tags. A browser interprets the HTML to display the desired information.

i-node—Used to describe a file and its storage. The directory contains a cross-reference between the i-node and pathname/filename combination. Also known as inode. A file's entry in disk data structure (ls -i).

I-Phone—Internet Phone. This is a method of transmitting speech long distances over the Internet in near real-time. Participants avoid paying long distance telephone charges. They still pay for the call to their ISP and the ISP's service charges.

ICCCM—Inter-Client Communications Conventions Manual.

ICMP—Internet Control Message Protocol. Part of TCP/IP that provides network layer management and control.

imake—C preprocessor interface to make utility.

inheritance—A method of object-oriented software reuse in which new classes are developed based on existing ones by using the existing attributes and behavior and adding on to them. If the base object is automobiles (with attributes of engine and four wheels and tires; behavior of acceleration, turning, deceleration), a sports car would modify the attributes: engine might be larger or have more horsepower than the default, the four wheels might include alloy wheels and high-speed_rated tires; the behavior would also be modified: faster acceleration, tighter turning radius, faster deceleration.

inode—See i-node.

int—Integer.

Internet—A collection of different networks that provide the ability to move data between them. It is built on the TCP/IP communications protocol. Originally developed by DARPA, it was taken over by NSF, and has now been released from governmental control.

Internet Service Provider—The people that connect you to the Internet.

IRC—Internet relay chat. A server-based application that allows groups of people to communicate simultaneously through text-based conversations. IRC is similar to Citizen Band radio

Page 643

or the chat rooms on some bulletin boards. Some chats can be private (between invited people only) or public (where anyone can join in). IRC now also supports sound files as well as text; it can also be useful for file exchange.

ISAM—Indexed Sequential Access Method. On UNIX and other systems, ISAM refers to a method for accessing data in a keyed or sequential way. The UNIX operating system does not directly support ISAM files; they are typically add-on products.

ISO—International Standards Organization.

ISP—See Internet Service Provider.

ISV—Independent Software Vendor. Generic name for software vendors other than your hardware vendor.

K&R—Kernighan and Ritchie.

kernel—The core of the operating system that handles tasks like memory allocation, device input and output, process allocation, security, and user access. UNIX tends to have a small kernel when compared to other operating systems.

keys, control—These are keys that cause some function to be performed instead of displaying a character. These functions have names: The end-of-file key tells UNIX that there is no more input; it is usually Ctrl+D.

keys, special—See keys, control.

Korn shell—A user interface for UNIX with extensive scripting (programming) support. Written by David G. Korn. The shell features command-line editing and will also accept scripts written for the Bourne shell.

LAN—Local Area Network. A collection of networking hardware, software, desktop computers, servers, and hosts all connected together within a defined local area. A LAN could be an entire college campus.

limits—See quota.

link file—File used to implement a symbolic link producing an alias on one filesystem for a file on another. The file contains only the fully qualified filename of the original (linked-to) file.

link, hard—Directory entry that provides an alias to another file within the same filesystem. Multiple entries appear in the directory (or other directories) for one physical file without replication of the contents.

link, soft—See link, symbolic.

link, symbolic—Directory entry that provides an alias to another file that can be in another filesystem. Multiple entries appear in the directory for one physical file without replication of the contents. Implemented through link files; see also link file.

Page 644

LISP—List Processing Language.

login—The process with which a user gains access to a UNIX system. This can also refer to the user ID that is typed at the login prompt.

lp—Line printer.

lpc—Line printer control program.

lpd—Line printer daemon.

lpq—Printer spool queue examination program.

lprm—Printer spool queue job removal program.

ls—List directory(s) command.

man page—Online reference tool under UNIX that contains the documentation for the
system—the actual pages from the printed manuals. It is stored in a searchable form for improved ability to locate information.

manual page—See man page.

memory, real—The amount of storage that is being used within the system (silicon; it used to be magnetic cores).

memory, virtual—Memory that exists but you cannot see. Secondary storage (disk) is used to allow the operating system to enable programs to use more memory than is physically available.

Part of a disk is used as a paging file and portions of programs and their data are moved between it and real memory. To the program, it is in real memory. The hardware and operating system performs translation between the memory address the program thinks it is using and where it is actually stored.

metacharacter—A printing character that has special meaning to the shell or another command. It is converted into something else by the shell or command; the asterisk (*) is converted by the shell to a list of all files in the current directory.

MIME—Multipurpose Internet Mail Extensions. A set of protocols or methods of attaching binary data (executable programs, images, sound files, and so on) or additional text to e-mail messages.

motd—Message of the day.

MPTN—MultiProtocol Transport Network. IBM networking protocol to connect mainframe to TCP/IP network.

Mrm—Motif resource manager.

mtu—Maximum transmission unit.

Page 645

mwm—Motif window manager.

Netnews—This is a loosely controlled collection of discussion groups. A message (similar to an e-mail) is posted in a specific area, and then people can comment on it, publicly replying to the same place (posting a response) for others to see. A collection of messages along the same theme is referred to as a thread. Some of the groups are moderated, which means that nothing is posted without the approval of the owner. Most are not, and the title of the group is no guarantee that the discussion will be related. The official term for this is Usenet news.

NFS—Network File System. Means of connecting disks that are mounted to a remote system to the local system as if they were physically connected.

NIS—Network Information Service. A service that provides information necessary to all machines on a network, such as NFS support for hosts and clients, password verification, and
so on.

NNTP—Netnews Transport Protocol. Used to transmit Netnews or Usenet messages over top of TCP/IP. See Netnews for more information on the messages transmitted.

Null Statement—A program step that performs no operation but to hold space and fulfill syntactical requirements of the programming language. Also known as a NO-OP for no-operation performed.

object—An object in the truest sense of the word is something that has physical properties, like automobiles, rubber balls, and clouds. These things have attributes and behavior. They can be abstracted into data (attribute) and code (behavior). Instead of just writing functions to work on data, they are encapsulated into a package that is known as an object.

operator—Metacharacter that performs a function on values or variables. The plus sign (+) is an operator that adds two integers.

options—Program- or command-specific indicators that control behavior of that program. Sometimes called flags. The -a option to the ls command shows the files that begin with . (such as .profile, .kshrc, and so on). Without it, these files would not be shown, no matter what wildcards were used. These are used on the command line. See also parameters.

OSF—Open Software Foundation.

parameters—Data passed to a command or program through the command line. These can be options (see options) that control the command or arguments that the command works on. Some have special meaning based on their position on the command line.

parent process—Process that controls another often referred to as the child process or subprocess. See also process.

parent process identifier—Shown in the heading of the ps command as PPID. The process identifier of the parent process. See also parent process.

Page 646

parent shell—Shell (typically the login shell) that controls another, often referred to as the child shell or subshell. See also shell.

password—The secure code that is used in combination with a user ID to gain access to a UNIX system.

pathname—The means used to represent the location of a file in the directory structure. If you do not specify a pathname, it defaults to the current directory.

pathname, absolute—The means used to represent the location of a file in a directory by specifying the exact location, including all directories in the chain including the root.

pathname, relative—The means used to represent the location of a file in a directory other than the current by navigating up and down through other directories using the current directory as a base.

PDP—Personal Data Processor. Computers manufactured by Digital Equipment Corporation. UNIX was originally written for a PDP-7 and gained popularity on the PDP-11. The entire series were inexpensive minicomputers popular with educational institutions and small businesses.

Perl—Programming language developed by Larry Wall. (Perl stands for "Practical Extraction and Report Language" or "Pathologically Eclectic Rubbish Language"; both are equally valid.) The language provides all of the capabilities of awk and sed, plus many of the features of the shells and C.

permissions—When applied to files, they are the attributes that control access to a file. There are three levels of access: Owner (the file creator), Group (people belonging to a related group as determined by the system administrator), and Other (everyone else). The permissions are usually r for read, w for write, and x for execute. The execute permissions flag is also used to control who may search a directory.

PGP—Pretty Good Privacy encryption system.

pine—Interactive mail program.

pipe—A method of sending the output of one program (redirecting) to become the input of another. The pipe character (|) tells the shell to perform the redirection.

pipe file—See pipe, named.

pipe, named—An expanded function of a regular pipe (redirecting the output of one program to become the input of another). Instead of connecting stdout to stdin, the output of one program is sent to the named pipe and another program reads data from the same file. This is implemented through a special file known as a pipe file or fifo. The operating system ensures the proper sequencing of the data. Little or no data is actually stored in the pipe file; it just acts as a connection between the two.

Page 647

polymorphism—Allows code to be written in a general fashion to handle existing and future related classes. Properly developed, the same behavior can act differently depending on the derived object it acts on. With an automobile, the acceleration behavior might be different for a station wagon and a dragster, which are subclasses of the superclass automobile. The function would still be accelerate(), but the version would vary (this might sound confusing, but the compiler keeps track and figures it all out).

POSIX—Portable Operating System Interface, UNIX. POSIX is the name for a family of open system standards based on UNIX. The name has been credited to Richard Stallman. The POSIX Shell and Utilities standard developed by IEEE Working Group 1003.2 (POSIX.2) concentrates on the command interpreter interface and utility programs.

PostScript—Adobe Systems, Inc. printer language.

PPP—Point-to-Point Protocol. Internet protocol over serial link (modem).

pppd—Point-to-Point-Protocol daemon.

printcap—Printer capability database.

process—A discrete running program under UNIX. The user's interactive session is a process. A process can invoke (run) and control another program that is then referred to as a subprocess. Ultimately, everything a user does is a subprocess of the operating system.

process identifier—Shown in the heading of the ps command as PID. The unique number assigned to every process running in the system.

pwd—Print working directory command.

quota—General description of a system-imposed limitation on a user or process. It can apply to disk space, memory usage, CPU usage, maximum number of open files, and many other resources.

quoting—The use of single and double quotes to negate the normal command interpretation and concatenate all words and whitespace within the quotes as a single piece of text.

RCS—Revision Control System.

redirection—The process of directing a data flow from the default. Input can be redirected to get data from a file or the output of another program. Normal output can be sent to another program or a file. Errors can be sent to another program or a file.

regular expression—A way of specifying and matching strings for shells (filename wildcarding), grep (file searches), sed, and awk.

reserved word—A set of characters that are recognized by UNIX and related to a specific program, function, or command.

RFC—Request For Comment. Document used for creation of Internet- and TCP/IP-related standards.

Page 648

rlogin—Remote Login. Gives the same functionality as telnet, with the added functionality of not requiring a password from trusted clients, which can also create security concerns (see also telnet).

root—The user that owns the operating system and controls the computer. The processes of the operating system run as though a user, root, signed on and started them. Root users are all- powerful and can do anything they want. For this reason, they are often referred to as superusers. Root is also the very top of the directory tree structure.

routing—The process of moving network traffic between two different physical networks; also decides which path to take when there are multiple connections between the two machines. It might also send traffic around transmission interruptions.

RPC—Remote Procedural Call. Provides the ability to call functions or subroutines that run on a remote system from the local one.

RPM—Red Hat Package Manager.

script—A program written for a UNIX utility including shells, awk, Perl, sed, and others. See also shell scripts.

SCSI—Small Computer System Interface.

sed—A common tool used for stream text editing, having ed-like syntax.

server, database—A system designated to run database software (typically a relational database like Oracle, SQL Server, Sybase, or others). Other systems connect to this one to get the data (client applications).

SGID—Set group ID.

shell—The part of UNIX that handles user input and invokes other programs to run commands. Includes a programming language. See also Bourne shell, C shell, Korn shell, tcsh, and bash.

shell environment—The shell program (Bourne, Korn, C, tcsh, or bash), invocation options and preset variables that define the characteristics, features, and functionality of the UNIX command-line and program execution interface.

shell or command prompt—The single character or set of characters that the UNIX shell displays for which a user can enter a command or set of commands.

shell scripts—A program written using a shell programming language like those supported by Bourne, Korn, or C shells.

signal—A special flag or interrupt that is used to communicate special events to programs by the operating system and other programs.

SLIP—Serial Line Internet Protocol. Internet over a serial line (modem). The protocol frames and controls the transmission of TCP/IP packets of the line.

Page 649

SNA—System Network Architecture. IBM networking architecture.

stderr—The normal error output for a program that is sent to the screen by default. Can be redirected to a file.

stdin—The normal input for a program, taken from the keyboard by default. Can be redirected to get input from a file or the output of another program.

stdout—The normal output for a program that is sent to the screen by default. Can be redirected to a file or to the input of another program.

sticky bit—One of the status flags on a file that tells UNIX to load a copy of the file into the page file the first time it is executed. This is done for programs that are commonly used so the bytes are available quickly. When the sticky bit is used on frequently used directories, it is cached in memory.

stream—A sequential collection of data. All files are streams to the UNIX operating system. To it, there is no structure to a file; that is something imposed by application programs or special tools (ISAM packages or relational databases).

subdirectory—See directory.

subnet—A portion of a network that shares a common IP address component. Used for security and performance reasons.

subprocess—Process running under the control of another, often referred to as the parent process. See also process.

subshell—Shell running under the control of another, often referred to as the parent shell (typically the login shell). See also shell.

SUID—Set user ID.

superuser—Usually the root operator.

sysadmin—Burnt-out root operator (system administrator).

system administrator—The person who takes care of the operating system and user administrative issues on UNIX systems. Also called a system manager, although that term is much more common in DEC VAX installations.

system manager—See system administrator.

system programmer—See system administrator.

tar—Tape archiving utility.

TCP—Transmission Control Protocol.

TCP/IP—Transport Control Protocol/Internet Protocol. The pair of protocols and also generic name for suite of tools and protocols that forms the basis for the Internet. Originally developed to connect systems to the ARPAnet.

Page 650

tcsh—A C shell-like user interface featuring command-line editing.

telnet—Remote login program.

Telnet—Protocol for interactive (character user interface) terminal access to remote systems. The terminal emulator that uses the Telnet protocol is often known as telnet or tnvt100.

termcap—Terminal capability database.

terminal—A hardware device, normally containing a cathode ray tube (screen) and keyboard for human interaction with a computer system.

text processing languages—A way of developing documents in text editors with embedded commands that handle formatting. The file is fed through a processor that executes the embedded commands, producing a formatted document. These include roff, nroff, troff,
RUNOFF, TeX, LaTeX, and even the mainframe SCRIPT.

TFTP—Trivial File Transfer Protocol or Trivial File Transfer Program. A system-
independent means of transferring files between systems connected via TCP/IP. It is different from FTP in that it does not ensure that the file is transferred correctly, does not authenticate users, and is missing a lot of functionality (like the ls command).

tin—Interactive news reader.

top—A common tool used to display information about the top processes on the system.

UDP—User Datagram Protocol. Part of TCP/IP used for control messages and data transmission where the delivery acknowledgment is not needed. The application program must ensure data transmission in this case.

UID—User ID number.

UIL—Motif User Interface Language.

URL—Uniform Resource Locator. The method of specifying the protocol, format, login (usually omitted), and location of materials on the Internet.

Usenet—See Netnews.

UUCP—UNIX-to-UNIX copy program. Used to build an early, informal network for the transmission of files, e-mail, and Netnews.

variables, attributes—The modifiers that set the variable type. A variable can be string or integer, left- or right-justified, read-only or changeable, and other attributes.

variables, environmental—A place to store data and values (strings and integers) in the area controlled by the shell so they are available to the current and subprocesses. They can just be local to the current shell or available to a subshell (exported).

variables, substitution—The process of interpreting an environmental variable to get its value.

Page 651

WAN—Wide Area Network.

Web—See World Wide Web.

whitespace—Blanks, spaces, and tabs that are normally interpreted to delineate commands and filenames unless quoted.

wildcard—Means of specifying filename(s) whereby the operating system determines some of the characters. Multiple files might match and will be available to the tool.

World Wide Web—A collection of servers and services on the Internet that run software and communicate using a common protocol (HTTP). Instead of the users' having to remember the location of these resources, links are provided from one Web page to another through the use of URLs.

WWW—See World Wide Web.

WYSIWYG—What You See Is What You Get.

X—See X Window System.

X Window System—A windowing and graphics system developed by MIT, to be used in
client/server environments.

X11—See X Window System.

X-windows—The wrong term for the X Window System. See X Window System.

yacc—Yet another compiler compiler.

Page 652

Table of Contents