Logo
Also from from Blinky
The Worldwide Squirrel Shooters Association (Photography, that is.)
The Usenet Improvement Project
NEW at Blinkynet
My Old Girlfriend

The Origins of Linux and Windows - A Brief Look

Aragorn, responding to a comment - the first paragraph - by a brand new Linux user


I guess I'm too much of a novice to Linux yet. Too much "baby sitting" by Windows I think. Linux is like stepping back to the pre-Windows days, when everything was DOS based! It's certainly quite a culture shock, but one which I shall overcome (given time).

Gnu/Linux is a UNIX clone. UNIX is older than MS-DOS or any of its peers, but has evolved just like any other operating system. In the event of Gnu/Linux, this evolution went a lot faster, even, because of the nature of Open Source software.

DOS and its ancestors CP/M and QDOS were actually conceived to look to the user as a simplified kind of UNIX system, i.e. commandline driven, as most other operating systems were. To the software, it was not even an operating system, but an executable loader. DOS loads a file into memory when it has a name that ends in .bat, .com or .exe and when that name is invoked as a command at the prompt.

From there on, the executable takes over the machine and uses the I/O routines in the first 64 KB of memory - or between 1024 and 1088 KB in DOS versions 5.00 and later when HMA is in use - but it can just as well replace those I/O routines with its own routines, should the programmer have decided thusly. There is no such thing as memory protection, threading or synchronous multiprocessing in DOS.

DOS runs in the real mode of the x86 CPU. This is called "real" because in that mode, every piece of hardware and every memory location is really addressed by its physical address, and how and when the program sees fit. This is the mode that makes IA32 CPU's compatible with the old 8086 CPU, and the CPU must boot in this mode for it to be able to load DOS, simply because DOS doesn't even know what /protected/ mode is - that is the native mode of the IA32 CPU, with memory protection, task scheduling, and all the other goodies that a real OS needs.

Windows is barely an operating system. It's a hardware abstraction layer with a graphical user interface, which was stolen from Apple Mac OS (and IBM OS/2), and Apple in turn stole it from Xerox. Windows originally ran on top of DOS. Then, it was sold integrated with DOS, and now it runs on the so-called NT-kernel, which is a blend between some functionality stolen from the Gnu Mach kernel - although Microsoft will deny this, of course - and mainly based upon the OS/2 kernel, to which Microsoft does have part of the rights - at least, whereas the 16-bit OS/2 versions were concerned.

UNIX had protective memory management, multi-tasking and multi-user functionality from the ground up and has already been running on 64-bit architectures for years - and the graphical component known as the X Window System was in fact only intended to run graphical applications such as DTP suites or CAD software.

Desktop environments only came much later, when it became clear that UNIX was also enough of a valuable operating system for professional workstations to be deployed on a larger scale. The boom in desktop environments however came when Gnu/Linux became popular. The Gnu people developed Gnome, and a few enthusiasts developed KDE, while many clones of Steve Job's NeXTSTeP interface - such as WindowMaker, AfterStep and LightStep - or of CDE - the Common Desktop Environment found on Solaris, IRIX and AIX, among others - were developed.

Windows was designed to be a front-end to a computer without a real back-end, for the purpose of turning your computer in a kitchen sink appliance, and with purely economic intentions priming over the technological design.

UNIX on the other hand has always acted like an entire network within one computer housing, and although commercially vended, it was not designed as such. It was basically an experiment that turned handy for playing games on, and that was later used by AT&T internally to process patent documents. After the system had proven itself and enough improvements had been applied to it, AT&T decided to release it commercially.

There were no personal computers yet when UNIX came to be. Any serious machine back then was either a minicomputer or a mainframe, and the machine it came to be born on was a PDP-11. Hardly something you can call a PC. ;-)

In the eyes of the newbies - and we keep on telling them over and over again how wrong they are ;-) - Gnu/Linux is a replacement for Windows. However, the very people who designed Gnu and Linux - the two major components of what makes up for most of a distribution today and which were designed in different timeframes and with different intentions in mind - couldn't care any less about Microsoft, Windows or market shares at the time they developed their software.

Little do newbies know that they are sitting at a true multi-user computer system that runs on just about anything from wristwatches, mp3 players and radios to IBM mainframe computers, and that the KDE, Gnome, IceWM, AfterStep or whatever GUI that they are looking at and that may bring some associations with Windows or Mac OS to mind, is in fact only a nice but not mandatory front-end to the user account they have logged into, a mere user interface on a machine capable of more than anything Microsoft will ever invent... ;-)

This is the kind of operating system that the Intel IA32 and compatible processors were invented for. Forget about Windows; it doesn't even use half of the hardware functionality you have. Windows on a computer is a waste of good technology, period. ;-)

There, I've given my lecture for the day again! :-


This article appeared in Usenet group alt.os.linux.mandrake on April 6, 2005. Its Message-ID is: <zL_4e.89433$Uh3.30748@biebel.telenet-ops.be>

Revised: April 9, 2005

You are encouraged to redistribute this work, so long as you respect its license. This work is licensed under a Creative Commons License.


<-  Back to Computing/Linux