Development of Linux

written by: Claude Wolfgang Stary; article published: year 2008, month 01;


In: Root » Computers and technology » Linux » Development of Linux

Dutch French Spanish Portuguese Italian German Japanese Chinese Korean Russian Arabic Bookmark and Share this Article

In 1991, Linus Torvalds, at that time a student at the University of Helsinki, started a project to teach himself about low-level Intel 80386 programming. At the time, he was running the Minix operating system, designed by Andrew Tanenbaum, so he initially kept his project compatible with the Minix system calls and on-disk file-system layout to make his work much easier. Although he released the first version of the Linux kernel to the Internet under a fairly restrictive license, he was soon convinced to change his license to the GPL.

The combination of the GPL and the early functionality of the Linux kernel convinced other developers to help develop the kernel. A C library implementation, derived from the then-dormant GNU C library project, was released, allowing developers to build native user applications. Native versions of gcc, Emacs, and bash quickly followed. In early 1992, a moderately skilled developer could install and boot Linux 0.95 on most Intel 80386 machines.

The Linux project was closely associated with the GNU project from the beginning. The GNU project's source base became an extremely important resource for the Linux community from which to build a complete system. Although significant portions of Linux-based systems are derived from sources that include freely available Unix code from the University of California at Berkeley and the X Consortium, many important parts of a functional Linux system come directly from the GNU project.

As Linux matured, some individuals, and later, companies, focused on easing the installation and usability of Linux systems for new users by creating packages, called distributions, of the Linux kernel and a reasonably complete set of utilities that together constituted a full operating system.

In addition to the Linux kernel, a Linux distribution contains development libraries, compilers, interpreters, shells, applications, utilities, graphical operating environments, and configuration tools, along with many other components. When a Linux system is built, distribution developers collect the components from a variety of places to create a complete collection of all the software components that are necessary for a functional Linux system. Most distributions also contain custom components that ease the installation and maintenance of Linux systems.

Many Linux distributions are available. Each has its own advantages and disadvantages; however, they all share the common kernel and development libraries that distinguish Linux systems from other operating systems. Because all Linux distributions use the same code to provide system services, program binaries and source code are highly compatible across distributions.

One project that has contributed to this compatibility is the Filesystem Hierarchy Standard (FHS), previously called the Linux Filesystem Standard (FSSTND), which specifies where many files should be kept and explains, in general terms, how the rest of the file system should be organized. More recently, a project called Linux Standard Base (LSB) has expanded beyond the file system layout, defining Application Program Interfaces (APIs) and Application Binary Interfaces (ABIs) intended to make it possible to compile an application once and deploy it on any system that complies with the LSB definition for that CPU architecture. These documents are available, with others, at freestandards.org

Disclaimer

1) E-articles is not responsible for the information contained by this article as well for any and all copyright infringements by authors and writers. E-articles is a free information resource. If you suspect this article for any copyright infringement, please read the terms of service and contact us to investigate the problem.
2) E-articles is not responsible for inaccuracies, falsehoods, or any other types of misinformation this article may contain and will not be liable for any loss or damage suffered by a user through the user's reliance on the information gained here.

link to this article