GLOSSARY



next up previous contents index
Next: REFERENCES Up: Unix Survival Guide Previous: Sample .signature (mail)

GLOSSARY

address
The numerical designation of a location in memory.

algorithm
A set of rules for solving a problem independently of the software or hardware.

analog
The mapping of numbers to continuous values of some physical observable, for example, speed and a car's speedometer.

architecture
The overall design of a computer in terms of its major components: memory, processing, I/O, and communication.

argument
A parameter passed from one program part to another or to a command.

arpanet
A wide area network originally developed by the U.S. Army and now extended into the Internet.

array (matrix)
A bunch of numbers stored together which can be referenced by one or more subscripts. Single-indexed arrays represent mathematical vectors, double- and higher- indexed arrays represent tensors. Each number in an array is an array element.

bit
Contraction of ``binary digit''; the digits 0 or 1 used in a binary representation of numbers. Usually 8 bits are combined to form a byte and 32 bits are combined to form a single precision, floating point number.

basic machine language
Instructions telling the hardware to do basic operations like store or add binary numbers.

box
The electronics making up a computer, as in a ``fast box.''

boot up
Loading the system into memory from disk.

byte
8 bits of storage, the amount needed for a single character.

bus
A communication channel (bunch of wires) used for transmitting information quickly among computer parts.

cache
A small, very fast part of memory used as temporary storage between the very fast CPU registers and the fast main memory.

central processing unit (CPU)
The part of a computer which accepts and acts on instructions; where calculations are done and communications controlled. Also used generically for the computer's electronics (not terminals and I/O devices).

chime
Chained vector time. A chime begins each time a resource gets reused in a Do loop.

column-major order
The method used by Fortran to store matrices in which the leftmost subscript varies most rapidly and attains its maximum value before the subscript to the right is incremented.

compiler
A program which translates source code from a high level computer language to machine language or object code.

compiler directive
A nonexecutable statement supplying the compiler with directions for its operation but which does not get translated directly into executable code.

concurrent processing
Same as parallel processing; simultaneous execution of several, related instructions.

cycle time (clock cycle)
The time it takes the central processing unit (CPU) to execute the simplest instruction.

data
Information stored in numerical form; plural of datum.

data dependence
Two statements using or defining identical storage locations.

dependence
A relation among program statements in which the results depend upon the order in which the statements are executed. May prevent vectorization.

digital
Representation of numbers in a discrete form (decimal, octal, or binary) but not in analog form (meter reading).

dimension of array
The maximum value of each subscript of an array. The logical dimension is the largest value actually used by the program, the physical dimension is the value declared in a DIMENSION statement.

ethernet
A high speed local area network (LAN) composed of specific cable technology and communication protocols.

executable program
A set of instructions which can be loaded into the computer's memory and executed.

executable statement
A statement causing the computer to act, as for example, to add numbers. A data or continue statement is not executable.

environmental variables
Used by the system to pass information to programs and customize their behavior.

indirect addressing
The use of an array element as the subscript (index) for yet a different array. For example, .

induction variable (subscript)
An integer variable which is changed by a fixed amount as an operation is performed. The index of a Do loop is an example.

floating point
The representation of numbers in terms of mantissa and base raised to some power so that the decimal point floats during calculations; scientific notation.

flops
Floating point operations per second. Also measured in Megaflops mflops ( flops), Gigaflops gflops ( flops), and Teraflops tflops ( flops).

Fortran
An acronym for formula translation.

gflops
Gigaflops, floating point operations per second.

instructions
Orders to the hardware to do basic things like fetch, store, and add.

instruction stack
Group of instructions currently in use; like a window moving down your code as operations are performed.

kernel
The inner or central part of a large program or of an operating system which does not get modified (much) when run on different computers.

linker
A program which combines a number of programs to form a complete set of instructions which can be loaded into the computer's memory and followed by the computer.

loop
A set of instructions executed repeatedly as long as some condition is met.

machine language
The set of instructions understood by elementary processors.

machine precision
The maximum positive number which can be added to the number stored as 1 without changing the number stored as 1.

mainframe
A large computer, usually at a central location, which serves many users and is capable of turning out much work.

main program
A part of a program which calls subprograms but cannot be called by them.

main storage
The fast, electronic memory; physical memory.

massively parallel
Simultaneous processing on a very large number of central processing units.

Megaflop (mflop)
Millions of floating point operations per second.

mips
Millions of instructions per second.

multi-processors
Computers with more than one processor.

multi-tasking
The system by which several jobs reside in a computer's memory simultaneously. On non parallel computers each jobs receives CPU time in turn.

object program (code)
A program in basic machine language produced by compiling a high level language.

operating system
The program that controls the computer and decides when to run applications, process I/O, and shells.

optimizer
A program (or programmer) that modifies a program to make it run more quickly.

parallel (concurrent) processing
Simultaneous and essentially independent processing in different central processing units. If the number of separate multi processors gets very large, it is massively parallel.

parallelization
Rewriting an existing program to run on a computer with multiple processing units.

physical memory
Fast, electronic memory of a computer; main memory; physical memory stands in contrast to virtual memory.

pipeline (segmented) arithmetic units
Assembly line approach to central processing in which parts of the CPU simultaneously gather, store, and process data.

PostScript
A standard language for sending text and graphics to printers.

program
Set of actions or instructions that a machine is capable of interpreting and executing or the act of creating a program.

RAM
The random access or central memory which can be reached directly.

recurrence
A statement or variable in a loop which uses the value of some variable computed in a previous iteration. May affect vectorization.

registers
Very high speed memory used by the central processing unit.

RISC
Reduced Instruction Set Computer; a CPU design which increases arithmetic speed by decreasing the number of instructions the CPU must follow.

scalar
A data value (number); for example, element a[4] of an array or the value of the variable X.

scalar processing
Calculations in which numbers are processed in sequence. Also, processing units (hardware) which process machine code in sequence. Different from vector and parallel processing.

section size (strip)
The number of elements which can be executed with one command on vector hardware. Breaking up an array into strips is strip mining.

segmented arithmetic units
See pipelined arithmetic units.

shell
The command line interpreter; the part of the operating system with which the user interacts.

source code
Program in high level language needing compilation to run.

stride
Number of array elements which gets stepped through as an operation repeats.

subprogram
The part of a program invoked by another program unit.

supercomputer
The class of fastest and most powerful computers available.

superscalar
A second generation RISC designed for an optimal balance between compiler and machine instructions.

telnet
The protocol suite for the TCP/IP Internet network which permits a terminal on one host computer to seem as if directly connected to another computer on the network. Also the name of a terminal emulator program written by NCSA for using PCs on the Internet.

Teraflop (tflop)
floating point operations per second.

vector
A group of N numbers in memory arranged in one-dimensional order.

vectorization
Reorganization of a program so the compiler can utilize vector hardware.

vector processing
Calculations in which an entire vector of numbers is processed with one operation.

virtual memory
Memory which resides on the slow, hard disk and not in the fast electronics.

visualization
The production of two and three dimensional pictures or graphs of the numerical results of computations.

workstations
A class of computers small enough in size and cost to be used by a small group or an individual in their own work location yet powerful enough for large-scale scientific and engineering applications. Typically with a Unix operating system and good graphics.

word
A unit of main storage, usually 1, 2, 4, 6, or 8 bytes.



next up previous contents index
Next: REFERENCES Up: Unix Survival Guide Previous: Sample .signature (mail)