0% found this document useful (0 votes)
136 views8 pages

Linux: Linux Is A Unix-Like Computer Operating System. Linux Is One of The Most Prominent

Linux is an open-source operating system based on the Linux kernel. The Linux kernel was first released in 1991 by Linus Torvalds and has since grown significantly. Linux is now commonly used in servers, desktop computers, supercomputers, and embedded devices. It is distributed through Linux distributions which package the kernel with other software like those from the GNU project to create complete operating systems.

Uploaded by

shalakha1992
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
136 views8 pages

Linux: Linux Is A Unix-Like Computer Operating System. Linux Is One of The Most Prominent

Linux is an open-source operating system based on the Linux kernel. The Linux kernel was first released in 1991 by Linus Torvalds and has since grown significantly. Linux is now commonly used in servers, desktop computers, supercomputers, and embedded devices. It is distributed through Linux distributions which package the kernel with other software like those from the GNU project to create complete operating systems.

Uploaded by

shalakha1992
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 8

Linux

Introduction
Linux is a Unix-like computer operating system. Linux is one of the most prominent examples of free software and open source development; its underlying source code can be freely modified, used, and redistributed by anyone. The Linux kernel was first released to the public on 17 September 1991, for the Intel x86 PC architecture. The kernel was augmented with system utilities and libraries from the GNU project to create a usable operating system, which later led to the alternate term GNU/Linux. Linux is now packaged for different uses in Linux distributions, which contain the sometimes modified kernel along with a variety of other software packages tailored to different requirements. Predominantly known for its use in servers, Linux has gained the support of corporations such as IBM, Sun Microsystems, Dell, Hewlett-Packard and Novell. It is used as an operating system for a wide variety of computer hardware, including desktop computers, supercomputers , video game systems (PlayStation 2 and 3 for example) and embedded devices such as mobile phones and routers.

History of the Linux kernel


The Linux kernel has been marked by constant growth throughout its history. Since the initial release of its source code in 1991, it has grown from a small number of C files under a license prohibiting commercial distribution to its current state of about 230 megabytes of source under the GNU General Public License.

Early history

Pre-history
In 1983, Richard Stallman started the GNU project with the goal of creating a free UNIXlike, POSIX-compatible operating system. Two years later he created the Free Software Foundation (FSF) and developed the GNU general Public License (GPL), in order to spread software freely. In this way the GNU software was developed very quickly by many people. Within a short time a multiplicity of programs were developed, so that by the early 1990s there was almost enough available to create a full operating system. However, a kernel was still missing.

This was to be developed in the GNU Hurd project, but Hurd proved to develop very sluggishly because finding and repairing errors (debugging) was very difficult due to technical characteristics of microkernel design. Another free operating system project in the 1980s was the Berkeley Software Distribution (BSD). This was developed by UC, Berkeley from the 6th edition of Unix from AT&T. Since AT&T Unix code was contained in BSD, AT&T filed a lawsuit in the early 1990s against the University of Berkeley, which strongly limited the development of BSD and greatly slowed development. Thus the early 1990s produced no complete, free system. The future of BSD was uncertain because of the litigation and stalled development. Additionally, the GNU project was gradually developing but, it lacked a well-behaved UNIX Kernel. This left a critical niche open that Linux would fill.

Emergence of Linux

Linus Torvalds in 2002

In 1991, in Helsinki, Linus Torvalds began a project that later became the Linux kernel. It was initially a terminal emulator, which Torvalds used to access the large UNIX servers of the university. He wrote the program specifically for the hardware he was using and independent of an operating system because he wanted to use the functions of his new PC with a 80386 processor. This is still among the standard today, optimally. The operating system he used during development was Minix, and the initial compiler was the GNU C compiler, which is still the main choice for compiling Linux today (although Linux will compile under other compilers, such as the Intel C Compiler).

