Which operating systems?
The operating systems have undergone a tremendous development since 1981. It all started with DOS, which was a 16 bit modification of a simple 8 bit operating system called CP/M.
DOS was further developed in the 1980s. Since around 1990 Windows came into the scene. Windows started as a GUI ( Graphic User Interface ) for DOS.
The PC booted with DOS as operating system. Then you could choose, if you wanted mouse and graphics on the screen with Windows . Windows was a supplement to DOS.
The Graphic User Interface (GUI) allows you to work with a mouse instead of writing long command lines like copy c:\texts\*.* d:\textbak\ *.* /s/v/, which is the standard in text based operating systems (like DOS).
DOS was designed for 16 bit computers, which the first PCs were. With Intel's 80386 the 32 bit technology was knocking at the door. Modern PCs are designed for straight 32 bit program execution. So we have seen a gradual trend in the PC operating systems from 16 bit towards 32 bit and this affects hardware design.
OS/2 was a completely new-designed OS build on a 32 bit kernel (as UNIX and LINUX). It was originally designed by IBM and Microsoft together, but Microsoft abandoned the project in favour of their own Windows . In the early 1990s many people (including I) were very fond of OS/2. But it lost momentum as Windows 95 appeared.
Windows 95 was a radical development of Windows 3.11. Windows 95 was build on DOS, but the 32 bit components made up a big part of the OS. Together with Windows 95 came new 32 bit appliacations, which could not be executed within DOS.
Windows 98 and Me are further enhanced versions of Windows 95.
Windows 95 and Windows 98/Me are mostly 32 bit OS's, but with some 16 bit remnants.
Windows NT is a pure 32 bit OS from Microsoft. It was developed in a parallel run with OS/2.
Windows 2000 and XP are more popular versions of Windows NT. They hold the same user interface as Windows 98 end ME. They include all the DirectX technologies of Windows 98/Me which enables game and other multimedia applications to run.
A brief comparison of 16 bit and 32 bit operating systems can look like this:
|Operating system||DOS||32 bit operating system (NT, OS/2, UNIX)|
|Users||Single user||Multiple users|
|Program execution||16 bit single task in real mode||32 bit multitask in protected mode|
|Screen appearance||Mostly Text based (poor quality graphics)||Often GUI - graphic interface with high resolution graphics|
|Hardware handling||Primarily BIOS||Custom designed 32 bit drivers for each hardware component.|
DOS control of hardware
When we talk about hardware control, it is done through IO.SYS. That is a program which reads the ROM BIOS code and converts it to DOS's own device drivers.
The smart thing about DOS is that the operating system can be expanded with external device drivers. IO.SYS reads them via the start-up file CONFIG.SYS. First device drivers are read from ROM BIOS. Then any possible additional drivers are read from disk. In that way DOS can handle hardware units which did not exist when the PC was originally configured.
A final option to handle hardware from DOS programs is to write special drivers for the individual user program . Many DOS games come with their own graphics drivers (they have to recognize all graphics standards on the market!). Another classic example is the word processing program WordPerfect, which in its prime (version 5.1) came with drivers to more than 500 different printers!
|Unit||Example of DOS device drivers|
|CD-ROM||ATAPI.SYS + MSCDEX.EXE|
|Printer||Internal drivers in the user program (like WordPerfect 5.1)|
The device drivers can be seen with the program MSD. Here is a picture from Windows 95, where you can clearly see the names of the device drivers (CON, PRN, LPT1 etc.):
All these device drivers are in 16 bit program code.
Also see The Software Tips
Read about chip sets on the motherboard in module 2d
Read module 5a about expansion cards, where we evaluate the I/O buses from the port side.
Copyright (c) 1996-2005 by Michael B. Karbo. www.karbosguide.com.