J-F Bilodeau's Blog @ chronogears.com

Thursday, December 11, 2008

The State of the Operating System Market

Here's exiting news. For the first time in 15 years, the Windows market share fell below 90%. On the upswing is Mac OS X with 8.87% of the market, and Linux at 0.83%. Source

These numbers are important for a number of reasons. For starters, Microsoft is gradually loosing it's grasp on the operating system market. Apple is doing a fantastic job of nipping Microsoft's monopoly.

As for Linux, you may noticed that it enjoyed 0.93% market share in August. I suspect this has been due to the release of UMPCs like th Eee PC. As the fad cooled down, chances are the sales cooled down as well. However, while visiting Future Shop on the weekend, I saw five UMPC with two of them running Linux. That's a 40% market share for Linux just there ;). As I predicted earlier, the rise of cheap computers will continue to hurt Microsoft as they are struggling to compete against free and open operating systems.

To put the numbers in perspective, here's a little report I put together with my trusty OpenOffice Calc:


A couple of interesting trends to notice.

Windows has been steadily loosing ground. This year alone, they've lost 2% of their market share. The year before that, 1.94%. Ouch! I can see why Microsoft was in a rush to deliver Vista. They needed something to help them regain the ground that they are loosing to other operating systems.

Apple has more than double their market presence over nearly five years. I personally attribute this to Mac OS X and Steve Job's marketing genius. Mac OS X is a true Unix operating system with a gorgeous interface slapped on top of it. This means that newcomers to computer have a system which is simple and inviting, while power-users have a solid Unix machine to hack. Personally, I feel that this has been a stroke of genius on Apple's part. Instead of re-inventing the wheel, or adopting Windows, they took advantage of FLOSS to custom build a rapidly growing operating system that is leaving Windows in the dust.

Linux is still barely a blip on the radar, but is still growing. Between this year and last year, Linux enjoyed a growth of 30%. I feel that this is important, since Linux is already well established on the server, but is struggling to gain traction on the desktop. I'm of the opinion that this increase is due to the UMPC explosion earlier this year. Linux is slowly by steadily spreading to the desktop.

What remains to be seen is how next year will play out. Windows 7 is due out in mid 2009, and sounds like Microsoft may actually get this one right. I don't expect to see the same level of anticipation as there was with Vista, since Windows 7 sounds like the Windows Vista that customers where expecting to get in the first place.

Linux has definitely penetrated the market. It is becoming more and more of a household term but retains a mythical aura. It has become one of those buzzwords that folks like to throw in conversation.

I'm a very poor prophet of the future, but I would like to predict some exciting movements next year. I believe that Mac OS X will continue to climb. I suspect that Linux may drop a bit, now that the UMPC buzz is dying down. Windows may regains some of it's share. I would even go so far as saying that Windows' market share will remain stable next year — that is, no significant drop or rise.

However, in the years to come, as cell phones are starting to overlap desktop computers in terms of functionality, I suspect that this is where we will see Linux shoot up. Reading about the buzz on Windows 7, I'm getting the impression that Microsoft is positioning Windows to be a competitor not to Linux or even the Mac OS X, but for the iPhone. Unfortunately, I don't think they are going the right way about it. Microsoft's vision seems to be focused on the tablet PC. Windows XP running on a tablet PC was introduced in 2001 by Bill Gates. However, seven years later, tablet PCs failed to make a dent in the market.

The reason tablet PC have not replaced laptop is due their limitation. As cool as they look, they are nowhere near as useful as a regular laptop. For instance, most do not have a keyboard, or a cover for the screen. Also, a tablet PC cost considerably more than a regular laptop. As for competing with cell phones, a tablet is simply too bulky to haul, and whip out whenever you need it. Thus, the tablet PC is not the best of both world. It's just an expensive toy.

I have no doubt that multi-touch displays a-la-iPhone will become de facto in a few years. But once again, Microsoft is playing catch-up since Apple has already invested heavily in the technology, and has already benefited from the fruits of their research. Linux is also multi-touch aware, and I'm looking forward to seeing what the community builds with the technology.

One more OS to note is OpenSolaris. When Sun Microsystem initially decided to open-source their flagship operating system, I was skeptical. My original impression is that Sun was hoping to breathe back life into the venerable but ailing SunOS before it sputtered and died. To my surprise, it looks like OpenSolaris could quickly become competition for the likes of Ubuntu. As much as I like Linux, I'm please to see solid competition on the horizon. I would go as far as to say that OpenSolaris is an operating system you may want to keep your eyes on.