As Torvalds wrote in his book Just for Fun, he eventually realized that he had written an operating system kernel. On 25 August 1991, he announced this system in a Usenet posting to the newsgroup "comp.os.minix.": Hello everybody out there using minix I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones. This has been brewing since april, and is starting to get ready. I'd like any feedback on things people like/dislike in minix, as my OS resembles it somewhat (same physical layout of the file-system (due to practical reasons) among other things). I've currently ported bash(1.08) and gcc(1.40), and things seem to work. This implies that I'll get something practical within a few months, and I'd like to know what features most people would want. Any suggestions are welcome, but I won't promise I'll implement them :-) Linus ([email protected]) PS. Yes it's free of any minix code, and it has a multi-threaded fs. It is NOT portable (uses 386 task switching etc), and it probably never will support anything other than ATharddisks, as that's all I have :-(. Linus Torvalds

GNU/Linux
The designation "Linux" was initially used by Torvalds only for the Linux kernel. The kernel was, however, frequently used together with other software, especially that of the GNU project. This GNU variant quickly became the most popular variant of GNU, since there was no other functioning free kernel at this time. When people started referring to this collection as "Linux", Richard Stallman, the founder of the GNU project, requested the name GNU/Linux be used, in order to recognize the role of GNU software. In June 1994 in the GNU' s bulletin, Linux was referred to as a "free UNIX clone", and the Debian project began calling its product GNU/Linux. In May 1996, Richard Stallman published the editor Emacs 19.31, in which the type of system was renamed from Linux to Lignux. This spelling was intended to refer specifically to the combination of GNU and Linux, but this was soon abandoned in favor of "GNU/Linux". This name garnered varying reactions. While the GNU and Debian projects accepted the name, most developers and other Linux distributors rejected it. This was justified on the one hand with comfort, because the name Linux was regarded as simpler, and on the other hand with the fact that a considerable quantity of non-GNU software is delivered with Linux.

The finished product is most often referred to simply as "Linux", as the simpler, original name. Stallman announced his demand for a name change only after the system had already become popular.

Open Source Development Lab


The Open Source Development Lab (OSDL) was created in the year 2000, and is an independent nonprofit organization which pursues the goal of optimizing Linux for employment in data centers and in the carrier range. It served as gesponsorte working premises for Linus Torvalds and also for Andrew Morton, until the middle of 2006 when he transferred to Google, which runs on the Linux kernel. Torvalds works full time on behalf the OSDL, developing the Linux Kernels. The noncommercial mechanism of several major companies is financed as Red Hat, Novell, Mitsubishi, Intel, IBM, Dell and HP.

Programming on Linux
Most Linux distributions support dozens of programming languages. The most common collection of utilities for building both Linux applications and operating system programs is found within the GNU toolchain, which includes the GNU Compiler Collection (GCC) and the GNU build system. Amongst others, GCC provides compilers for C, C++, Java, Ada and Fortran. The Linux kernel itself is written to be compiled with GCC. Most also include support for Perl, Ruby, Python and other dynamic languages. Examples of languages that are less common, but still well-supported, are C# via the Mono project, and Scheme. A number of Java Virtual Machines and development kits run on Linux, including the original Sun Microsystems JVM (HotSpot), and IBM's J2SE RE, as well as many open-source projects like Kaffe. The two main frameworks for developing graphical applications are those of GNOME and KDE. These projects are based on the GTK+ and Qt widget toolkits, respectively, which can also be used independently of the larger framework. Both support a wide variety of languages. There are a number of Integrated development environments available including Anjuta, Code::Blocks, Eclipse, KDevelop, MonoDevelop, NetBeans, and Omnis Studio while the traditional editors Vim and Emacs remain popular. Although free and open source compilers and tools are widely used under Linux, there are also proprietary solutions available from a range of companies, including the Intel C++ Compiler, PathScale, Micro Focus COBOL, Franz Inc and the Portland Group.

User interface

A command line session using bash

Linux is coupled to a text-based command line interface (CLI), though this is usually hidden on desktop computers by a graphical user interface (GUI). On small devices, input may be handled through controls on the device itself, and direct input to Linux might be hidden entirely. The X Window System (X) is the predominant graphical subsystem used in Linux. X provides network transparency, enabling graphical output to be displayed on machines other than that which a program runs on. For desktop machines X runs locally. Early GUIs for Linux were based on a stand-alone X window manager such as FVWM, Enlightenment, or Window Maker, and a suite of diverse applications running under it. The window manager provides a means to control the placement and appearance of individual application windows, and interacts with the X window system. Because the X window managers only manage the placement of windows, their decoration, and some inter-process communication, the look and feel of individual applications may vary widely, especially if they use different graphical user interface toolkits. This model contrasts with that of platforms such as Mac OS, where a single toolkit provides support for GUI widgets and window decorations, manages window placement, and otherwise provides a consistent look and feel to the user. For this reason, the use of window managers by themselves declined with the rise of Linux desktop environments. They combine a window manager with a suite of standard applications that adhere to human interface guidelines. While a window manager is analogous to the Aqua user interface for Mac OS X, a desktop environment is analogous to Aqua with all of the default Mac OS X graphical applications and configuration utilities. KDE, which was announced in 1996, along with GNOME and Xfce which were both announced in 1997, are the most popular desktop environments.

GNOME 2.16, showing the Nautilus file manager and the gedit text editor.

Linux systems usually provide a CLI of some sort through a shell, the traditional way of interacting with Unix systems. Even on modern desktop machines, some form of CLI is almost always accessible. Linux distributions specialized for servers may use the CLI as their only interface, and Linux machines can run without a monitor attached. Such headless systems may be controlled by command line via a protocol such as SSH or telnet. Most low-level Linux components, including the GNU userland, use the CLI exclusively. The CLI is particularly suited for automation of repetitive or delayed tasks, and provides very simple inter-process communication. Graphical terminal emulator programs can be used to access the CLI from a Linux desktop.

Why use Linux?


Why use Linux, instead of a well known, well tested, and well documented commercial operating system? We could give you a thousand reasons. One of the most important, however, is that Linux is an excellent choice for personal UNIX computing. If you're a UNIX software developer, why use MS-DOS at home? Linux allows you to develop and test UNIX software on your PC, including database and X Window System applications. If you're a student, chances are that your university computing systems run UNIX. You can run your own UNIX system and tailor it to your needs. Installing and running Linux is also an excellent way to learn UNIX if you don't have access to other UNIX machines. But let's not lose sight. Linux isn't only for personal UNIX users. It is robust and complete enough to handle large tasks, as well as distributed computing needs. Many businesses--especially small ones--have moved their systems to Linux in lieu of other UNIX based, workstation environments. Universities have found that Linux is perfect for teaching courses in operating systems design. Large, commercial software vendors have started to realize the opportunities which a free operating system can provide.

Linux vs. MS-DOS.


It's not uncommon to run both Linux and MS-DOS on the same system. Many Linux users rely on MS-DOS for applications like word processing. Linux provides its own analogs for these applications, but you might have a good reason to run MS-DOS as well as Linux. If your dissertation is written using WordPerfect for MS-DOS, you may not be able to convert it easily to TeX or some other format. Many commercial applications for MS-DOS aren't available for Linux yet, but there's no reason that you can't use both.

MS-DOS does not fully utilize the functionality of 80386 and 80486 processors. On the other hand, Linux runs completely in the processor's protected mode, and utilizes all of its features. You can directly access all of your available memory (and beyond, with virtual RAM). Linux provides a complete UNIX interface which is not available under MS-DOS. You can easily develop and port UNIX applications to Linux, but under MSDOS you are limited to a subset of UNIX functionality. Linux and MS-DOS are different entities. MS-DOS is inexpensive compared to other commercial operating systems and has a strong foothold in the personal computer world. No other operating system for the personal computer has reached the level of popularity of MS-DOS, because justifying spending $1,000 for other operating systems alone is unrealistic for many users. Linux, however, is free, and you may finally have the chance to decide for yourself. You can judge Linux vs. MS-DOS based on your expectations and needs. Linux is not for everybody. If you always wanted to run a complete UNIX system at home, without the high cost of other UNIX implementations for personal computers, Linux may be what you're looking for.

Linux vs. The Other GUIs.


A number of other advanced operating systems have become popular in the PC world. Specifically, IBM's OS/2 and Microsoft Windows have become popular for users upgrading from MS-DOS. Both OS/2 and Windows NT are full featured multitasking operating systems, like Linux. OS/2, Windows NT, and Linux support roughly the same user interface, networking, and security features. However, the real difference between Linux and The Other Guys is the fact that Linux is a version of UNIX, and benefits from contributions of the UNIX community at large. What makes UNIX so important? Not only is it the most popular operating system for multi-user machines, it is a foundation of the free software world. Much of the free software available on the Internet is written specifically for UNIX systems. There are many implementations of UNIX from many vendors. No single organization is responsible for its distribution. There is a large push in the UNIX community for standardization in the form of open systems, but no single group controls this design. Any vendor (or, as it turns out, any hacker) may develop a standard implementation of UNIX. OS/2 and Microsoft operating systems, on the other hand, are proprietary. The interface and design are controlled by a single corporation, which develops the operating system code. In one sense, this kind of organization is beneficial because it sets strict standards for programming and user interface design, unlike those found even in the open systems community. Several organizations have attempted the difficult task of standardizing the UNIX programming interface. Linux, in particular, is mostly compliant with the POSIX.1

standard. As time goes by, it is expected that the Linux system will adhere to other standards, but standardization is not the primary goal of Linux development.

After the installation of Linux, generally 13 directories are made. Unlike windows, these directory begins with a / (in windows they begin c:\). The directories and their uses are:

/bin : Used to hold executable files, found all over the file system. /sbin: Used to hold the supervisors (root) executable files. /boot: Boot up files like the kernel are stored here /dev : This folder holds the device driver files here. They are used to represent physical items eg. /dev/tty1 = communication port 1 /etc : Used to store most of the configuration files for Linux. /home: Stores all the user home directories here /lib : Stores the libraries/runtimes for programs /mnt : Unlike in windows where c:\ represents a drive, in Linux, the different drives are stored in /mnt and act like a directory. /proc: Holds most of the processes happening in the Linux system. /root: The supervisors (root) home directory files. /usr : stores user based files /var : holds constantly changing files like print spools /tmp : Temporary file folder

You might also like