Tuesday, June 22, 2010

Windows on Linux: Introduction: What's an operating system?

You might ask, 'What does it mean to have an operating system? Doesn't my computer just work?'

Yes and no. Just as a healthy body is in fact a mind-boggling combination of processes and chemical reactions, so a computer that simply does what it needs to do is in fact such a feat of hardware and software engineering that we are mostly innocent of what it takes to make it happen. And your operating system is the brain that orchestrates an amazing body of applications and processes that combine when we go online, send emails, and type documents.

What is an operating system?

An operating system is essentially a program that tells other programs what to do and where to go. If we probe a little deeper, we find that it is actually a conglomeration of programs working together in order to achieve this. It is likened to an eco-system that hosts thousands of programs great and small, most of which live and thrive interdependently.

But however you choose to define it, it is a program, and every computer program has to be loaded and run.

So how does this all happen? How does your computer, a dormant jigsaw puzzle of expensive pieces, become a living, humming entity on your desk?

Let's use the analogy of waking up and going through a morning routine:
Wake up = BIOS
Morning routine = Load the operating system

Waking Up (BIOS)

When you wake up in the morning, you sub-consciously scan your body to make sure that everything is in place. As you lie in bed you open your eyes, stretch your limbs, fingers and toes, and gradually become aware of your body. For the most part, this process occurs below the surface, but if something is different, e.g. an injury, your attention will be drawn to it.

When you switch on a computer, it goes through a similar process of scanning its parts. As the fan begins its familiar hum, your computer will check its memory, hard drive, CD/DVD-Rom, and so on, ticking its items off a checklist and briefly informing you that all is well -- or not, if something is amiss. The checklist it refers to is defined by a tiny program called BIOS, which would still run even if you took out the hard drive because it is built in to the motherboard.

OK, now you're awake, and you need to get ready for work. If you're anything like me, your morning will start by sleepily rolling out of bed and automatically performing routine tasks. We don't give it much thought, but most of us do all these things in the same order every day. It's almost as if we follow a checklist.

toilet
shower
brush teeth
grooming
get dressed
breakfast

Let's come back to the computer. Once it has roused itself and gone through its BIOS checklist of bits and pieces, its morning routine comprises a series of processes that get the operating system dressed and ready for work:

activate the video and audio devices (see the desktop and hear system sounds)
activate the input devices (keyboard and mouse)
load background processes
connect to the internet

As you can see, loading the operating system is the computer's way of getting up, dressed, and ready for its work.

Windows on Linux: Overview

One of the most important considerations when setting up a Linux PC is what to do about Windows.

In the following three blogs I will cover the three main ways of using Windows-only applications on a computer that uses [Ubuntu] Linux as its primary host operating system:

1) Dual booting
2) Emulating
3) Virtualisation

The fact of the matter is that most people, at least initially, are attached to at least one Windows-only application, and despite some really clever thinking from [Mark Shuttleworth], an everyday user still has to commit himself to a host operating system.

Incidentally, a friend of mine gets around the choice of host operating system on his very powerful computer by running all of his applications in three different operating systems, each one in its own virtual machines. However, this is still very much an expert's approach, to which there are still very high barriers to entry -- financial and technical -- and it is not what I will propose.

However, before we go into the three options, we need to understand what it means to have an operating system, and why some programs seem to run perfectly in both Linux and Windows, whereas others don't work at all.

Monday, June 21, 2010

Going On Holiday

Just a quick note to say that I'm going to take a brief, three day holiday on the Mornington Peninsula with my beloved, N.

It's been a crazy first two months at Clockwork PC, but sales are very good, and we already have quite a few delighted customers. Our website still awaits its finishing touches, and there are a few other loose ends, but on the whole it's very satisfying to survey the landscape in Clockwork PC land.

To all those who have helped to make Clockwork PC a reality, thank you very much, and I'll be back on Friday, 25th June.

Alex

PS: This was posted from Linux terminal using GoogleCL.