Labels: , , , , , , , , , , ,

Friday, May 16, 2008

Microsoft Windows for (Nearly) Free?

This is a follow up to Microsoft Windows for Free?

Shortly after I wrote this entry, a couple of interesting events occurred. As I predicted, Microsoft went ahead to compete with Linux on ultramobile PCs (UMPC) like the Eee PC. They are now offering Windows XP Home for $32 US. It's not free, but it's getting close to cheap. Actually, it's not free in either sense of the word, since Microsoft dictates what it considers a UMPC. The maximum specs are: 1G of RAM, 80G of hard disk space, single-core processor running at 1Ghz, screen size of 10.2 inches and no touch screen capability. Anything higher than that requires the vendor to buy Windows XP at their regular price.

That's fair. It's their product, so they can choose how it's licensed. However, I fail to see how they plan to compete with Linux on this field with those restrictions. Furthermore, the $32 US is only for Windows. This means that if you want Word or Excel, be ready to fork out more money. I'd be surprise that Microsoft would allow the vendors to ship Windows with OpenOffice prepackaged. Have fun playing Minesweeper!

With Ubuntu, I have a full fledged desktop with my office suite. The full install that takes up less disk space than Windows — And the $32 stays in my pocket.

Another interesting event is the fact that One Laptop Per Child (OLPC) recently announced that they would support Windows XP on the XO laptop. What a shame. To me, that alienates the whole concept of the XO — learning. How can they learn in a closed, controlled and censored system that greatly limits their freedom. Some of those children who are growing up in a dictatorship are denied yet another freedom. That is a massive loss for them.

Those poor children are denied freedom in the world of computing to further entrench the monopoly of an American company. I cannot help but wonder what goes on in the mind of folks who are more concerned with buying yet another, bigger yacht on the back of those children.

I remember in the early days that OLPC decided that the XO should only use free software (as in free speech). Thus, both Windows and Mac OS X were refused early on. Steve Jobs, president of Apple, went as far as offering Mac OS X for free (as in beer) for the XO, but was denied, since he would not free (as in speech) the software.

In their 'philanthropic' move, Microsoft is charging about $3 for Windows XP. Of course, that does not include Office or anything like that. Just Windows (Yay! Minesweeper!). Furthermore, to allow the XO to dual boot between Windows and Linux, the machine will cost an additional $7 to make.

Since Microsoft is all about their image, I was surprised that they did not offer Windows for free as Steve Jobs did with Mac OS X. I mean, $3 per copy isn't going to register a blip on Microsoft's revenue radar. So, why?

The only thing I can see is anti-thrust. Microsoft is having enough problems with the EU and the Department of Justice, that they may be reticent to offer Windows for free out of fear that it will be perceived as an anti-competitive move.

Though I may be painting Microsoft as a nasty, greedy ogre, we have to remember that they cannot force people to buy their products. They are doing a fantastic job of both painting their software as the 'only' option and — more importantly — hiding the true monetary cost of buying (and using) Microsoft software.

As long as the average consumer remains ignorant of both of those aspects, they may never realize that there are alternatives — much less of the need for those alternatives.

Labels: , , , , , , , , ,

Sunday, May 11, 2008

Ubuntu Vs. Windows Vista

Wow. What can I say? I actually had a chance to work on Vista. Really! Since the hard disk in my work laptop died, I was given another portable pre-installed with Windows Vista.

What an experience. It's an HP dual core 1.9GHz 2G laptop with an nVidia graphics card. It should fly, right? Well, it flew about as gracefully as a turtle on it's back in the middle of the highway.

For comparison, I'm currently writing this blog from an older Gateway machine running on an AMD Turion 64 (single core), 1G of RAM with a Radeon XPress 200M. running (for now) Ubuntu 7.10. The machine was out of commission since I dropped an entire cup of coffee into the DVD drive. Thankfully, the folks at Farstar Networking in Alexandria did a fantastic job resurrecting it for a fraction of the cost I would have assumed it would have been.

