Any computing system can be divided into two components: the hardware and the software, and systems can be classified into two types depending on the relationship of these two components:-
On general purpose systems the software can be further divided into two components:-
When the computer is switched on its first job is to load the operating system. This is called ''booting'' which is short for boot-strapping which refers to the fact that it is lifting itself by its own boot straps! When the computer first starts up it is very dumb, all it has is a very simple loading program which it runs to read in an external program. This program then loads more software and so on until finally the full operating system is ready. Now the machine is smart, knowing how to handle all its resources, hence the boot strap analogy.
The Operating System can be further divided into a number of layers:-
The process of adding layers can continue. For example, on an PC, Microsoft Windows can be regarded as part of the operating system. providing resources, such as windows, to application software. There is a trend to add ever more levels of sophistication to the operating system so as to minimise the effort required to develop new applications.
From this it should be clear that an application is designed to run on a particular hardware using a particular operating system, and the term PLATFORM is used to denote any specific hardware, operating system combination. In the early days of general purpose computers the operating systems were developed to run on a specific hardware. The operating system determines the user interface i.e. how the user controls the computer, and early systems were anything but user friendly! As systems developed this interface improved, but user's didn't want to have to keep learning new system just to use the latest hardware and hardware manufacturers didn't want to spend more and more time producing acceptable operating systems. The net result is that there are now a few popular operating systems that run on a wide range of hardwares and many hardwares can run more than one operating system. For example PCs can run both MS Windows and Linux.