Linux Tips #11



---------------------------------------------------------------

If you like Tip of the Day please share it with friends and 
co-workers, and encourage them to sign up! It's free. You can
unsubscribe or change your e-mail address at any time.

To subscribe to or unsubscribe from this newsletter:
* Use your browser to visit our Newsletter Subscription Center:
  http://www.winmag.com/subscribe/
* Scroll down to the Tip of the Day section.
* Click "Choose an option," and select Subscribe or Unsubscribe.
* Scroll to the top of the page, and type your e-mail address 
  in the "E-mail" field.
* Click the Submit button below your e-mail address.

Copyright 2000 CMP Media Inc. A service of Winmag.com.
http://www.winmag.com/

Distributed by MessageMedia Inc. - http://www.messagemedia.com

---------------------------------------------------------------


*1. THE ZOPE APPLICATION SERVER                 
        
Zope is an Open Source application server and portal toolkit. It
 can be installed on most Unix platforms as well as Windows NT
 and can be used with most popular Web servers or its own
 built-in Web server. Zope is written in Python and C and can be
 customized or extended by its users.


*2. WHAT'S A SEGMENTATION FAULT?                 
        
If you're familiar with Linux programming, you must have
 encountered this error message before: "Segmentation fault
 (core dumped)". What exactly does it mean? 

A segmentation fault occurs when an invalid region of memory is
 accessed, for example, when the program dereferences a null
 pointer or when it attempts to access a memory region through
 a wild pointer. Consequently, the kernel terminates the
 offending program and creates a core dump file named "core" that
 is located in the current working directory.


*3. WHAT'S IN A PORT?                 
        
Usually, machines run multiple concurrent TCP/IP connections.
 Therefore, an IP address alone cannot provide a unique
 identifier for every connection on a given machine. For this
 purpose, a connection is identified by IP address and port
 number. A port number is a 16-bit integer that identifies an
 endpoint connection on a host. Thus, the combination of IP
 address and port number provides a worldwide unique
 identification of a TCP/IP connection.


*4. RESERVED PORTS                 
        
Port numbers range from 0 to 65535. However, Linux reserves port
 numbers 0-1024. These ports are called "reserved ports" because
 they may be used only by processes running as root. Ordinary
 processes cannot use these port numbers.


*5. WELL-KNOWN PORTS                 
        
Many common protocols such as ftp, http, and telnet are based on
 "well-known port numbers": they are assigned an agreed-upon port
 number, which is set by the Internet Assigned Number Authority
 (IANA). For instance, http uses port 80 by default. Well-known
 ports enable clients to access services easily from a server,
 since the particular port number of a given service is already
 known. Another advantage in using well-known port numbers is the
 ability to provide many services on a single machine, when each
 service is identified by its port numbers.


*6. THE GNU IMAGE MANIPULATION PROGRAM                 
        
The GNU Image Manipulation Program (GIMP) is a freely distributed
 image processing program capable of photo retouching, image
 composition, and image authoring. This site contains information
 about downloading, installing, using, and enhancing GIMP,
 including the latest releases, plug-ins, and scripts: 

http://www.gimp.org/


*7. SHORT AND LONG COMMAND LINE OPTIONS                 
        
Command line options come in two flavors: short options and long
 options. A short option consists of a dash followed by a single
 alphanumeric character. For example, the rm command, which
 deletes one or more files, can take the short option -d to
 remove a directory: 

  rm -d 

A long option is indicated by a sequence of two dashes followed
 by a string. Thus, 

  rm --directory 

is the long option equivalent of rm -d (both forms are
 interchangeable). Long options are more readable, so Linux
 novices may feel more comfortable with them.


*8. A BIT OF HISTORY: THE UNIX WARS                 
        
In the mid 1980s, Unix development split into two schools: one at
 the University of Berkeley and the other at AT&T Bell Labs. The
 Berkeley version of Unix became known as Berkeley Software
 Distribution (BSD). The AT&T version became known as System V.
 The two Unix versions are incompatible in many ways. One of the
 most noticeable differences between the two is their
 incompatible networking interfaces. BSD uses sockets, whereas
 System V relies on Transport Layer Interface (TLI). Linux
 adopted BSD sockets as its networking interface. This is a fact
 to bear in mind when porting legacy software that was originally
 written for System V Unix.


*9. LOCKING REGIONS OF MAPPED MEMORY                 
        
A region of mapped memory may be swapped by the kernel. When a
 swapped memory region is accessed, it first has to be re-read
 from a disk. In time-critical applications, this latency can be
 unacceptable. To ensure that a specific region of mapped memory
 is never swapped, you can explicitly lock it. For that purpose,
 you use the MAP_LOCKED flag when calling the memory-mapping
 function mmap().


*10. THE RPM PACKAGE                 
        
The Red Hat Package Manager (RPM) is an open packaging system
 distributed under the GPL terms. RPM works on Red Hat Linux as
 well as other Linux distributions and Unix systems. For an end
 user, RPM provides many features that significantly simplify the
 process of installing, uninstalling, and upgrading software
 packages. For a developer, RPM packages source code for software
 into source and binary packages. 

You can read more about RPM and download its latest version from 

http://www.rpm.org
