Saturday, August 1, 2009
History of Linux
In 1991, a student at the University of Helsinki in Finland named Linus Torvalds who had been using Minix, a non-free Unix-like system, began writing his own kernel. He started by developing device drivers and hard-drive access, and by September had a basic design that he called Version 0.01. This kernel, which is called Linux, was afterwards combined with the GNU system to produce a complete free operating system.
On October 5th, 1991, Torvalds sent a posting to the comp.os.minix newsgroup announcing the release of Version 0.02, a basic version that still needed Minix to operate, but which attracted considerable interest nevertheless. The kernel was then rapidly improved by Torvalds and a growing number of volunteers communicating over the Internet, and by December 19th a functional, stand-alone Unix-like Linux system was released as Version 0.11.
On January 5, 1992, Linux Version 0.12 was released, an improved, stable kernel. The next release was called Version 0.95, to reflect the fact that it was becoming a full-featured system. After that Linux became an underground phenomenon, with a growing group of distributed programmers that continue to debug, develop, and enhance the source code baseline to this day.
Torvalds released Version 0.11 under a freeware license of his own devising, but then released Version 0.12 under the well established GNU General Public License. More and more free software was developed for Linux over the next several years.
Linux continued to be improved through the 1990's, and started to be used in large-scale applications like web hosting, networking, and database serving, proving ready for production use. Version 2.2, a major update to the Linux kernel, was officially released in January 1999. By the year 2000, most computer companies supported Linux in one way or another, recognizing a common standard that could finally reunify the fractured world of the Unix Wars. The next major release was V2.4 in January 2001, providing (among other improvements) compatibility with the upcoming generations of Intel's 64-bit Itanium computer processors.
Although Torvalds continued to function as the Linux kernel release manager, he avoided work at any of the many companies involved with Linux in order to avoid showing favoritism to any particular organization, and instead went to work for a company called Transmeta and helped develop mobile computing solutions, and made his home at the Open Source Development Labs (OSDL)..
Advantages of Linux over other operating systems
The advantages of Linux that are often cited when comparing Linux with other operating systems:
1, Low cost: You don’t need to spend time and money to obtain licenses since Linux and much of its software come with the GNU General Public License.
2, Stability: Linux doesn’t need to be rebooted periodically to maintain performance levels.
3, Performance: Linux provides persistent high performance on workstations and on networks. It can handle unusually large numbers of users simultaneously.
4, Network friendliness: Linux was developed by a group of programmers over the Internet and has therefore strong support for network functionality
5, Flexibility: Linux can be used for high performance server applications, desktop applications, and embedded systems.
6, Compatibility: It runs all common Unix software packages and can process all common file formats.
7, Choice: The large number of Linux distributions gives you a choice. Each distribution is developed and supported by a different organization.
8, Fast and easy installation: Most Linux distributions come with user-friendly installation and setup programs.
9, Full use of hard disk: Linux continues work well even when the hard disk is almost full.
10, Multitasking: Linux is designed to do many things at the same time; e.g., a large printing job in the background won’t slow down your other work.
11, Security: Linux is one of the most secure operating systems. “Walls” and flexible file access permission systems prevent access by unwanted visitors or viruses. Linux users have to option to select and safely download software, free of charge, from online repositories containing thousands of high quality packages.
12, Open Source: If you develop software that requires knowledge or modification of the operating system code, Linux’s source code is at your fingertips.
Linux directories explanation
Root Filesystem
The contents of the root filesystem must be adequate to boot, restore, recover, and/or repair the system.
The following directories, or symbolic links to directories, are required in /.
==========================================================
Directory Description
bin Essential command binaries
boot Static files of the boot loader
dev device files
etc Host-specific system configuration
lib Essential shared libraries and kernel modules
media Mount point for removeable media
mnt Mount point for mounting a filesystem temporarily
opt Add-on application software packages
sbin Essential system binaries
srv Data for services provided by this system
tmp Temporary files
usr Secondary hierarchy
var Variable data
==========================================================
/bin : the bin directory contains several useful commands that are of use to both the system administrator as well as non-privileged user
/boot : for GRUB (GNU Grand Unified Bootloader). This directory contains everything required for the boot process.
/dev : the location of device files. In linux you have to remember that everything is a file or directory
/etc : contains all system related configuration files
/home : user home directories
/initrd : provides the capability to load a RAM disk by the bootloader this RAM disk can then be mounted as the root filesystem and programs can be run from it
/lib : contain kernel modules and those shared library
/lost+found : files that are recovered from crash or unproper shutdown are placed here
/media : this directory contains subdirectory which are used as mount points for removable media such as cdrom and flashdisk
/opt : reserve for all the software add-on packages that are not part of the default installation
/proc : this directory is special because it is also a virtual filesystem, it doesn’t contain real file but runtime system information (system memory, devices mounted, hardware configuration etc). It is also regarded as a control and information center for the kernel
/root : the home directory of the system administrator
/sbin : contain binaries essential for booting, restoring, recovering and/or repairing the system in addition to the binaries in /bin
/usr : contains all the user binaries their documentation, libraries, header files etc. This directory only contain read-only data
/var : contains variable data like system logging files
/srv : contains site-specific data which is served by the system
/tmp : this directory contains mostly files that are required temporarily.