Saturday, January 24, 2009

What is Linux?

In my earlier post, we saw what is UNIX. In this article, we will be discussing about Linux.

UNIX & Linux - Sounds so rhyming, Isn’t it?

Well, are Linux and UNIX one and the same?
If not, in what ways do they differ?
Why should they be different at all?
Is Linux free?

Slow down, we will surely be discussing all about this shortly…

The UNIX days

Let’s first see how Linux came into existence. As we discussed in my other post, UNIX already had a strong position in the server market and was especially strong in universities during 1990. Most universities, computer science students wanted to run UNIX on their own computers as well. Unfortunately, by that time, UNIX had become commercial and rather expensive.

OS Exposed

MINIX appeared to be a solution and also a cheap alternative. It however could not be called as a totally perfect flawless operating system. It can not be, as it was created for students. Andrew S. Tanenbaum, who wrote MINIX from the scratch has even wrote a book Operating Systems: Design and Implementation'. If you ever get to have a copy of that book, you sure will also be having 12,000 lines of code, written in C and assembly language. As you guessed, this book has dragged the attention of all the computer students who aspire to know the in and outs of an operating system. Linus Torvalds is one amongst.

Linux born

Linus Torvalds was using UNIX at his university of Helsinki and he wanted something similar to Unix at his home PC. As UNIX wasn’t free, he started out with Minix. He still felt that he wanted something more powerful than Minix and sooner started the project of writing down his own OS and named it Linux (I read somewhere that Linus initially was planning to name his OS as Freax. I wonder why).

GNU Linux

Linux however itself was only the kernel of an operating system. If in case you are not sure what a Kernel is, the kernel is the part that makes all other programs run. It implements multitasking, and manages hardware devices, and generally enables applications to do their thing. All the programs that the user (or system administrator) actually interacts with are run on top of the kernel - CLI (or shell) is an example.

Linus did really not write these programs all by him. He adopted the existing versions of the application and integrated them all. From time to time he was also updating his kernel to support a wide variety of new applications/programs.

Most of the critically important system software, including the C compiler, came from the Free Software Foundation's GNU project. GNU expands out to GNU is NOT UNIX was started in 1984 (the year when I was born, I am glad Lol). The main objective of the GNU project was to develop a complete Unix-like operating system which is completely free. GNU's kernel wasn't finished (now GNU have their own kernel as well) and so GNU is used with the kernel Linux. To credit, GNU, most of the people refer Linux as GNU/Linux.

Development of Linux

During the 1992 and 1993, the Linux kernel collected many of the useful and critical features to make it a better replacement for UNIX. That included TCP/IP networking, a GUI (called as the X system), etc. The version 1.0 of Linux kernel was released by March 1994. Since then, the kernel went through a number of updating and enhancement which made it further stable.

Various flavors of Linux

Like Unix, Linux also have various flavors. Red Hat Linux, IBM’s AIX, Sun Microsystems’ Solaris, Debian, Mandrake, SUSE, well they really are a lot. Even though there are various flavors you will find a lot of similarities. Every one is not specialist to compile the kernel and start everything from the scratch to get their OS up and ready for running. That is when these vendors came into picture. Vendors like Red hat, Sun Microsystems will do all the necessary basic things for you and get the OS up and ready in the .iso format which you can directly burn onto a CD and install in your system. They also provide updates and support which obviously is not going to be free. :)

Actually, I wanted to give a brief overview on what Linux is & history and I very well know that I have not mentioned many of the great contributors without whom the Linux would not exist today. If you are too keen, you can check out the Detailed Linux History. If you would like to hear it from the author, check out the mails chains from Linus Torvalds. You would get nothing technical there, I mind you. :)

If you are a M$ users, keep your windows out and let the air in. Try Linux once. You might like it. I am NOT advertising or trying to pull M$ users to Linux. Windows has it's own advantages and so is Linux. Also, It is not that Linux will gain popularity only if you start using it. Let's face it... Linux already is booming and been recognized as one of the most secured and best operating system. Almost every institution and industry has started to adopt Linux. So, Use it if you want to experience it. Get to know yourself why is Linux so popular and you know what? GNU/Linux is user friendly. It just is picky about who its friends are :)