marketing information is wealth

Wednesday, January 6, 2010

Introduction to XFree86 and X11

X11 is a windowing system for UNIX clone operating systems. The X Window System with source code was issued by the MIT Consortium along with a set of original copyright notices. The
X11 release on which XFree86.3.1.2 (or greater) is based is X11 Release 6.
The MIT Consortium's work is continued by the X Consortium, which just released an updated X called X11R6. Most commercial releases of Linux already include X11R6.
Some XFree86 servers are partly derived from X386 1.2, which was the X server distributed with X11R5. However, many servers have been developed in the past few years. Although the source and installation trees retain the X386 name--simplifying maintenance of the source trees--there is no connection between XFree86 and the commercial X386 product sold by SGCS. The XFree86 Project maintains technical contacts in an effort to keep changes that affect the user from diverging too radically from the workings of the products. Neither group is involved directly in the workings of the other. In the past, the XFree86 development team had several problems because it was not a legal organization, which made it impossible to become a member of the X Consortium, Inc. Not being a member was detrimental because new releases are provided only for members by the X Consortium before the official release date. This reason, along with several others, led to the founding of The XFree86 Project, Inc.

Installing X Window on Linux

This details the way to install X Window system for Linux. This version of X Window for Linux, called XFree86 Version 3.1.2, is an enhanced version of the X Window System Version 11 Release 6 with support for many versions of UNIX, including Linux. XFree86 supports considerably more hardware than the video hardware supported by the MIT standard release of X Window.
Please note that even though I try to cover all the bases for installing X11 on your Linux system, I cannot cover all the hardware out there for PCs. In other words, this is moot if you happen to have that one video card this version of XFree86 on Linux will smoke! So read all the items here
carefully and see how they apply to your hardware. You could also check , "Types of Linux Available," for the listing of the hardware supported by this version of Linux. Check the HOWTO files for Hardware and Xfree86 for more up-to-date information.You can use the terms X, XFree86, X11, and X Window interchangeably, if you do not care about legal issues. Actually, however, XFree86 refers to the product of The XFree86 Project, Inc.
You can also look at the installation documentation files and other manuals that come with XFree86 in your /usr/X11R6/lib/X11/etc directory. The main directory path is /usr/X11R6 for access to this tree, so that we are compatible with UNIX installations of X11R6. To read these documents, you need a working man program, as well as the groff package for formatting documents. Note that groff is required often to read man pages, so you should install the groff package, even though some distributions regard the groff package as optional.

Wednesday, December 2, 2009

What's a Linux Release?

A Linux release is a set of files for a complete Linux system. Various changes made by the Linux community are incorporated into each release.

Linux releases are identified by numbers. These numbers are of the form X.YY.ZZ, where X is between 0 and 9, and YY and ZZ are numbers between 0 and 99. Generally, the higher the number, the newer the release. Some release numbers also include pNN, where NN is a number between 1 and 20. These refer to patches to a specific Linux version (a patch is a fix or an update to the software). For example, 0.99p15 would mean the fifteenth patch to the Linux release 0.99.

A release consists of several components called series of disks, or a collection of disks. For example, the X series of disks comes on 10 disks. Each series is referred to by its name. A
name generally tells you who put the software together and what its date is.

Some of the releases of Linux are as follows:
* The Red Hat Software Inc. Release This is a release of Linux from Red Hat Software Inc. The latest version is 3.0.3, which is included on the CD-ROM at the back of this book.
The highlight of the installation package is the Red Hat Packet Manager (RPM). Using the RPM enables you to safely install and uninstall packages. By far, the uninstall capability of the package is the best feature because most upgrades to critical packages require a complete Linux installation. Red Hat Linux is also notable for the ability to install from an X session, assuming the video card and monitor are supported by Linux.

* Slackware
This is a popular release of Linux included with this book's sister books: Linux Unleashed Second Edition and Linux System Administrator's Survival Guide. You can get versions
of this release on CD-ROM from various vendors for about $25. The primary distributor for this release is PatrickVolkerding, who can be reached at volkerdi@mhdl.moorhead.msus.edu.

* The Softlanding Linux System Release (SLS) This release consists of about 23 disks for Linux and 10 for X11. The first disk (a1) must be "rawritten" (using rawrite.exe in Chapter 3, "Installing and Updating Linux") on floppies, and the rest of the images must be put onto
DOS-formatted floppies using the DOS copy command. This release contains all the software package(s) you need to get started with Linux, and for newcomers it is easy to install.
The SLS release can also be found at tsx-11.mit.edu in the directory/pub/linux/packages/SLS and on sunsite.unc.edu in the directory /pub/Linux/SLS. By snail mail, SLS is available from Softlanding Software 910 Lodge Ave. Victoria, B.C. Canada V8X-3A8 (604) 360-0188