However, back to Vista. For starters, after I had booted, the machine was already sucking up >700MB of ram. That leaves less than 1.3G to run my applications. That's not overly bad, since I've go to 2G on the HP, but my Gateway has only 1G. So, forget about running Vista on it. In Ubuntu, running the Gnome desktop with Compiz, Apache, MySQL, Firefox 2, Thunderbird and a system update, I'm not quite at the 475MB watermark.

I've heard a lot of folks complain about the performance of Vista. I finally had a chance to experience this first hand. Yuk! Is it ever SLOW. I could not even drag a window without the system studdering. Furthermore, I got kind notification from Norton Anti-Virus that my subscription was expired, and I should renew. What's that about my credit card number? I forgot what it's like to run an OS where you need an anti-virus. Let's not get into the endless array of continual popups.

Here's my first major gripe: No package manager. HP installed tons of crap on the laptop, including a (I would assume) redundant wireless connection manager, a trial version of Norton, tons of little application that are — supposedly — there to improve the user experience, and god knows what else. Time to clean the system!

I crack open the Add/Remove program, click on the first application, hold down control, and click on the next. Guess what? You can't! In Windows, you can only uninstall a single application at a time. Furthermore, it takes forever to remove the tiniest of application. Oh, and let's not get into the reboots. Remember, I'm cleaning this up because I need to get some work done. How much fun is it when all of a sudden, all your windows starts to close one after an other, and the machine reboots. Oh, I just love it when my operating system controls me. Sure! I love being a slave to the machine. Kiss your freedom goodbye.

On the other hand, I want to upgrade my Eee PC to Ubuntu 8.04. Unfortunately, I lacked disk space. No problem. I cracked open Synaptic package manager, selected a number of application for uninstallation, clicked Apply, and waited while the applications were removed. By the time the applications were removed, Windows Vista had finished booting, and was almost at the desktop. Of course, that was just one of the many reboots I had to do with Vista. None so far on the Eee PC!

Vista is slow. I asked one of my Windows Guru how I could turn off Areo. After digging around a bit, my guru showed me the option where I could chose the Windows Basic theme instead of Areo. What a difference this makes!!! I can move my Windows without feeling like the system is about to go into terminal shock. Here, on my Gateway, I've got Compiz working with the wobbly windows and all the fun graphic effects. It works great &mdash smooth as silk. Oh, and the Gateway is Windows Vista Capable. Not Ready, which means that Areo would not even work on the machine. My Eee PC is running eeeXubuntu with Compiz as well. It's pretty!

