Linux !! It’s on the mouth of most IT guys these days – or for long we can say. Some know about them and use them, some only know about them and some simply just ignore its existence. Linux Version 3.18 has been recently released and on the occasion, I decided to have a little chat with somebody close or deep into Linux; Logan – An Official Linux Kernel developer with whom I conducted an interview recently and also talked about some IPv6 issues for my home country, Mauritius. Following is a little of what we talked. Feel free to add your own views and thoughts (even beliefs 😛 ) in the comments.
What the heck is Linux for non-technical guys? Maybe a brief history too can be of some good.
Linux is an assembly of components: The Linux kernel and the software that goes on top of it. Some people argue that it should be called GNU/Linux, as a lot of the software that go on top is developed by the GNU project. There are other components involved: the Apache web server, GNOME and KDE for desktop environments, and remote management software such as OpenSSH, which come from OpenBSD OS. Linus Torvalds wrote a kernel in 1992, and ported the GNU software suite to it. Soon, it snowballed, as contributors throughout the world started sending patches. This combination is called “Linux” or “GNU/Linux”. Various flavors exist which package different versions, or sets of software: Debian, Ubuntu, Gentoo, and many others.
What is a kernel by-the-way?
The kernel is a piece of software that interacts directly with the hardware, and provides a mechanism for software such as Quake, OpenSSH, and LibreOffice to write to disk or draw a picture on your screen.
How do Linux OS’s differ from Windows ones; let’s exclude Apple’s Mac OS X for that-
Any component of a Linux-based system can be improved by anybody with the right skills and attitude. Different companies are involved in the maintenance of the Linux network stack: 6wind, RedHat, Google, and many others. This is in contrast to Microsoft Windows where only one company controls the whole Operating System.
Also, innovation is much more difficult for Microsoft Windows compared to us. Their development methodology is different from ours. I believe that this has allowed Linux and other Open Source project to be more agile and flexible.
I once read a comment about a Microsoft software engineer acknowledging the issue of pushing performance innovation inside Microsoft Windows. If someone tries to push for such a change which hasn’t been planned, it would create additional work for other teams. In the Open Source world, this kind of innovation is possible thanks to the flexibility of our development process.
How can one decide when to use Linux or Windows products?
To migrate from Windows to Linux on a PC is somewhat tricky as there are often hardware compatibility issues involved. The second problem is the lack of software such as Microsoft Office for Linux. This is due in part to lack of proper hardware documentation from manufacturers for developers to write drivers for them. That’s an issue with NVIDIA graphic cards for instance. The other problem is that there are many software companies who do not want to invest in making a Linux port of their software, due to Linux only accounting for 1% of the desktop PC market share.
If we had Linux pre-installed on desktop PCs, and laptops, then many software companies would port their software to Linux, as the market share would be significant. Hardware manufacturers will realise in the long term that lack of Linux support for their drivers will drive customers towards their competitors: I’ve been a proud owner of AMD Graphic cards, and Intel on-board graphics for years now 🙂
How is Linux developed and how often are releases made?
Linux is developed collaboratively. There’s a hierarchy: each subsystem has a person or group of people who are responsible for approving the patches that are going to be applied to it. For example: you have the networking subsystem which is headed by David Miller of RedHat.
When I submitted my Linux patch, David Miller reviewed it. The funny thing was that I made a mistake in my commit log, and he asked me to re-send it again 🙂
Once a subsystem maintainer accepts your patch, he sends them to Linus Torvalds who merges of all of the subsystem patches into a new release.
Right now, we are aiming for shorter release cycles: each 3 months.
Well, what’s new in the latest release of Linux – 3.18?
In short: better graphics support, Improved filesystems, better suspend and resume for laptops with multiple cores, and new hardware for ARM platforms.
That was it about a little word on Linux
Thanks Logan for your time 🙂