* The TAMU (Texas A&M University) Linux Release This release is supposedly like the SLS release, but it has some different software packages and a different installation procedure than SLS. The installation procedure is the main difference from SLS. A single boot diskette,
which boots directly into an automated installation program, is used. This installation program asks a few questions about the desired configuration and sets up everything, including your file systems, booting from the hard drive with LILO (see Chapter 5, "Odds and Ends") and a simplified X configuration. This release is a full-featured package, including X Window, emacs, networking tools, boot utilities, and a list of sources for all installation programs without any use restrictions. TAMU is available from sc.tamu.edu in
pub/free_unix4.

* H.J. Lu's bootable rootdisk This is a release of the Linux kernel and basic binaries on
a single floppy. It, along with Lu's gccdisk, libdisk, and so on, is good for upgrading or installing a basic Linux system by hand. It's not recommended for newcomers, because there's no real install script; it's mostly meant as an upgrade of the basic system software.
H.J. Lu's bootable rootdisk release is found at tsx-11.mit.edu: inthedirectory/pub/linux/packages/GCC.

* The Manchester Computing Centre Interim Release This is the fabled MCC-Interim Linux release, which was originally the de facto standard Linux distribution. This release has almost all of the important Linux software, such as Slackware, but does not contain emacs or X Window.MCC-Interim can be found on sunsite.unc.edu in the directory /pub/Linux/distributions/MCC and also at ftp.mcc.ac.uk in the directory /pub/linux/mcc-interim.

Special Requirements for X

Your 4MB of RAM will make X run very slowly. You should have at least 8MB of RAM for running programs in X. You will need another 6MB to 10MB of disk space for the GCC compiler in addition to X if you want to develop applications for X.


Do not try to bring up an Xserver that does not support your hardware. There have been
cases where damage has resulted from pushing the monitor (especially fixed-frequency
monitors) beyond its capabilities.


As far as mice go, Linux supports both serial and Bus varieties. For the serial mice, you can use Logitech, Microsoft, MouseSystems, or compatibles. The following Bus mice are known to work: Logitech, Microsoft, ATI_XL, and PS/2 (aux). There you have it, a brief introduction to an operating system that could very well change the way you program. Now for getting
yourself ready for Linux.

Other Hardware Requirements

Linux will also run on a number of laptop machines (some laptops use certain software interrupts to power the memory, and Linux doesn't work well with these systems to date). The best way to find out if Linux will run on your hardware is just to try it out.

At the time of writing, Linux doesn't run on an IBM PS/2 computer.

There are other hardware drivers currently under development for Linux. To use these drivers, however, you usually have to patch them into your kernel code, which assumes that you already have a running Linux system (a kind of chicken-and-egg problem if you have not already installed Linux). In such cases, you can install whatever Linux you happen to have and then apply the patches with the Linux patch command.

Then there is the issue of tape drives for Linux. There is a working QIC-02 device driver for Linux, supporting Everex/Wangtek cards. There are additional patches for the QIC-02 to support Archive SC402/499R. You can find them in /pub/linux/alpha/qic-02 directory at tsx-11.mit.edu server. (There have been reports of some bugs in the driver, but you can back up and restore.)

Most of the newer tape drivers are all for SCSI drives, so if you have a SCSI tape drive, chances are that it is supported.

Hardware Requirements

Now that you know a little about the good and bad points ofLinux, let's see what's required in terms of hardware.

Unlike some other versions of UNIX for the PC, Linux is very small. You can run an entire system from a single, high-density 5.25-inch floppy. However, to run a complete Linux system, there are other hardware requirements.

Linux, by its very nature, is continuously expanding, and more features are added every day. However, hardware compatibility is limited to that hardware the developers themselves have access to. For instance, if none of the Linux developers has access to the WhizBang Slice-O-Matic T3222 Ethernet card from a no-name manufacturer, then chances are it isn't supported.

On the other hand, there are many generic drivers for hardware, such as the IDE disk driver, which should work with all IDE hard drives and adapters regardless of manufacturer. Of course, the developers of the drivers couldn't test their software against every IDE device on the market, so they assume the IDE standards are followed by manufacturers. If a device doesn't work, it's probably because the manufacturer deviated from the standards, or added features the generic drivers can't handle.

A good place to look on the CD-ROM is in the /docs/howto directory for the Hardware-HOWTO file. This file will list a lot of the supported hardware for Linux.

If your favorite peripheral isn't supported by Linux, all that's required is to write a kernel driver for it. This may be easy or difficult, depending on the hardware and the technical specifications that are available. For example, some hardware developers prefer to write their own drivers for MS-DOS and Windows, and not release specifications for third parties to write their own. Therefore, writing drivers for Linux will be difficult, if not impossible.

The following is a rough guideline of some hardware requirements for Linux. You do not have to follow them directly, but this list should give you a rough idea of what's required:

parts of Linux

* Some of the features on your favorite UNIX system may not be available for your Linux system. Your choice in this matter is to either write the application yourself, convince
someone else to write it, or find an alternative process (the easiest out in most cases).

* As with software, some of the hardware in your machine may not be supported by Linux. Again, your choices are to either write the driver software yourself or get it from somewhere
else.

* You do have to spend some time and effort managing your Linux machine. You do develop a knack for fixing problems from experience. However, only with experience can you learn to recognize common problems and find or develop solutions.