Basic Terminology NHF
Written By: hemi_
Disclaimer: I am a newbie. Using Linux for a year now, I have a grasp
of the basic concepts in using Linux, but in no way could be considered an
expert. The statements I make here are my own. Trying to describe what is
sometimes complex and technical in a non-technical, newbie friendly way,
obviously has it's limitations. None of these statements should be
considered written in stone. This help file is not intended to scare any
potential Linux users away from Linux. In fact, it's real intent is to
make Linux less intimidating.
This helpfile, Common Terminology, is aimed at giving a "very" basic
understanding of common terms that Linux users throw around everyday. This
way you can gain some knowledge without having to feel embarrassed asking
a question that it seems everyone else knows. Although it's not necessary
to know these terms, it may help you carry on a much more productive
conversation with anyone who may try to help and also make any other help
resources easier to understand.
Credit where credit is due. Many of the following links come from
foldoc, Free Online Dictionary of
Computing and Linux Newbie.Org.
x86 - "x86"
basically refers to "IBM PC" compatible
computers or more specifically, it's processor, based on the Intel x86 chip. It can mean a 80186,
80286, 386, 486, 586, Pentium, Pentium Pro, Pentium II, 686, AMD K6,
Cyrix, etc... It does not refer to Apple, Sparc, Amiga, or any of the
other variations of computer processors.
(Note: Linux will not run on anything older than a 386 processor.)
CPU - The "CPU" is the
"Central Processing Unit", also referred to as the "Processor". It is the
"chip" that does the actual computational work for the kernel. Possibly
the most important part of a system, if there is such a thing.
OS - "OS" is an acronym for "Operating System". Linux is an OS, Windows, Macintosh , and UNIX are all OSs. Although
all are Operating Systems, most accomplish tasks in different ways and
require different programs tailored to the system.
Kernel - The "Kernel" is at the
heart of any Operating System. It is basically what controls all processes
on a computer. Things like multitasking, memory management, virtual
memory, and shared libraries are all controlled by the kernel.
Prompt - This refers to the "Command Prompt" or "Command
Line Interface" (CLI). Those of you who may be familiar with DOS know
what a command prompt is. For others, it is the basic text mode of Linux,
no icon's or graphics of any kind. Although many people appear to be
frightened of the prompt, it is arguably the most powerful mode of Linux.
It generally appears on a black screen with a prompt such as "bash-2.03$",
or perhaps "machine's_name:$", or something similar, depending on what
shell you use.
Shell - The "Shell" is
the actual user interface to the kernel. We tell the shell to do something
and it in turn tells the kernel what we need done. There are a few
different shells, but BASH (Bourne Again SHell) is probably the most
widely used. There's also sh, ash, and zsh to name, but a few.
Script - A "Script"
and particularly "Shell
Scripts", typically interact with other programs telling them what to
do. Similar to a DOS batch file in some ways, they range from a simple command
that we may be too lazy to type repeatedly, to something much more
complex. Much of the power of Linux, for serious power users, is in the
fact that they can write a script to automate multiple complex functions
with little or no interaction. This might not be among the first things
you want to learn in Linux, but it would serve you well to learn about
writing them.
Alias - "Alias"
means just what you may think. It's used to rename a command to something
easier to remember. Usually they can replace a simple Script and is
probably the way to go for a complex command with many Switches.
Switch - "Switches"
are options usually used with commands at a Prompt. Many, if not most,
Linux commands take switches. They are so varied that there's not much
more to say than that.
Mode - "Mode"
is used to describe the Permissions or Attributes a file or directory has.
The main Modes are Read, Write, and Execute. These are combined with who
has the permission. U (u) is for the user or owner of a file. G (g) is for
the group that may access the file. O (o) is for others that can access to
a file, that covers every other user. Chmod is the command used to
change the access permissions on a file.
Group - "Group" is a group of
users or sometimes even Daemons. Users is the default Group for most
accounts on a Linux system. Chgrp is the command used to change
the Group associated with a given file.
LILO - "LILO"
is the Linux Loader that comes with Linux. It's job is to boot the system.
It can be setup to boot between multiple OSs. It's configuration file can
usually be found at /etc/lilo.conf.
Loadlin -" Loadlin"
is another Linux loader, this one is intended to start Linux from a
running DOS or Windows session, therefore it must be installed where
Windows or DOS can find it (on the C: drive perhaps).
Daemon - A "Daemon"
is an application or server that usually runs constantly in the
background. Web servers, FTP servers, and print servers are all examples
of Daemons. Most are started at boot time and need no interaction.
Client/Server - A "Server"
is an application that usually serves some kind of information to a
"Client". For example, on the Internet, Web Servers send HTML information
to a "Client" which
could be a browser such as Netscape or Internet Explorer. There are many
kinds of Servers and Clients. FTP, SMTP , and even Xwindows work on
a Client/Server scheme.
Man Page - "Manual
Pages" are Linux's equivalent of Window's Help System. Nearly every
command that you can use in Linux, has a built in "man page" describing
the commands purpose and use. They have a habit of being very technical
and hard to read, but the more you try to read them and get acquainted
with Linux, the more they will make sense. They are accessed with the
command "man command-name" from a prompt, where command-name is the actual
command you'd like to know about, such as "man ls" or "man cd"...
NHF - "NHF" stands
for a "Newbieized Help File". It is a LinuxNewbie.Org specific help file
format. They are generally much easier to understand than Man pages or
HOW-TOs, especially for newbies.
HOW-TO - The "Linux
HOW-TOs" are similar to help files, but often times more in depth.
Like man pages, they can be very technical and hard to read, but also like
man pages, as your familiarity with Linux grows, so will the amount of
sense they make. These are arguably one of the most important sources of
information on the set up and use of Linux. You really should install them
right on you PC. Many distros do by default under /usr/doc/Linux-HOW-TOs
and /usr/doc/Linux-mini-HOWTOs.
(Note: If they are not installed, the most up to date versions can be
found at http://www.linuxdoc.org, This site is a great resource for Linux
documentation, besides the HOW-TOs.)
Distro - "Distro" or "Distribution"
refers to the make or producer of a Linux version. There are many
different flavors of Linux, such as Red
Hat, Mandrake, Slackware, Caldera, etc... etc... Possibly over
a hundred depending on the exact definition you use...
Console - The terms "Console"
and "Terminal"
may be used interchangeably. If there is a difference, there's no need for
a newbie to be concerned with it. This is where you will run into the
"prompt", mentioned earlier in this list. Linux commands are typed into a
console or terminal.
GUI - "GUI"
is an acronym for "Graphical User Interface". It is a relatively generic
term used to describe the system by which we are able to manipulate our PC
by using the mouse, icons, and the likes. Most Linux GUIs run on top of
XFree86.
X - "X" usually refers to "XFree86", a free version of the "X Window
System". The X Window System is an "open standards" based method of
controlling graphical information on your screen.
Window Manager - A "Window
Manager" or "WM" for short, has the job of managing all the windows,
window borders, window sizes, and menus of a GUI in X. If X is the bottom
layer of a GUI, the Window Manager runs on top of X. Without a manager, X
is much less useful. Generally each open window will cover the previous
window, requiring you to shut it down to get to the buried window. That
offers very little advantage over using a Prompt. Examples of Window
Managers are Enlightenment
(sometimes referred to as just E), WindowMaker, and IceWM, just to name a few. They
are in fact numerous.
Desktop Environment - The "Desktop Environment" runs on top of
the Window Manager , just as the WM runs on top of X. The Desktop
Environment provides us handy add-ons to the WM, such as icons,
task-bars,and possibly a whole suite of applications to use such as
browsers, file managers, IRC clients, etc... The list can be quite
extensive. Gnome and KDE are examples of Desktop Environments,
although KDE can blur the line as it also contains KWM which is a WM.
ASCII - "ASCII"
is another acronym, it stands for American Standard Code for Information
Interchange. It is a code used to share information between dissimilar
equipment and computers, possibly made by different manufacturers. It
consists of 128 characters, including printable characters such as the
alphabet, numbers, space, and punctuation . It also contains codes which
do not print directly, such as escape, tab, delete, etc.
Source Code - "Source
Code" is a program's instructions written as a ASCII text file. It
must be "Compiled" for it to actually do anything useful on a PC. Once it
is Compiled, you will probably have some sort of binary.
Binary - "Binary"
usually means an "Executable" file. That is, it may be run or executed to
actually do something useful. Netscape, Explorer, and even the kernel are
all examples of binaries.
Compile - "Compile"
or "Re-Compile" is the process of turning Source Code into an actual
Binary or executable file. This is done by sending the Source Code
through a Compiler, such as GCC for example. Any more detail is really
beyond the scope of anything that would be considered basic for a newbie.
Help with compiling may be found here.
Makefile - A "Makefile"
is like a road map that instructs the compiler on just how to turn the
Source Code into a binary. It contains things like Optimizations to use,
where the finished product should be installed, the "Mode" the installed
file should be, and more. Occasionally this file is edited by hand, but
usually a "Configure Script" is used to make any needed changes.
Configure - "Configuring" basically means setting something up.
Most Source Code for Linux contains a "Configure
Script". It attempts to automatically make any changes to the
Makefile for a specific system so we don't have to edit the Makefile by
hand, which can be tricky.
RPM - "RPM"
(.rpm) is yet another acronym. This one is for the Red Hat Package
Manager. It's a system for managing software on a Linux system, or more
specifically, on the Red Hat or Mandrake distros. It is
usually used to install, un-install, and update software. It may also be
used on any other Distro that supports the standard. There are also other
package management schemes like DEB (.deb) for Debian systems, or
Slackware Package (.tgz) for Slackware systems.
(Note: not all .tgz files are Slackware Packages, it is also an
abbreviation for a Gzipped (.gz) Tar (.tar) file (.tar.gz).)
TAR - "Tar" (.tar)
is an archive utility, used to group files and their directory structure
together. It was originally used to back-up (copy) file systems to a
magnetic tape medium. Nowadays it is used quite extensively for
distributing Source Code and files that do not necessarily reside on a
back-up tape.
GZIP - "Gzip"
(.gz) is another compression format that compresses single files unless
combined with Tar (tar.gz or .tgz) to increase the compression rate for
files. Other compression formats such as Bzip2 (.bz), Z (.Z) and plain
old Zip (.zip) files which are compatible with the DOS/Windows PkZip.
Note: Although every effort has been made to ensure the accuracy of
this document, errors may occur. Please email me, hemi_, with any corrections,
comments, or suggestions.
Copyright (c) 2000 by Matthew
Poor. This material may be distributed only subject to the terms and
conditions set forth in the Open Publication License, v1.0 or later (the
latest version is presently available at http://www.opencontent.org/openpub/).
|