<glossary id="glossary">
<title>Glossary (DRAFT, but not for long hopefully)</title>

	<blockquote><para><quote>The Librarian of the Unseen University
	had unilaterally decided to aid comprehension
	by producing an Orang-utan/Human Dictionary.
	He'd been working on it for three months.
	It wasn't easy.  He'd got as far as `Oook.'</quote>
	(Terry Pratchett, ``Men At Arms'')</para></blockquote>

	<para> This is a short list of word definitions for concepts
	relating to Linux and system administration.  </para>

	<glossentry>
	<glossterm>CMOS RAM</glossterm>
	<glossdef><para>
	CMOS stands for "Complementary Metal Oxide Semiconductor".  
	It is a complex technology, but put very simply it is a type 
	of transistor which maintains its state even if computer is 
	powered off.  This is due to a small battery on the motherboard. 
	As a result, it  does not lose what was	stored on it when the 
        power is switched off.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>account</glossterm>
	<glossdef><para>
	A Unix system gives users <glossterm>accounts</glossterm>.  It 
	gives them a username and a password with which to log on to the 
	account.  A home directory in which to store files is usually 
	provided, and permissions to access hardware and software.  These 
	things taken as a whole are an <glossterm>account</glossterm>.
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>application program</glossterm>
	<glossdef><para>
	Software that does something useful.  The results of using an
	application program is what the computer was bought for.  
	See also system program, operating system.
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>bad block</glossterm>
	<glossdef><para>
	A block (usually one sector on a disk) that cannot reliably hold 
	data.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>bad sector</glossterm>
	<glossdef><para>
	Similar to <glossterm>bad block</glossterm> but more precise in 
	the case where a block and a sector may be of differing sizes.
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>boot sector</glossterm>
	<glossdef><para>
	Usually the first sector on any given partition.  It contains 
	a very short program (on the order of a few hundred bytes) which 
	will load and start running the operating system proper.
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>booting</glossterm>
	<glossdef><para>
	Everything that happens between the time the computer is 
	switched on and it is ready to accept commands/input from 
	the user is known as <glossterm>booting</glossterm>.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>bootstrap loader</glossterm>
	<glossdef><para>
	A very small program (usually residing in ROM) which reads 
	a fixed location on a disk (eg. the <glossterm>MBR</glossterm>)
	and passes control over to it.  The data residing on that fixed 
	location is, in general, slightly bigger and more sophisticated, 
	and it then takes responsibility for loading the actual operating 
	system and passing control to it.
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>cylinder</glossterm>
	<glossdef><para>
	The set of <glossterm>tracks</glossterm> on a multi-headed disk 
	that may be accessed without head movement.  In other words the 
	tracks which are the same distance from the spindle about which 
	the disk <glossterm>platters</glossterm> rotate.  Placing data 
	that is more likely to be accessed at the same time on the same 
	cylinder can reduce the access time significantly as moving the 
	read-write heads is slow compared to the speed with which the 
	disks rotate.
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>daemon</glossterm>
	<glossdef><para>
	A process lurking in the background, usually unnoticed, until
	something triggers it into action.  For example, the 
	<command>update</command>
	daemon wakes up every thirty seconds or so to flush the buffer
	cache, and the <command>sendmail</command> daemon awakes whenever 
	someone sends mail.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>daylight savings time</glossterm>
	<glossdef><para>
	A time of the year during which clocks are set forward one hour.
	Widely used around the world in summer so that evenings have more
	daylight than they would otherwise.
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>disk controller</glossterm>
	<glossdef><para>
	A hardware circuit which translates instructions about disk access 
	from the operating system to the physical disk.  This provides a 
	layer of abstraction that means that an operating system does not 
	need to know how to talk to the many different types of disks, but 
	only needs to know about the (comparatively low) number of types of 
	disk controller.  Common disk controller types are IDE and SCSI.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>emergency boot floppy</glossterm>
	<glossdef><para>
	A floppy disk which can be used to boot the system even 
	if the hard disk has suffered damage on its filesystem.  
	Most linux distributions offer to make one of these during 
	installation, this is highly recommended.  If your Linux 
	distribution does not offer this facility then read the
	Boot floppy HOWTO, available at the LDP (**Find URL to cite**).
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>fibre channel</glossterm>
	<glossdef><para>
	A high speed networking protocol primarily used in Storage
	Area Networks.  Unlike it's name suggests, fibre channel can be 
	ran over fiber optic, or copper cables.
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>filesystem</glossterm>
	<glossdef><para>
	A term which is used for two purposes and which can have two 
	subtly different meanings.  It is either the collection of 
	files and directories on a drive (whether hard drive, floppy,
	Cd-ROM, etc).  Or it is the markers put onto the disk media 
	which the OS uses to decide where to write files to (inodes, 
	blocks, superblocks etc).  The actual meaning can almost 
	always be inferred from context.
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>formatting</glossterm>
	<glossdef><para>
	Strictly, formatting is organizing and marking the surface of 
	a disk into <glossterm>tracks</glossterm>, <glossterm>sectors
	</glossterm>, and <glossterm>cylinders</glossterm>.  It is also
	sometimes (incorrectly)	a term used to signify the action of 
	writing a <glossterm>filesystem</glossterm> to a disk (especially
	in the MS Windows/MS DOS world).
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>fragmented</glossterm>
	<glossdef><para>
	When a file is not written to a disk in contiguous <glossterm>
	blocks</glossterm>.  If there is not enough free space to write
	a full file to a disk in one continuous stream of <glossterm>
	blocks</glossterm> then the file gets split up between two or 
	more parts of the disk surface.  This is known as <glossterm>
	fragmenting</glossterm> and can make the time for loading a 
	file longer as the disk has to seek for the rest of the file.
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>full backup</glossterm>
	<glossdef><para>
	Taking a copy of the whole filesystem to a backup media 
	(eg tape, floppy, or CD).
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>geometry</glossterm>
	<glossdef><para>
	How many cylinders, sectors per cylinder and heads a disk 
	drive has.
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>high level formatting</glossterm>
	<glossdef><para>
	An incorrect term for writing a filesystem to a disk.  Often 
	used in the MS Windows and MS DOS world.
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>incremental backups</glossterm>
	<glossdef><para>
	A backup of what has changed in a filesystem since the last 
	<glossterm>full backup</glossterm>.  <glossterm>Incremental
	backups</glossterm> if used sensibly as part of a backup regime, 
	can save a lot of time and effort in maintaining a backup of data.
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>inode</glossterm>
	<glossdef><para>
	A data structure holding information about files in a Unix 
	file system.  There is an inode for each file and a file is
	uniquely identified by the file system on which it resides 
	and its inode number on that system.  Each inode contains 
	the following information: the device where the inode resides, 
	locking information, mode and type of file, the number of links
	to the file, the owner's user and group ids, the number of bytes 
	in the file, access and modification times, the time the inode 
	itself was last modified and the addresses of the file's 
	blocks on disk.  A Unix directory is an association between 
	file leafnames and inode numbers.  A file's inode number 
	can be found using the "-i" switch to ls.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>iSCSI</glossterm>
	<glossdef><para>
	A network storage protocol that enables the sending of SCSI commands
	over a TCP/IP network.  Primarily used in Storage Area Networks.
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>kernel</glossterm>
	<glossdef><para>
	Part of an operating system that implements the interaction with
	hardware and the sharing of resources.  See also system program.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>local time</glossterm>
	<glossdef><para>
	The official time in a local region (adjusted for location around 
	the Earth); established by law or custom.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>logical partition</glossterm>
	<glossdef><para>
	A partition inside an <glossterm>extended partition</glossterm>, 
	which is ``logical'' in that it does not exist in reality,
	but only inside the logical structure of the software.
	</para></glossdef>
	</glossentry>

        <glossentry>
        <glossterm>logical volume manager (LVM)</glossterm>
        <glossdef><para>
	A collection of programs that allow larger physical
	disks to be reassembled into "logical" disks that can be shrunk or 
	expanded as data needs change.
        </para></glossdef>
        </glossentry>

	<glossentry>
	<glossterm>low level formatting</glossterm>
	<glossdef><para>
	Synonymous with <glossterm>formatting</glossterm> and used in 
	the MS DOS world so differentiate from creating a filesystem 
	which is also known as formatting sometimes.
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>mail transfer agent</glossterm>
	<glossdef><para>
	(MTA) The program responsible for delivering e-mail messages.  
	Upon receiving a message from a <glossterm>mail user agent
	</glossterm> or another MTA it stores it temporarily locally 
	and analyzes the recipients and either delivers it (local 
	addressee) or forwards it to another MTA.  In either case 
	it may edit and/or add to the message headers.  A widely used 
	MTA for Unix is sendmail.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>mail user agent</glossterm>
	<glossdef><para>
	(MUA) The program that allows the user to compose and read 
	electronic mail messages.  The MUA provides the interface 
	between the user and the <glossterm>mail transfer agent
	</glossterm>.  Outgoing mail is eventually handed over to an 
	MTA for delivery while the incoming messages are picked up 
	from where the MTA left it (although MUAs running on 
	single-user machines may pick up mail using POP).  
	Examples of MUAs are pine, elm and mutt.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>master boot record</glossterm>
	<glossdef><para>
	(MBR) The first logical sector on a disk, this is (usually) 
	where the BIOS looks to load a small program that will boot 
	the computer.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>network file system</glossterm>
	<glossdef><para>
	(NFS) A protocol developed by Sun Microsystems, and defined in 
	RFC 1094 (FIND URL), which allows a computer to access files 
	over a network as if they were on its local disks.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>operating system</glossterm>
	<glossdef><para>
	Software that shares a computer system's resources (processor,
	memory, disk space, network bandwidth, and so on) between
	users and the application programs they run.  Controls access
	to the system to provide security.  See also kernel, system program,
	application program.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>partition</glossterm>
	<glossdef><para>
	A logical section of a disk.  Each partition normally has its 
	own file system.  Unix tends to treat partitions as though 
	they were separate physical entities.
	</para></glossdef>
	</glossentry>
	      
	<glossentry>
	<glossterm>password file</glossterm>
	<glossdef><para>
	A file that holds usernames and information about their accounts 
	like their password.  On Unix systems this file is usually 
	<filename>/etc/passwd</filename>.  On most modern Linux systems 
	the <filename>/etc/passwd</filename> file does not actually hold 
	password data.  That tends to be held in a different file <filename>
	/etc/shadow</filename> for security reasons.  See manual pages 
	passwd(5) and shadow(5)	for more information.
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>physical extents</glossterm>
	<glossdef><para>
	A term used to describe a the chunks a physical volume is broken
	down into when using the Logical Volume Manager.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>physical volume</glossterm>
	<glossdef><para>
	A term used an actual disk partition, usually in reference to the 
	logical volume manager.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>platters</glossterm>
	<glossdef><para>
	A physical disk inside a hard drive.  Usually a hard drive is 
	made up of multiple physical disks stacked up on top of each 
	other.  One individual disk is known as a <glossterm>platter
	</glossterm>.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>power on self test</glossterm>
	<glossdef><para>
	(POST) A series of diagnostic tests which are run when a computer 
	is powered on.  Typically this might include testing the memory, 
	testing that the hardware configuration is the same as the last
	saved configuration, checking that any floppy drives, or hard 
	drives which are known about by the BIOS are installed and working.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>print queue</glossterm>
	<glossdef><para>
	A file (or set of files) which the print <glossterm>daemon
	<glossterm> uses so that applications which wish to use the 
	printer do not have to wait until the print job they have sent 
	is finished before they can continue.  It also allows multiple 
	users to share a printer.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>read-write head</glossterm>
	<glossdef><para>
	A tiny electromagnetic coil and metal pole used to write and read 
	magnetic patterns on a disk.  These coils move laterally against 
	the rotary motion on the <glossterm>platters</glossterm>.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>root filesystem</glossterm>
	<glossdef><para>
	The parent of all the other filesystems mounted in a Unix filesystem 
	tree.  Mounted as / it might have other filesystems mounted on it 
	(/usr for example).  If the root filesystem cannot be mounted then the 
	<glossterm>kernel</glossterm> will panic and the system will not be 
	able to continue <glossterm>booting</glossterm>
	</para></glossdef>
	</glossentry>
	
	<glossentry>
	<glossterm>run level</glossterm>
	<glossdef><para>
	Linux has up to 10 runlevels (0-9) available (of which usually only 
	the first 7 are defined).  Each runlevel may start a different set 
	of services, giving multiple different configurations in the same 
	system.  Runlevel 0 is defined as ``system halt'', runlevel 1 is 
	defined as ``<glossterm>single user mode</glossterm>'', and runlevel 
	6 is defined as ``reboot system''.  The remaining runlevels can, 
	theoretically, be defined by the system administrator in any way.  
	However most distributions provide some other predefined runlevels.  
	For example, runlevel 2 might be defined as ``multi-user console'', 
	and runlevel 5 as ``multi-user X-Window system''.  These definitions 
	vary considerably from distribution to distribution, so please check 
	the documentation for your own distribution.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>sectors</glossterm>
	<glossdef><para>
	The minimum <glossterm>track</glossterm> length that can be 
allocated 
	to store data.  This is usually	(but not always) 512 bytes.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>shadow passwords</glossterm>
	<glossdef><para>
	Because the <glossterm>password file</glossterm> on Unix systems 
often 
	needs to be world readable it usually does not actually contain the 
	encrypted passwords for users' accounts.  Instead a shadow file	is 
	employed (which is not world readable) which holds the encrypted 
	passwords for users' accounts.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>single user mode</glossterm>
	<glossdef><para>
	Usually runlevel 1.  A runlevel where logins are not allowed except 
	by the root account.  Used either for system repairs (if the 
	filesystem is partially damaged it may still be possible to boot into
	runlevel 1 and repair it), or for moving filesystems around between 
	partitions.  These are just two examples.  Any task that requires a 
	system where only one person can write to a disk at a time is a 
	candidate for requiring runlevel 1.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>spool</glossterm>
	<glossdef><para>
	To send a file (or other data) to a queue.  Generally used in 
	conjunction with printers, but might also be used for other 
	things (mail for example).  The term is reported to be an acronym 
	for ``Simultaneous Peripheral Operation On-Line'', but according 
	to the <ulink url="http://www.tuxedo.org/~esr/jargon">Jargon File
	</ulink> it may	have been a backronym (something made up later 
	for effect).
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>system call</glossterm>
	<glossdef><para>
	The services provided by the kernel to application programs,
	and the way in which they are invoked.  See section 2 of the
	manual pages.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>swap space</glossterm>
	<glossdef><para>
	Space on a disk in which the system can write portions of memory 
	to.  Usually this is a dedicated partition, but it may also be 
	a swapfile.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>system program</glossterm>
	<glossdef><para>
	Programs that implement high level functionality of an operating
	system, i.e., things that aren't directly dependent on the
	hardware.  May sometimes require special privileges to run
	(e.g., for delivering electronic mail), but often just commonly
	thought of as part of the system (e.g., a compiler).  See also
	application program, kernel, operating system.
	</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>time drift</glossterm>
	<glossdef><para>
	This is a term for a computers inaccuracy at keeping track of time. 
	All computers have some rate of error when keeping time.  With newer
	computers this rate of error is extremely small.</para></glossdef>
	</glossentry>

	<glossentry>
	<glossterm>track</glossterm>
	<glossdef><para>
	The part of a disk <glossterm>platter</glossterm> which passes 
	under one <glossterm>read-write head</glossterm> while the head 
	is stationary but the disk is spinning.  Each track is divided 
	into <glossterm>sectors</glossterm>, and a vertical collection of 
	tracks is a <glossterm>cylinder</glossterm>
	</para></glossdef>
	</glossentry>

        <glossentry>
        <glossterm>volume group</glossterm>
        <glossdef><para>
	A collection of physical volumes broken down into physical 
	extents, and available for use in logical partitions.
        </para></glossdef>
        </glossentry	
</glossary>