As a last point, one of my coworker asked about an 'upgrade path' from Vista Home to Vista Premium. He needed to upgrade Vista so he could run SQL Server Reporting Services (if I'm not mistaken). The software does not run on Windows Home. Not because Windows Home is incapable of running it, but because Microsoft thinks you should not. That is why I love free software. I come from a country that enjoys freedom of expression, movement, religion, etc. I cannot imagine myself relinquishing any of those fundamental freedoms for any price. It's the same thing with software.

I'm a free person. I refuse to pay for proprietary software that limits your freedom when there are perfectly good (better!) free solution out there.

In closing, my Eee PC quietly upgraded to Hardy Heron (Ubuntu 8.04). One reboot was all it took. I then reinstalled whatever applications I had removed. No reboots. Everything works. Don't you wish it was the same in Windows? (To be fair, the wireless card did not come back up. But it took two minutes of googling, and found a simple solution)

While I'm writing this on my Windows-Vista-Incapable Gateway laptop running Ubuntu 7.10, I'm upgrading to Hardy Heron. Can you work on your machine while you are upgrading your Windows version?

If the answer is no, I would then ask you: why not?

Oh, and you paid how much for Windows Vista? And that does not even include an office suite???

<SHOCK>!!!!</SHOCK>

Labels: , , , , , , , , , ,

Sunday, April 20, 2008

Discrimination Against Linux Is Discrimination

"This gas station only serves Ford and GM vehicles. Yes, the gas works in your Honda, but we will not serve you."

"This CD player only supports CDs from Sony or BMI, Yes, your United CD would work, but we won't play it."

"This website only serves Linux or MacOS X. Yes, your operating system will work, but we won't let you view it."

How does discrimination feel? I feel fortunate that I come from a country when discrimination against race, religion or gender is protected by the constitution. I've spend most of my life ignorant of racism, and I'm very happy about that.

However, going to a website, and being told that I cannot use it because I'm not using the 'browser of choice' or the 'operating system of choice' is very insulting — especially when the website works fine with my browser and operating system. This gives me an idea of how discrimination and racism must feel.

Dilbert.com recently entered a major overhaul. That's not a problem. What's a problem is that I was greeted with the message 'Windows 2000, Windows XP, Windows XP Media Center 2005, Mac OSX 10.3 or Mac OSX 10.4 is required to view this page.'

If you read any of my posts, you know that I run mostly Ubuntu Linux & Firefox. Thus, I was unable to enjoy part of the website. Now, before you gripe and say that Linux and Firefox do not have the capacity necessary to present the website, read on.

As someone who has developed a number of websites, I get suspicious when I'm told I can't use the site with my present configuration.

Should you be discriminated against, here are tips to help you.

Tip #1: If you are discriminated against, yell. The worst thing that you can do is decide "I'm never going back to that site." You are doing a disservice to yourself and to the site owner. Take a moment to use their comment or feedback page to tell them what you think. This is important. Some site owners may not realize the damage they are doing to their site. Help yourself by helping them. If they refuse to hear you, then leave, or try tip #2.

Tip #2: Use Firefox with the User Agent Switcher add-on. This add-on allows you to 'pretend' that you are a different browser on a different operating system. Using the agent switcher, I was able to use the section of the Dilbert's site by telling the site that I'm running (GASP!) Internet Explorer 7 running on Vista. Of course, I promptly wrote a (sorry to say) nasty message to the site telling them what I thought.

Tip #3: Don't switch! As long as your browser supports (most) of the W3C's recommendation, there is no reason for you to bow to discrimination. You have a right to choose your browser and your operating system.

I may disagree strongly with the browser that you use, but I will defend to the death your right to use it.

Labels: , , , ,

Wednesday, April 16, 2008

Microsoft Windows for Free?

How is Microsoft to compete? I mean, Mac OS X Leopard is $129 CAD, Mandriva Linux is about ~$80 CAD and Ubuntu is free.

Windows Basic, on the other hand is (GASP!) $199 CAD! And it does not even come with an office suite. You definitely get more bang for you buck with Ubuntu.

This brings me to two big questions.

The first one is: What exactly is Windows? I get a fat DVD which will eat a sizable chunk of my diskspace. It lack drivers for some older and even newer devices, and the closest thing you have to a functional word processor is WordPad. Whoopdidoo. I fell like I'm really getting value for my big, fat $200 dollars. Well, I guess that's Microsoft privilege to charge whatever the hell they want for their operating system. That's the beauty of having a near monopoly.

The second question I have is: How is Microsoft going to compete? Computer are getting dirt cheap. The Asus Eee PC is changing the way people think of laptop in terms of size and price. At the rate prices are going down, more than half of the computer's price will be for Windows Vista Basic. Even now, it is possible to buy a laptop at FutureShop for less that $500 CAD. How much of that $500 goes towards Windows?

At the rate things are going, Microsoft is going to have to dramatically reduce the price of Windows. I personally feel that $200 for a 'basic' version that allows me to surf the web and the privilege to install spyware, is highly unjustified. Especially when I can get a complete system that includes my office suite and development tools for practically nothing.

Or maybe the high price tag is to help support emerging markets? Since Microsoft is so altruistic, they will charge the develop world more to help subsidize Windows for the poor. What a nice robin-hoodish, humanitarian approach...except for the fact that the Robin Hood we are talking about here has more gold in his coffer than all the rotten sheriffs in the world. Furthermore, this Robin Hood is gladly charging the poor.

Once again, since they have a monopoly, it's only natural that they choose how much they charge. For years, it was easy to hide this Microsoft Tax, since a computer typically went for thousands of dollars. Now that computers are barely half a grand and that the price of Microsoft Windows keeps increasing, this tax is quite noticeable. People will quickly realize that an Asus Eee PC preloaded with Linux actually offers a lot more out of the box than the same Eee PC loaded with only Windows.

That brings me back to my first question: What the heck is Windows anyways? What am I paying $200 for?

Labels: , , , , , , ,

Sunday, April 13, 2008

Enjoying the Asus Eee PC

Having just received my Eee PC, I'm still getting familliar with it's capabilities. The keyboard requires getting used to, but I'm getting better. As long as I don't have to use the right shift key too much, I can almost achieve the same typing speed as on a regular keyboard ;) All joking aside, once you get used to the keyboard, it's actually quite pleasant.

