LINUX For YouMarch 2009 Issue Vol. 7 No. 1
For U & Me
Gee, I Like Your Desktop!
The newly released version KDE 4.2 stands out because it offers a fantastic desktop experience.
For U & Me
For U & Me
Stop Wasting CDs, Install Linux Straight from an ISO
You download the brand new Debian 5 (when it’s released) after waiting for so many months, and discover you don’t have a single blank DVD to burn the ISO image! Why worry, when there’s a simple way out!
For U & Me
Crazy Commands
Let’s have some fun with Linux commands.
For U & Me
For U & Me
Managing Music Efficiently
Are your audio files scattered all over your hard disk with missing meta data, leaving you with no easy way to recognise the songs? It’s time you got a bit organised!
For U & Me
Slax 6: Slacks Off To You!
First, there was Slackware. And then there was Slax. As the similarity between the names suggests, Slax is actually a size-optimised (well, from 1.9 GB worth of installation files to a 190.1MB LiveCD) version of Slackware that’s meant for use as a Live CD and LiveUSB.
For U & Me
For U & Me
The GNUnified Experience!
Here’s a report on an event that touched on almost all aspects of open source—from installations to kernel programming and scripting, from OpenOffice.org to Bash and Perl, from Ext4 file system to SCSI, and from scientific computing to network security.
For U & Me
Will FOSS Get Me A Job?
FOSS allows anyone to acquire the skills that lead to becoming a better developer and an improved person.
For U & Me
For U & Me
The Open Movement and the Implications of its Opportunities in Education
In this article, we look at what role the various ‘open movements’ can playin academia, and how academia should nurture them for a win-winrelationship.
For U & Me
Why Governments Should Adopt Open Source
How applicable is the open source software development model fore-governance initiatives?
For U & Me
For U & Me
Stability Out of the Box
With simplicity and stability continuing to be top priorities, Slackware 12.2 doesn’t disappoint.
For U & Me
Open Source: A Panacea for the Recession As the recession
grips more economies and enterprises, it’s the perfect time to adopt the open source business model. We explain why.
For U & MeA Matter of Recession Laugh@IT
For U & MeA Matter of Recession Laugh@IT
For U & MeA Peek Into the WWW, Courtesy MozillaCamp
Delhi’s first unconference on Mozilla technologies was a grand event with about a 100 campers who came together to share some Mozilla love on February 10. It was an event that attracted technologists and students, with Mozilla’s Seth Bindernagel and Arun Ranganathan around to discuss the future of the Web.
Admin
Admin
KVM: Virtualisation, the Linux Way
KVM, the Kernel Virtual Machine monitor, was announced in late 2006, and was merged in Linus’ tree in December the same year. It has very quickly gained wide acceptance and adoption for being the most promising and capable virtualisation strategy on Linux. Though a very young project, new features are being added at a very brisk pace thanks to the interest taken by several companies and developers across the globe.
Admin
Building A Highly Available Nginx Reverse-Proxy Using Heartbeat
Last month we discussed how to set up a highly available cluster of Web servers that are load balanced using nginx. One shortcoming in that set-up was the reverse-proxy server itself, which on crashing, will cause the entire Web server cluster to go down. Therefore, we would need to build high-availability in the reverse-proxy server itself.
Developers
Developers
Watch Out for the Signals!
What in the world is the ‘signals’ framework and how can systems programmers make use of it?
DevelopersLet a Thousand Languages Bloom! Transifex can be your gateway to translations.
Developers
DevelopersLet a Thousand Languages Bloom! Transifex can be your gateway to translations.
Developers
Flirt with Perl
Five rules you should follow.
Open Gurus
D-Bus: The Smart, Simple, Powerful IPC
Let’s learn the intricacies of D-Bus and use it to hack some nifty features into programs.
Open Gurus
Programming in Python for Friends and Relations, Part 11: Secure Communication
Here’s a simple application to help us stop making silly mistakes while communicating over e-mail.
Open Gurus
Building A Server From Scratch—Part 2: Firewalls, Port Forwarding, NAT, DHCP and TFTP
Last month, we built a server using off-the-shelf hardware. This time, let’s set up some essential server services.
Open Gurus
Open Gurus
Lynx: Old, But Still Fresh
A CLI-based browser? Whatever for? Are you still in the early 90s? You may pose all these questions, but the truth is that Lynx, a CLI-based browser, is the favourite of many.
Column: The Joy of Programming
How to Detect Integer Overflow
Integer overflows often result in nasty bugs. In this column, we’ll look at some techniques to detect an overflow before it occurs.
Column
Column
Code Sport
Welcome to another installment of CodeSport. In this month’s column, we’ll explore the best lower bounds of algorithms to determine whether a given graph is connected or not. We will then discuss the problem of finding the minimum element in a circular sorted linked list, given an arbitrary pointer into the list.
Column: A Voyage to the Kernel
Day 9 | Segment 2.3 Part 10
MAGZINE
LINUX For You THE COMPLETE MAGAZINE ON OPEN SOURCE» Linux is the fastest growing operating system » Linux is becoming the de-facto standard for embedded technology used in electronic devices » Linux is gaining ground on Desktop PCs » Linux is opening more career opportunities than the Windows platform » Linux promises to cut your IT costs considerably
LFY Magazine ArchiveThe LFY Magazine archive contains complete issue details of LINUX For You magazine. You can buy the older issues not more than five years old from http://www.kitsnspares.com/...
SUBSCRIBE LINUX
SubscribeLINUX For You (with 2 CDs) The complete magazine on Open Source LINUX For You is Asia's first and India's only magazine on Linux and Open Source Software. Launched in February 2003, LINUX For You aims to cover the complete life cycle of Linux/OSS, from development to deployment. The magazine, that aims to shift open source from labs to offices, caters to newbies, power-users, administrators, developers and enthusiasts. It's main goal is to enhance the return on investment (RoI) for organisations by deploying Linux (or open-source) solutions. In an effort to provide it's readers with a world-class product, LINUX for You has recently revamped its design and layout. The new design comes with improvised fonts, smarter content and more appropriate banners for all the articles. Accompanied by two FREE CDs or a CD and a DVD, that carry source code, white-papers, software tools, Linux distributions, and even games -- the magazine aims to provide complete solution for Linux deployment
ADVERTISEMENT TARIFF
Advertisement Tariff (Position and Hues)
Colour Positions
Indian Rate (in Rs)
International Rate (in US$)
Full Page
50,000
1,250
Half Page
28,000
700
Double Spread
90,000
2250
Quarter Page
20,000
500
Strip Ad(Vertical)
9000
250
Strip ad(Horizontal)
9000
250
Premium Positions (Colour)
Indian Rate (in Rs)
International Rate (in US$)
Back Cover
85,000
2125
Inside Front Cover
74,000
1850
Inside Back Cover
60,000
1500
Page No.3
65,000
1625
Page No.7
59,000
1475
Business Corner
Indian Rate (in Rs)
International Rate (in US$)
Full Page
24,000
600
Quarter Page
6,000
150
Half Page
12,000
300
Appointments(COLOR)
Indian Rate (in Rs)
International Rate (in US$)
Half Page
28,000
700
Full Page
50,000
1,250Additional Charge: • Specific position=20% extra • RHS position=10% extra • Bleed=10% extra Please note: Innovative positions available on request — Gatefold (Cover) — Adstrip (Cover) — Add-ons
Mechanical Details
Size
Bleed (Ht x Wd cm)
Print (Ht x Wd cm)
Full Page
26.8 x 19.5
24.0 x 18.0
Double Spread
26.8 x 39.0
24.0 x 37.0
Half Page (H)
13.0 x 19.5
11.5 x 18.0
Half Page (V)
26.8 x 9.3
24.0 x 8.5
Quarter Page
13.0 x 9.3
11.5 x 8.5
Strip (H)
4.4 x 19.5
3.0 x 18.0
Strip (V)
26.8 x 6.5
24.0 x 5.5
Material: Only positive with progressive & proofs accepted. Any other form, designing and processing charges shall have to be paid for such advertisements. Deadline for ad-material: 18th of the previous monthDates for distribution: 1st-3rd of the month
What is Linux?
Linux is a free Unix-type operating system
originally created by Linus Torvalds with the assistance of developers around the world. Developed under the GNU General Public License , the source code for Linux is freely available to everyone. Click on the link below to find out more about the operating system that is causing a revolution in the world of computers. " src="http://www.linux.org/images/button/more.gif" width=43 align=middle border=0>
For coverage of the SCO vs. IBM case, consult our SCO section
Kernel release: 2.6.29-rc8, Mar 13 2009
PCLinuxOS 2009.1 released (1), Mar 12 2009
Sendmail going to the cloud, Mar 12 2009
Oracle: If RHEL were free, we wouldn't compete, Mar 12 2009
Linux s'il vous plaît: French Gendarmie say oui to Ubuntu, Mar 12 2009
A Linux-Powered Cisco Server with VMware?, Mar 11 2009
Android leads Linux mobile sales higher, Mar 11 2009
Leading Open Source Companies Selected for First of Its Kind Trading Desk Solution, Mar 11 2009
Microsoft sabotaging GPL, claims Samba, Mar 11 2009
Linux-Lego man trumpets OSH revolution, Mar 10 2009" src="http://www.linux.org/images/button/more.gif" width=43 align=middle border=0>
The Linux kernel provides the basic services and device drivers used by all other programs running on a Linux OS system. The latest kernels available are:
Please go to for Linux kernel and development information.
window.google_render_ad();
Do you have an old PC that you're thinking of parting with? Before you send it to the landfill, you may want to pick up a copy of The Official Damn Small Linux Book. In it, you'll find out all you need to know to give your old hardware a new lease on life. For more information, we invite you to read a review of this definitive book on this popular minimalist version of Linux." src="http://www.linux.org/images/button/more.gif" width=43 align=middle border=0>
Are you thinking about switching to Linux and want to learn how to use it? Have you been using Linux for some time and want to learn even more? Then Linux Online's classroom can help! Three courses - one for beginners, another for intermediate level users and an advanced level course - are available to our visitors free of charge. What's stopping you from learning more about Linux? " src="http://www.linux.org/images/button/more.gif" width=43 align=middle border=0>
Linux Online is a community supported web site. We need the help of visitors, like you, to pay the day to day costs of operating this site. This is your opportunity to support the Linux community by making a donation to the most popular Linux resource on the net! We have a number of exciting gifts for specific amounts but any donation is graciously accepted! You can use PayPal, Visa, Mastercard, Amex, Discover or regular mail to help us build the most comprehensive Linux resource available! " src="http://www.linux.org/images/button/more.gif" width=43 align=middle border=0>
Linux Information Sheet
1. Introduction to Linux
2. Linux Features
3. Hardware Issues
.3.1 Minimal configuration
3.2 Usable configuration
3.3 Supported hardware
4. An Incomplete List of Ported Programs and Other Software
5. Who uses Linux?
6. Getting Linux
6.1 Anonymous FTP
6.2 CDROM
6.3 Other methods of obtaining Linux
7. Legal Status of Linux
8. News About Linux
9. The Future
10. This document
11. Legalese
Linux is a completely free reimplementation of the POSIX specification, with SYSV and BSD extensions (which means it looks like Unix, but does not come from the same source code base), which is available in both source code and binary form. Its copyright is owned by Linus Torvalds and other contributors, and is freely redistributable under the terms of the GNU General Public License (GPL). A copy of the GPL is included with the Linux source; you can also get a copy from ftp://prep.ai.mit.edu/pub/gnu/COPYING
Linux, per se, is only the kernel of the operating system, the part that controls hardware, manages files, separates processes, and so forth. There are several combinations of Linux with sets of utilities and applications to form a complete operating system. Each of these combinations is called a distribution of Linux. The word Linux, though it in its strictest form refers specifically to the kernel, is also widely and correctly to refer to an entire operating system built around the Linux kernel. For a list and brief discription of various distributions, see http://sunsite.unc.edu/LDP/HOWTO/Distribution-HOWTO.html None of these distributions is ``the official Linux''.
Linux is not public domain, nor is it `shareware'. It is `free' software, commonly called freeware or Open Source Software[tm] (see http://www.opensource.org), and you may give away or sell copies, but you must include the source code or make it available in the same way as any binaries you give or sell. If you distribute any modifications, you are legally bound to distribute the source for those modifications. See the GNU General Public License for details.
Linux is still free as of version 2.0, and will continue to be free. Because of the nature of the GPL to which Linux is subject, it would be illegal for it to be made not free. Note carefully: the `free' part involves access to the source code rather than money; it is perfectly legal to charge money for distributing Linux, so long as you also distribute the source code. This is a generalization; if you want the fine points, read the GPL.
Linux runs on 386/486/Pentium machines with ISA, EISA, PCI and VLB busses. MCA (IBM's proprietary bus) is not well-supported in 2.0.x and earlier versions, but support has been added to the current development tree, 2.1.x. If you are interested, see http://glycerine.itsmm.uni.edu/mca
There is a port to multiple Motorola 680x0 platforms (currently running on some Amigas, Ataris, and VME machines), which now works quite well. It requires a 68020 with an MMU, a 68030, 68040, or a 68060, and also requires an FPU. Networking and X now work. See news:comp.os.linux.m68k
Linux runs well on DEC's Alpha CPU, currently supporting the "Jensen", "NoName", "Cabriolet", "Universal Desktop Box" (better known as the Multia), and many other platforms. For more information, see http://www.azstarnet.com/~axplinux/FAQ.html
Linux runs well on Sun SPARCs; most sun4c, sun4m, and sun4u machines now run Linux, with support for sun4 in development. Red Hat Linux is (as of this writing) the only Linux distribution available for SPARCs; see http://www.redhat.com/support/docs/rhl-sparc/
Linux is being actively ported to the PowerPC architecture, including PowerMac (Nubus and PCI), Motorola, IBM, and Be machines. See http://www.cs.nmt.edu/~linuxppc/ and http://www.linuxppc.org/
Ports to other machines, including MIPS (see http://linus.linux.sgi.com and http://lena.fnet.fr/) and ARM, are under way and showing various amounts of progress. Don't hold your breath, but if you are interested and able to contribute, you may well find other developers who wish to work with you.
Linux is no longer considered to be in beta testing, as version 1.0 was released on March 14, 1994. There are still bugs in the system, and new bugs will creep up and be fixed as time goes on. Because Linux follows the ``open development model'', all new versions will be released to the public, whether or not they are considered ``production quality''. However, in order to help people tell whether they are getting a stable version or not, the following scheme has been implemented: Versions n.x.y, where x is an even number, are stable versions, and only bug fixes will be applied as y is incremented. So from version 1.2.2 to 1.2.3, there were only bug fixes, and no new features. Versions n.x.y, where x is an odd number, are beta-quality releases for developers only, and may be unstable and may crash, and are having new features added to them all the time. >From time to time, as the currect development kernel stabilizes, it will be frozen as the new ``stable'' kernel, and development will continue on a new development version of the kernel. Note that most releases of the Linux kernel, beta or not, are relatively robust; ``stable'' in this context means ``slow to change'' in addition to ``robust''.
The current stable version is 2.0.35 (this will continue to change as new device drivers get added and bugs fixed), and development has also started on the experimental 2.1.x kernels. The Linux kernel source code contains a file, Documentation/Changes, which explains changes that you should be aware of when upgrading from one kernel version to another. However, the great majority of Linux users simply update their Linux distribution occasionally to get a new kernel version.
Most versions of Linux, beta or not, are quite robust, and you can keep using those if they do what you need and you don't want to be on the bleeding edge. One site had a computer running version 0.97p1 (dating from the summer of 1992) for over 136 days without an error or crash. (It would have been longer if the backhoe operator hadn't mistaken a main power transformer for a dumpster...) Others have posted uptimes in excess of a year. One site still had a computer running Linux 0.99p15s over 600 days at last report.
One thing to be aware of is that Linux is developed using an open and distributed model, instead of a closed and centralized model like much other software. This means that the current development version is always public (with up to a week or two of delay) so that anybody can use it. The result is that whenever a version with new functionality is released, it almost always contains bugs, but it also results in a very rapid development so that the bugs are found and corrected quickly, often in hours, as many people work to fix them.
In contrast, the closed and centralized model means that there is only one person or team working on the project, and they only release software that they think is working well. Often this leads to long intervals between releases, long waiting for bug fixes, and slower development. The latest release of such software to the public is sometimes of higher quality, but the development speed is generally much slower.
For a discussion of these two models, read ``The Cathedral and the Bazaar'' at http://sagan.earthspace.net/~esr/writings/cathedral-bazaar/ by Eric Raymond.
As of September 1, 1998, the current stable version of Linux is 2.0.35, and the latest development version is 2.1.119
2. Linux Features
multitasking: several programs running at the same time.
multiuser: several users on the same machine at the same time (and no two-user licenses!).
multiplatform: runs on many different CPUs, not just Intel.
multiprocessor: SMP support is available on the Intel and SPARC platforms (with work currently in progress on other platforms), and Linux is used in several loosely-coupled MP applications, including Beowulf systems (see http://cesdis.gsfc.nasa.gov/linux-web/beowulf/beowulf.html) and the Fujitsu AP1000+ SPARC-based supercomputer.
multithreading: has native kernel support for multiple independent threads of control within a single process memory space.
runs in protected mode on the 386.
has memory protection between processes, so that one program can't bring the whole system down.
demand loads executables: Linux only reads from disk those parts of a program that are actually used.
shared copy-on-write pages among executables. This means that multiple process can use the same memory to run in. When one tries to write to that memory, that page (4KB piece of memory) is copied somewhere else. Copy-on-write has two benefits: increasing speed and decreasing memory use.
virtual memory using paging (not swapping whole processes) to disk: to a separate partition or a file in the filesystem, or both, with the possibility of adding more swapping areas during runtime (yes, they're still called swapping areas). A total of 16 of these 128 MB (2GB in recent kernels) swapping areas can be used at the same time, for a theoretical total of 2 GB of useable swap space. It is simple to increase this if necessary, by changing a few lines of source code.
a unified memory pool for user programs and disk cache, so that all free memory can be used for caching, and the cache can be reduced when running large programs.
dynamically linked shared libraries (DLL's), and static libraries too, of course.
does core dumps for post-mortem analysis, allowing the use of a debugger on a program not only while it is running but also after it has crashed.
mostly compatible with POSIX, System V, and BSD at the source level.
through an iBCS2-compliant emulation module, mostly compatible with SCO, SVR3, and SVR4 at the binary level.
all source code is available, including the whole kernel and all drivers, the development tools and all user programs; also, all of it is freely distributable. Plenty of commercial programs are being provided for Linux without source, but everything that has been free, including the entire base operating system, is still free.
POSIX job control.
pseudoterminals (pty's).
387-emulation in the kernel so that programs don't need to do their own math emulation. Every computer running Linux appears to have a math coprocessor. Of course, if your computer already contains an FPU, it will be used instead of the emulation, and you can even compile your own kernel with math emulation removed, for a small memory gain.
support for many national or customized keyboards, and it is fairly easy to add new ones dynamically.
multiple virtual consoles: several independent login sessions through the console, you switch by pressing a hot-key combination (not dependent on video hardware). These are dynamically allocated; you can use up to 64.
Supports several common filesystems, including minix, Xenix, and all the common system V filesystems, and has an advanced filesystem of its own, which offers filesystems of up to 4 TB, and names up to 255 characters long.
transparent access to MS-DOS partitions (or OS/2 FAT partitions) via a special filesystem: you don't need any special commands to use the MS-DOS partition, it looks just like a normal Unix filesystem (except for funny restrictions on filenames, permissions, and so on). MS-DOS 6 compressed partitions do not work at this time without a patch (dmsdosfs). VFAT (WNT, Windows 95) support and FAT-32 is available in Linux 2.0
special filesystem called UMSDOS which allows Linux to be installed on a DOS filesystem
3. Hardware Issues
3.1 Minimal configuration
The following is probably the smallest possible configuration that Linux will work on: 386SX/16, 1 MB RAM, 1.44 MB or 1.2 MB floppy, any supported video card (+ keyboards, monitors, and so on of course). This should allow you to boot and test whether it works at all on the machine, but you won't be able to do anything useful. See http://rsphy1.anu.edu.au/~gpg109/mem.html for minimal Linux configurations
multitasking: several programs running at the same time.
multiuser: several users on the same machine at the same time (and no two-user licenses!).
multiplatform: runs on many different CPUs, not just Intel.
multiprocessor: SMP support is available on the Intel and SPARC platforms (with work currently in progress on other platforms), and Linux is used in several loosely-coupled MP applications, including Beowulf systems (see http://cesdis.gsfc.nasa.gov/linux-web/beowulf/beowulf.html) and the Fujitsu AP1000+ SPARC-based supercomputer.
multithreading: has native kernel support for multiple independent threads of control within a single process memory space.
runs in protected mode on the 386.
has memory protection between processes, so that one program can't bring the whole system down.
demand loads executables: Linux only reads from disk those parts of a program that are actually used.
shared copy-on-write pages among executables. This means that multiple process can use the same memory to run in. When one tries to write to that memory, that page (4KB piece of memory) is copied somewhere else. Copy-on-write has two benefits: increasing speed and decreasing memory use.
virtual memory using paging (not swapping whole processes) to disk: to a separate partition or a file in the filesystem, or both, with the possibility of adding more swapping areas during runtime (yes, they're still called swapping areas). A total of 16 of these 128 MB (2GB in recent kernels) swapping areas can be used at the same time, for a theoretical total of 2 GB of useable swap space. It is simple to increase this if necessary, by changing a few lines of source code.
a unified memory pool for user programs and disk cache, so that all free memory can be used for caching, and the cache can be reduced when running large programs.
dynamically linked shared libraries (DLL's), and static libraries too, of course.
does core dumps for post-mortem analysis, allowing the use of a debugger on a program not only while it is running but also after it has crashed.
mostly compatible with POSIX, System V, and BSD at the source level.
through an iBCS2-compliant emulation module, mostly compatible with SCO, SVR3, and SVR4 at the binary level.
all source code is available, including the whole kernel and all drivers, the development tools and all user programs; also, all of it is freely distributable. Plenty of commercial programs are being provided for Linux without source, but everything that has been free, including the entire base operating system, is still free.
POSIX job control.
pseudoterminals (pty's).
387-emulation in the kernel so that programs don't need to do their own math emulation. Every computer running Linux appears to have a math coprocessor. Of course, if your computer already contains an FPU, it will be used instead of the emulation, and you can even compile your own kernel with math emulation removed, for a small memory gain.
support for many national or customized keyboards, and it is fairly easy to add new ones dynamically.
multiple virtual consoles: several independent login sessions through the console, you switch by pressing a hot-key combination (not dependent on video hardware). These are dynamically allocated; you can use up to 64.
Supports several common filesystems, including minix, Xenix, and all the common system V filesystems, and has an advanced filesystem of its own, which offers filesystems of up to 4 TB, and names up to 255 characters long.
transparent access to MS-DOS partitions (or OS/2 FAT partitions) via a special filesystem: you don't need any special commands to use the MS-DOS partition, it looks just like a normal Unix filesystem (except for funny restrictions on filenames, permissions, and so on). MS-DOS 6 compressed partitions do not work at this time without a patch (dmsdosfs). VFAT (WNT, Windows 95) support and FAT-32 is available in Linux 2.0
special filesystem called UMSDOS which allows Linux to be installed on a DOS filesystem
3. Hardware Issues
3.1 Minimal configuration
The following is probably the smallest possible configuration that Linux will work on: 386SX/16, 1 MB RAM, 1.44 MB or 1.2 MB floppy, any supported video card (+ keyboards, monitors, and so on of course). This should allow you to boot and test whether it works at all on the machine, but you won't be able to do anything useful. See http://rsphy1.anu.edu.au/~gpg109/mem.html for minimal Linux configurations
In order to do something, you will want some hard disk space as well, 5 to 10 MB should suffice for a very minimal setup (with only the most important commands and perhaps one or two small applications installed, like, say, a terminal program). This is still very, very limited, and very uncomfortable, as it doesn't leave enough room to do just about anything, unless your applications are quite limited. It's generally not recommended for anything but testing if things work, and of course to be able to brag about small resource requirements.
3.2 Usable configuration
If you are going to run computationally intensive programs, such as gcc, X, and TeX, you will probably want a faster processor than a 386SX/16, but even that should suffice if you are patient.
In practice, you will want at least 4 MB of RAM if you don't use X, and 8 MB if you do. Also, if you want to have several users at a time, or run several large programs (compilations for example) at a time, you may want more than 4 MB of memory. It may still work with a smaller amount of memory, but it will use virtual memory (using the hard drive as slow memory) and that will be so slow as to be unusable. If you use many programs at the same time, 16 MB will reduce swapping considerably. If you don't want to swap appreciably under normal load, 32 MB will probably suffice for a single user. If you run lots of memory-intensive applications at once, 64 MB may be necessary to avoid lots of swapping. Of course, if you run memory-hungry applications, you may want more.
The amount of hard disk you need depends on what software you want to install. The normal basic set of Unix utilities, shells, and administrative programs should be comfortable in less than 10 MB, with a bit of room to spare for user files. For a more complete system, get Red Hat, Debian, or another distribution, and assume that you will need 60 to 600 MB, depending on what you choose to install and what distribution you get. Add whatever space you want to reserve for user files to these totals. With today's prices on hard drives, if you are buying a new system, it makes no sense to buy a drive that is too small. Get at least 2 GB, preferably 4 GB or more, and you will not regret it. Linux will happily handle very large hard drive such as the recently popular 11 GB IDE hard drives or 18 GB SCSI hard drives.
Add more memory, more hard disk, a faster processor and other stuff depending on your needs, wishes and budget to go beyond the merely usable. In general, one big difference from DOS is that with Linux, adding memory makes a large difference, whereas with DOS, extra memory doesn't make that much difference. This of course has something to do with DOS's 640KB limit, which is completely nonexistent under Linux.
3.3 Supported hardware
CPU:
Anything that runs 386 protected mode programs. All models of 386s 486s, Pentiums, Pentium Pros, Pentium IIs, and clones of these chips should work. (286s and below may someday be supported on a smaller kernel called ELKS (Embeddable Linux Kernel Subset), but don't expect the same capabilities). A version for the 680x0 CPU (for x = 2 with external MMU, 3, 4, and 6) which runs on Amigas and Ataris can be found at tsx-11.mit.edu in the 680x0 directory. Many DEC Alphas, SPARCs, and PowerPC machines are supported. Ports are also being done to the ARM, StrongARM, and MIPS architectures. More details are available elsewhere.
Architecture:
PCI, ISA, EISA, and VLB busses. MCA (mostly true blue PS/2s) support is incomplete but improving (see above). Linux puts higher demands on hardware than DOS, Windows, and in fact most operating systems. This means that some marginal hardware that doesn't fail when running less demanding operating system may fail when running Linux. Linux is an excellent memory tester...
RAM:
Up to 1 GB on Intel; more on 64-bit platforms. Some people (including Linus) have noted that adding ram without adding more cache at the same time has slowed down their machine extremely, so if you add memory and find your machine slower, try adding more cache. Some machines can only cache certain amounts of memory regardless of how much RAM is installed (64 MB is the most one popular chipset can cache). Over 64 MB of memory will require a boot-time parameter with kernels 2.0.35 and earlier, as the BIOS was originally designed to be unable to report more than 64MB. Recent 2.1.x kernels and later are able to detect more memory in a system.
Data storage:
Generic AT drives (EIDE, IDE, 16 bit HD controllers with MFM or RLL, or ESDI) are supported, as are SCSI hard disks and CD-ROMs, with a supported SCSI adaptor. Generic XT controllers (8 bit controllers with MFM or RLL) are also supported. Supported SCSI adaptors: Advansys, Adaptec 1542, 1522, 1740, 27xx, and 29xx (with some exceptions) series, Buslogic MultiMaster and Flashpoint, NCR53c8xx-based controllers, DPT controllers, Qlogic ISP and FAS controllers, Seagate ST-01 and ST-02, Future Domain TMC-88x series (or any board based on the TMC950 chip) and TMC1660/1680, Ultrastor 14F, 24F and 34F, Western Digital wd7000, and others. SCSI, QIC-02, and some QIC-80 tapes are also supported. Besides IDE and SCSU cdroms, several proprietary CD-ROM devices are also supported, including Matsushita/Panasonic, Mitsumi, Sony, Soundblaster, Toshiba, ATAPI (EIDE), SCSI, and others. For exact models, check the hardware compatibility HOWTO. N.B. These lists are incomplete, and always will be. Distribution vendors maintain more up-to-date lists.
Video:
VGA, EGA, CGA, or Hercules (and compatibles) work in text mode. For graphics and X, there is support for (at least) normal VGA, some super-VGA cards (most of the cards based on Tseng, Paradise, and some Trident chipsets), S3, 8514/A, ATI, Matrox, and Hercules. (Linux uses the XFree86 X server, so that determines what cards are supported. A full list of supported chipsets alone takes over a page. See http://www.XFree86.org/)
Networking:
Ethernet support includes 3COM 503/509/579/589/595/905 (501/505/507 are supported but not recomended), AT&T GIS (neé NCR) WaveLAN, most WD8390-based cards, most WD80x3-based cards, NE1000/2000 and most clones, AC3200, Apricot 82596, AT1700, ATP, DE425/434/435/500, D-Link DE-600/620, DEPCA, DE100/101, DE200/201/202 Turbo, DE210, DE422, Cabletron E2100 (not recommended), Intel EtherExpress (not recommended), EtherExpress Pro, EtherExpress 100, DEC EtherWORKS 3, HP LAN, HP PCLAN/plus, most AMD LANCE-based cards, NI5210, ni6510, SMC Ultra, DEC 21040 (tulip), Zenith Z-Note ethernet, All Zircom cards and all Cabletron cards other than the E2100 are unsupported, due to the manufacturers unwillingness to release programming information freely.
FDDI support currently includes the DEFxx cards from DEC.
Point-to-Point networking support include PPP, SLIP, CSLIP, and PLIP. PPP support is available for both standard asyncronous devices like modems, and syncronous connections like ISDN.
Limited Token Ring support is available.
Serial:
Most 16450 and 16550 UART-based boards, including AST Fourport, the Usenet Serial Card II, and others. Intelligent boards supported include Cyclades Cyclom series (supported by the manufacturer), Comtrol Rocketport series (supported by the manufacturer), Stallion (most boards; supported by the manufacturer), and Digi (some boards; supported by the manufacturer). Some ISDN, frame relay, and leased line hardware is supported.
Other hardware:
SoundBlaster, ProAudio Spectrum 16, Gravis Ultrasound, most other sound cards, most (all?) flavours of bus mice (Microsoft, Logitech, PS/2), etc.
4. An Incomplete List of Ported Programs and Other Software
Most of the common Unix tools and programs have been ported to Linux, including almost all GNU software and many X clients from various sources. Actually, ported is often too strong a word, since many programs compile out of the box without modifications, or only small modifications, because Linux tracks POSIX quite closely. There are never enough applications for any operating system, but Linux is gaining both end-user applications and server applications. Contact the vendor of your favorite commercial Unix application and ask if they have ported it to Linux.
Most of the common Unix tools and programs have been ported to Linux, including almost all GNU software and many X clients from various sources. Actually, ported is often too strong a word, since many programs compile out of the box without modifications, or only small modifications, because Linux tracks POSIX quite closely. There are never enough applications for any operating system, but Linux is gaining both end-user applications and server applications. Contact the vendor of your favorite commercial Unix application and ask if they have ported it to Linux.
Here is an incomplete list of software that is known to work under Linux:
Basic Unix commands:
ls, tr, sed, awk and so on (you name it, Linux probably has it).
Development tools:
gcc, gdb, make, bison, flex, perl, rcs, cvs, prof.
Languages and Environments:
C, C++, Objective C, Java, Modula-3, Modula-2, Oberon, Ada95, Pascal, Fortran, ML, scheme, Tcl/tk, Perl, Python, Common Lisp, and many others.
Graphical environments:
GNOME and KDE (desktops), X11R6 (XFree86 3.x), X11R5 (XFree86 2.x), MGR.
Editors:
GNU Emacs, XEmacs, MicroEmacs, jove, ez, epoch, elvis (GNU vi), vim, vile, joe, pico, jed, and others.
Shells:
bash (POSIX sh-compatible), zsh (includes ksh compatiblity mode), pdksh, tcsh, csh, rc, es, ash (mostly sh-compatible shell used as /bin/sh by BSD), and many more.
Telecommunication:
PPP, UUCP, SLIP, CSLIP, full TCP/IP communication toolset, kermit, szrz, minicom, pcomm, xcomm, term (runs multiple shells, redirects network activity, and allows remote X, all over one modem line), Seyon (popular X-windows communications program), and several fax and voice-mail (using ZyXEL and other modems) packages are available. Of course, remote serial and network logins are supported.
News and mail:
C-news, innd, trn, nn, tin, smail, elm, mh, exmh, pine, mutt, etc.
Textprocessing:
TeX, groff, doc, ez, LyX, Lout, Linuxdoc-SGML, and others.
Games:
Nethack, several Muds and X games, and lots of others. One of those games is looking through all the games available at tsx-11 and sunsite.
All of these programs (and this isn't even a hundredth of what is available) are freely available. Commercial software is becoming widely available; ask the vendor of your favorite commercial software if they support Linux
No comments:
Post a Comment