Sophie

Sophie

distrib > Mandriva > 8.2 > i586 > media > contrib > by-pkgid > 0c3b27e96d9e34935eb8f552af26d2e9 > files > 19

libtux-devel-2.1.1-2mdk.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML
><HEAD
><TITLE
>What is TUX?</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.74b"><LINK
REL="HOME"
TITLE="TUX 2.1"
HREF="index.html"><LINK
REL="PREVIOUS"
TITLE="TUX 2.1"
HREF="index.html"><LINK
REL="NEXT"
TITLE="Summary of System Requirements"
HREF="sys-requirements.html"></HEAD
><BODY
CLASS="CHAPTER"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>TUX 2.1: Reference Manual</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="index.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="sys-requirements.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="CHAPTER"
><H1
><A
NAME="intro"
>Chapter 1. What is TUX?</A
></H1
>    

    

    

    

    <P
>      TUX is a kernel-based web server licensed under the <A
HREF="http://www.gnu.org/copyleft/gpl.html"
TARGET="_top"
>GNU General Public License (GPL)</A
>.  
    </P
>

    <P
>      It is currently limited to serving static web pages and coordinating
      with kernel-space modules, user-space modules, and regular user-space web server
      daemons to provide dynamic content.  Regular user-space web servers do not
      need to be altered in any way for TUX to coordinate with them.  However,
      user-space code has to use a new interface based on the tux(2) system call. 
    </P
>   

    <P
>      Although dynamic content is becoming increasingly popular, there is still
      a need to serve static content.  For example, nearly all images are
      static.  TUX can serve static content very efficiently from within
      the Linux kernel.  A similar operation is already performed by the Network
      File System (NFS) daemon that runs in the kernel.
    </P
>
 
    <P
>      TUX also has the ability to cache dynamic content.  
      TUX modules (which can be build in kernel space or in user space;
      user space is recommended) can create "objects" which are stored
      using the page cache.  To respond to a request for dynamic data, a
      TUX module can send a mix of dynamically-generated data and cached
      pre-generated objects, taking maximal advantage of TUX's zero-copy
      architecture.
    </P
>

    <P
>      This new architecture for serving dynamic content requires a new API.  The
      current API's for CGI can not be sufficiently mapped to TUX's API.  Thus,
      existing CGI applications must be converted before TUX will process them.
      If the CGI application does not require the increased speed of TUX, TUX
      can process it by running the CGI application normally.
      This is done through TUX's CGI module.
      TUX can also handle a complex request (CGI or otherwise) by redirecting
      it to another web server daemon such as Apache.
      In other words, static content, TUX
      modules, old-style CGI applications, and programs specifically written for
      other webservers can be run on the same system with TUX as the main web server.
    </P
>

    

    <P
>      In summary, the differences between TUX and other webservers as well as the benefits
      of using TUX include: 
    <P
></P
><UL
><LI
>        <P
>          TUX runs partly within a custom version of kernel 2.4.x or higher and
          partly as a user-space daemon.
        </P
>
      </LI
><LI
>        <P
>          With a capable network card, TUX enables direct scatter-gather DMA
          from the page cache directly to the network, thus avoiding data copies. 
        </P
>
      </LI
><LI
>        <P
>          Whenever TUX is unsure how to process a request or receives a
          request it is unable to handle, it always redirects the request to the
          user-space web server daemon to handle it in an RFC-compliant manner.
          An example of this user-space web server daemon is Apache.  
        </P
>        
        <DIV
CLASS="NOTE"
><P
></P
><TABLE
CLASS="NOTE"
WIDTH="90%"
BORDER="0"
><TR
><TD
WIDTH="25"
ALIGN="CENTER"
VALIGN="TOP"
><IMG
SRC="./stylesheet-images/note.gif"
HSPACE="5"
ALT="Note"></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
>          <P
>        
            Apache is used throughout this document as the user-space web server daemon for readability.
          </P
>
        </TD
></TR
></TABLE
></DIV
> 
      </LI
></UL
>  
    </P
>

    <P
>      For questions or comments about TUX or this documentation, join the <TT
CLASS="EMAIL"
>&#60;<A
HREF="mailto:tux-list@redhat.com"
>tux-list@redhat.com</A
>&#62;</TT
> mailing list.
      For instructions on joining the mailing list, see
      <A
HREF="http://www.redhat.com/mailing-lists/"
TARGET="_top"
>http://www.redhat.com/mailing-lists/</A
>.
    </P
>
    <P
>      Also visit the Red Hat TUX Web Server Support page <A
HREF="http://www.redhat.com/services/techsupport/application/tux.html"
TARGET="_top"
>http://www.redhat.com/services/techsupport/application/tux.html</A
>.
    </P
> 

    <DIV
CLASS="SECT1"
><H1
CLASS="SECT1"
><A
NAME="new-features"
>New TUX 2.1 Features</A
></H1
>      
      
      <P
>	The TUX 2.1 release is an incremental upgrade to TUX 1.0 and
	keeps source-code level compatibility with user-space modules. 
      </P
>
      <P
>	The incremental enhancements include
      <P
></P
><UL
><LI
>	  <P
>	    True zero-copy disk reads  Whereas TUX 1.0 copied files into a temporary
	    buffer, TUX 2.1 is integrated with the page cache and thus uses zero-copy
	    block IO.
	  </P
>
	</LI
><LI
>	  <P
>	    Generic zero-copy network writes  TUX 2.1 uses the generic zero-copy TCP
	    framework.
	  </P
>
	</LI
><LI
>	  <P
>	    Zero-copy parsing  Where possible, TUX parses input packets directly.
	    Even in RAM-limited situations, TUX now does full, back-to-back
	    zero-copy I/O.
	  </P
>
	</LI
></UL
>
      </P
>
      <P
>	Other changes include
      <P
></P
><UL
><LI
>	  <P
>	    Enhanced user-space utilities and module support.
	  </P
>
	</LI
><LI
>	  <P
>	    Mass virtual hosting support  The host-based virtual server patch has
	    been added to TUX. There is no limit on the number of virtual hosts
	    supported, only RAM and diskspace.
	  </P
>
	</LI
><LI
>	  <P
>	    CGIs can be bound to particular CPUs or can be left unbound.
	  </P
>
	</LI
><LI
>	  <P
>	    A number of bugs were fixed which caused performance problems  TUX 2.1
	    is now significantly faster than TUX 1.0!
	  </P
>
	</LI
></UL
>
      </P
>

    </DIV
>

  
  </DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="sys-requirements.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>TUX 2.1</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
>&nbsp;</TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Summary of System Requirements</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>