I got the 8G model, which means that I have a whooping 8 gigabytes of 'hard disk' space. While this is tiny compared to a regular hard-disk, which is usually over 100 gigabytes for a laptop. However, for my needs, I think that 8G, or even 4G should be enough. Since the Eee PC supports SD cards, I'm using a 4 gigabyte card for my /home partition (for Windows users, think My Documents).

The pre-installed operating system is a custom version of Xandros Linux (which is based in Ottawa). Though the default is fine for most people's need, I wanted something that gave me more -- so I installed eeeXubuntu. I removed the default Gnome games, Abiword and
Gnumeric to save space, and them promptly installed:

I've got ~640M of space left (which ought to be enough for anybody) on my system partition. Not too bad, considering I've got a practically complete portable development system.

One of my goals is to get Morrowind working with Cedega. So far, no joy, but I'm not about to give up. I know some folks got it working, so I'm sure I can as well.

If you are going to install eeeXubuntu or Ubuntu, be aware of the Eee Wiki. One of the coolest trick I found is how to enable the ALT+F11 key to make a window take the full screen. That really takes advantage of the 800x640 screen resolution. There are many more cool tricks on the page. Check it out!

Software for Windows seems to take up much more room than software for Linux. If anyone plans to run Windows on the Eee PC, I would like to recommend they consider using Google Docs. It is a word processor, spreadsheet and presentation package that runs in a web browser like Internet Explorer or Firefox. Using Google Docs does not require you to install and special software. As long as you are connected to the Internet, you can use it. Futhermore, Google Gears should eventually allow you to run online application offline.

Actually, I'm using Google Docs one my Eee PC right now to author this article. So far, the Eee PC turns out to be a fun, yet useful machine. My wife is starting to strongly hint that I'm spending too much time on it. Oups! I think I should wrap up this article, and spend some quality time with her! See ya!

(Hum... I'm a bit disappointed with the Google Docs' HTML exporter. I wish it did XHTML)

Labels: , , , , , , , , , , ,

Wednesday, April 2, 2008

A Linux Dude Installs a SharePoint Server

Today, I had the dubious pleasure of having to install SharePoint 2007 on Windows Server 2003. Yay!

I'm a Linux user. I enjoy working with Ubuntu amongst other distros. I can setup LAMPs (Linux, Apache, MySQL & PHP|Perl|Python) with my eyes closed. I mean, I spend more time waiting for my package manager to download the packages than I actually spend configuring stuff. All the tools I need are immediately available at my fingertip.

A colleague of mine who is well versed in the Windows world kindly setup Windows Server 2003 on a laptop. He even installed drivers (they don't come with the OS?) and service pack 2. Now, it's my turn!

So, how does one install a package on Windows?

I easily found the 'Add or Remove Program', but quickly learned that it was more along the lines of 'Remove Programs'. I mean, I could only find the option to remove existing packages. There was no option to search for packages to install or how to configure your application repositories.

That's when I remembered that most Microsoft programs come on CDs. I found a CD for SharePoint 2007 in the office. This may not be so hard after all.

Now, with the laptop in one hand and the SharePoint 2007 CD in the other, I'm ready to rock! I slap in the CD, and wait for an install program to pop-up.

Instead, Internet Explorer 6 pops up with a security security warning. Click OK, and I'm brought to a little webpage that contains a confusing collection of links. After I find the link to the SharePoint installation program, it opens Windows Explorer, exposing a file called setup.cmd.

That looks kosher, so I double click on it. Oups! Looks like I need the .NET Framework 3.0, SQL Server 2005 as well as IIS 6.

So, how does one go about installing SQL Server 2005, .NET 3.0 and IIS 6? Why can it not take care of it's dependencies like my package manager on Ubuntu? This seems like a lot of trouble just to install a web application. One of the things that makes Windows so difficult to use it the lack of a solid package manager. Microsoft really needs to work on that before I can take Windows seriously. I feel like I'm back in the stone age where I have to manually download and compile stuff. I can already tell that installing SharePoint 2007 is not going to be a walk in the park.

I didn't chance Add or Remove Program again. I went straight for the CD. Going trough the setup was reasonably painless. However, I'm surprised as the number of steps (screen, windows, whatever) one has to go through just to install a database server. Why can't Windows keep things simple?

Now, onto the .NET framework 3.0. Before I started to look for yet again another CD, I though to myself mdash; there has to be an easier way! Thankfully, I've had enough experience with Windows to know about Windows Update. It took me a moment to find it in the Start menu. There were nearly two dozen updates. This is not concerning to me, since in Ubuntu, I may get dozens of updates for all my installed application (and I have a lot!). However, I'm concerned that the vast majority of my update are security related — and these are only for the OS.

Interesting, Internet Explorer 7 is a recommended update, but .NET 3.0 is an optional update. Nevertheless, I select all recommended updates as well as .NET 3.0. Click the button, and KABOOM! All the updates fail to install. The carefully worded error message recommends that I try again, otherwise, look up troubleshooting in the help.

I try again...and again...and again to no avail. Even a single update fails. So, I click on the convenient URL that links to the help. As convenient as the link seemed, the help was not.

Being in foreign territory, I turn to my Windows guru. After reproducing my steps a couple of time, He recommends a reboot.

Miraculously, rebooting worked! The updates downloaded and installed without problem mdash; except that I had to reboot twice more. I guess they were mostly kernel updates. How often do you have to reboot Windows? I have some server that have been live for over a year without reboot. I wonder if I could do the same with Windows...

I've also noticed that Internet Explorer required a couple of clicks to installs, and performed some work at boot-up. I wonder what kind of browser needs to spend about a minute setting itself up after a reboot?

Alright, so after a few reboots, I now have the .NET framework 3.0 installed. Now, to IIS 6.

This one took a bit of searching around. I found it where I kinda expect to find it but could not see it at first. There a 'button' on the left side that says 'Add Windows Component.' The button brought me to a dialog that I remember from the days when I first installed Windows 95. Digging in there, I found IIS 6.0. Thankfully, I love Java. When I saw Application Server as a category, I immediately clicked on it to see if JBoss or Glassfish was included. My first surprise is that there were not. My second is that IIS is considered an application server. I would have though it's a web server. But who am I to argue with Microsoft?

I select IIS 6.0 (including ASP.NET, which is not included by default), and clicked install. Windows prompted me for the original CD. I could not find a way to change the software repository to use the web instead of the CD. That's kind of annoying. Does that mean I have to carry my Windows CD everywhere I go? I mean, thats three CDs I'm going through.

The installation actually went smoothly. No annoying popups or anything like that. Just like Ubuntu, it installed and configured the server for me. Yay! So now I can install SharePoint!

I double clicked on setup.cmd again. This time, SharePoint complained about having to enable something in IIS 6.0. The popup kindly explained what I needed to do. So, I followed the instruction, which brought me to some kind of wizard. As luck would have it, after the third step, the wizard asked me if I wanted to remove some stuff. I said no, and retraced my steps to make sure I had done everything correctly. The same thing happened second time through. I do wish that Windows was less cryptic so that I could understand what I'm going through. There's a lot of popup windows over popup windows, and the interface is a bit inconsistent. I took a deep breath and continued forward.

Once again, I was prompted for the original Windows CD. After I slap it in, Windows starts installing this 'Active Directory.' It must have been a large package, because it took a long time. Furthermore, it asked me to reboot again! I can setup (even compile) an entire LAMP server with a fully functional GUI from the ground up and never have to reboot. What is it with Windows and rebooting every time you change something?

At this point, my coworker are wishing me good evening. Well, I've had enough of this Windows fad for the day, so I go home, and start blogging. While I'm blogging, I'm going to do something fun. Hardy Heron is out in beta, so I might as well upgrade!

I launch my good-ol' package manager, and click Upgrade to Hardy Heron. The upgrade warns me that it may take a long time to download all the necessary packages, but at least I can continue working while I upgrade my OS. I wonder if upgrading to the new Windows Server 2008 is going to be as easy?

It's always fun trying new operating system. Though Windows seems solid, it still has a number of frustrating quirks. Installing applications should be easier, and the consistency of the interface could be greatly improved. I'm concerned about the need to reboot so often &mdash especially when adding a desktop application like Internet Explorer. There is absolutely no excuse to force a reboot after the installation of a desktop component on a server machine.

I wish Microsoft would borrow a thing or two from Linux and make Windows truly easy to setup and use.

Labels: , , , , ,

Saturday, March 22, 2008

What is Linux?

Talking to Microsoft Windows users I find the conversation usually goes the following way:
  1. They spout out what little they know about Linux from a Microsoft perspective, trying to sound like they actually know what this Linux thing is.
  2. There is a silence in the conversation.
  3. I'm asked the question: 'Is Linux really that different from Windows?'

It's a simple question, but I find it a tough one to answer. What makes it difficult is the fact that most users equate GUI (Graphical User Interface) with the OS (operating system).
Before moving along, let's make sure that we understand the difference between a GUI and an OS. For starters, Windows is an operating system that includes a GUI. Mac OS X is an operating system that includes a GUI. Linux is an operating system that may or may not include a GUI.

So, what's an OS?
The simplest way to think of an operating system is in terms of hardware vs. software. The hardware consists of the parts of your computer that you can touch. Software is the logical, invisible part that makes your hardware do things. Software is simply a series of instructions that your computer follows. The software is typically packaged up in 'programs,' like OpenOffice, Microsoft Office, Firefox, etc...

Computers are really dumb and don't think. They blindly follow whatever instructions they are given.
This said, the operating system is a program that exists to control access to hardware and software resources like your memory (RAM), hard-drives, network, display, keyboard, mouse and so on.
Thus, a program like OpenOffice needs to ask the OS which keys were pressed on the keyboard. OpenOffice also needs to ask the operation system to draw letters on the screen. Behind the scenes, OpenOffice also needs to ask the operating system to allocate memory, load and save information to the hard disk, and send printing instructions to your printer.
The application communicates to the operating system using services or APIs (Application Programming Interface).

In turn, the operating system will rely on a 'kernel' to translate the service request to commands that the specific hardware of your machine can understand.
The following diagram displays the relationships between some applications and the operating system.
Operating System Layers
Let's go back to the original question: What is Linux?
The answer is: Linux is a kernel. No more. No less. It is the fundamental piece of code that controls the resources on your machine. Windows has a kernel. Mac OS X has a kernel. Pretty much every operating system has a kernel.
However, a kernel provides API that computer programmers use to write programs. End users do not interact directly with the kernel. To allow users to interact with their computer, a set of tools are provided with the operating system. In the world of Windows, you are familiar with the Start menu, the Control Panel and the Windows Explorer. These are some of the operating system's tools that one uses everyday to control the machine. These program are part of the operating system, but run on top of the operating system APIs. Such tools are sometimes called shell programs.

Linux is only a kernel. It does not include a shell or programs. However, Linux is most commonly packaged with a combination of free programs from another--as of yet incomplete--operating system called GNU. Because it borrows from the GNU project, you may hear people refer to the operating system as GNU/Linux.
With the combination of the GNU tools and the Linux kernel, we now have a complete operating system.
Well, it's complete in terms of functionality, but the average, everyday user would not consider it complete due to the fact that you do not have a GUI at this point. In other word, there are no graphics, icons, mouse, etc. Just 'cryptic' commands typed on a white on black screen.
So, the answer to the question: Is Linux like Windows seems to be no for multiple reasons.
  1. The Linux kernel has comparable functionality to the Windows kernel, but exposes the API differently. Thus, programs written for Linux do not work on Windows, and vice-versa.
  2. Windows is an operating system, while Linux is just a kernel (a part of the operating system).
  3. Linux is free software that is open to anyone to see and modify. Windows is proprietary and is closed -- no touchy the kernel!

There are more differences to discuss, but I would like to finish this post with the following point to consider. Linux is not a GUI. In other words, it is not the program that controls what you see on the screen and how you interact with your machine. It is the glue that ties together your hardware with your machine. The nitty-gritty technical details are very different from Windows.

BUT, we haven't talked GUI. In the world of Linux, there is not one GUI, not two GUIs, not three GUIs, but dozens of GUIs available. Linux has been used anywhere from digital video recorders to supercomputers to your average, every day desktop machine (like mine ;)).
In future installments, I would like to discuss how Linux can look and behave in a fashion that is familiar to Windows users. However, I will continue to emphasize that Linux is not like Windows...and why that's a good thing!

Labels: , , , , ,