History of Microsoft Windows

From Wikipedia

HomePage | Recent changes | View source | Discuss this page | Page history | Log in |

Printable version | Disclaimers | Privacy policy

In [[1985]Microsoft released the first version of Windows, a graphical user interface (GUI) for their own operating system (MS-DOS) that had been shipped with IBM PC and compatible computers since 1981. The GUI was modeled after Apple's MacOS.

This first version of Microsoft Windows was neither very powerful, nor very popular. It was severely limited due to legal challenges by Apple. For example, windows could only be 'tiled' on the screen; that is, they could not overlap or overlie one another. Also, there was no trash can, since Apple believed they owned the rights to that paradigm or concept. Both of these limitations were removed when Apple's challenges were rebuffed in the courts. Also, the programs that shipped with the early version were "toy" applications with little or limited appeal to business users.

Microsoft Windows 2 came out in 1987, and was a bit more popular than the original version. Much of the popularity for Windows 2.0 came by way of its inclusion as a "run-time version" with Microsoft's new graphical applications, Excel and Word for Windows. They could be run from MS-DOS, executing Windows for the duration of the program, and closing down Windows upon exit. Windows 2 still used the 8088 memory model and so was limited to 1 megabyte of memory, but many people had success running it under another multitasker like DesqView.

The first really popular version of Windows was version 3.0, released in 1990. This benefited from the improved graphics available on PC's by this time, and also from the 80386 processor which allowed better multitasking of the Windows applications. It would even allow you to run and multitask older MS-DOS based software. Windows 3 made the IBM PC a serious piece of competition for the Apple Mac.

During the mid to late 1980s, Microsoft and IBM had co-operatively been developing OS/2 as a successor to DOS, to take full advantage of the capabilities of the Intel 80286 processor. OS/2 used the memory management hardware available in the Intel 80286 processor to allow use of up to 16M of memory. Most DOS programs were by contrast limited to 640K of memory. OS/2 1.x also supported swapping and multitasking.

IBM later added in an early version of OS/2 (1.2? 1.3?) a graphics system called Presentation Manager (PM). Although it was in many ways superior to Windows, its API was incompatible with that used by Windows programs. (Among other things, Presentation Manager placed X,Y coordinate 0,0 at the bottom left of the screen like Cartesian coordinates, while Windows put 0,0 at the top left of the screen like most other computer window systems.)

In the early 1990s, tensions developed in the Microsoft/IBM relationship. They co-operated with each other in developing their PC operating systems, and had access to each others code. Microsoft wanted to further develop Windows, while IBM desired for future work to be based on OS/2. In an attempt to resolve this tension, IBM and Microsoft agreed that IBM would develop OS/2 2.0, to replace OS/2 1.3 and Windows 3.0, while Microsoft would develop a new operating system, OS/2 3.0, to later succeed OS/2 2.0.

This agreement soon however fell apart, and the Microsoft/IBM relationship was terminated. IBM continued to develop IBM OS/2 2.0, while Microsoft changed the name of its (as yet unreleased) OS/2 3.0 to Windows NT. (Microsoft marketed Windows NT so successfully that most people were unaware that it was OS/2 rehashed.) Both retained the rights to use OS/2 and Windows technology developed up to the termination of the agreement.

IBM released OS/2 version 2.0 in 199x. OS/2 version 2.0 was a major improvement on OS/2 1.3 -- it featured a new, object-oriented windowing system, the Workplace Shell, to replace the Presentation Manager -- a new file system, HPFS, to replace the DOS FAT file system used by Windows -- and took full advantages of the 32-bit capabilities of the Intel 386 processor. It also could run DOS and Windows 3.0 programs, since IBM had retained the right to use the DOS and Windows code as a result of the breakup.

In response to the impending release of OS/2 2.0, Microsoft developed Windows 3.1, which included several minor improvements to Windows 3.0 (such as the TrueType scalable fonts), but primarily consisted of multimedia support. Later Microsoft also released Windows 3.11 (marketed as Windows for Workgroups), which included improved network drivers and protocol stacks, and support for peer-to-peer networking.

Meanwhile Microsoft continued to develop Windows NT. Microsoft hired Dave Cutler, one of the chief architects of VMS at Digital Equipment Corporation (now part of Compaq) to develop NT into a more capable operating system. Cutler had been developing a follow-on to VMS at DEC called Mica, and when DEC dropped the project he brought the expertise and some engineers with him to Microsoft. DEC also believed he brought Mica's code to Microsoft and sued. Microsoft eventually paid $150 million and agreed to support DEC's Alpha CPU chip in NT.

Being an entirely new operating system, Windows NT suffered from compatibility issues with hardware and software commonly used at the time. It was also resource-intensive, and thus was only suitable for larger, more expensive machines. Because of this, most users would have been unable to switch to Windows NT. And Windows NT's GUI was still based on that of Windows 3.1, which was inferior to the OS/2 Workplace Shell. In response, Microsoft began to develop a succesor to Windows 3.1, which it code-named Chicago. Chicago was intended to feature a new GUI to compete with with OS/2 Workplace Shell. It was also intended to be 32-bit and support pre-emptive multitasking, like OS/2 and Windows NT. Only some of Chicago, however, was converted to use 32-bit code; much of it remained in 16-bit form, Microsoft reasoning that to convert it would delay Chicago's release too long, and be too costly.

Microsoft developed a new API, to replace the 16-bit Windows API. This API was called Win32, and from then on Microsoft referred to the older 16-bit API as Win16. This API was developed in three versions: one for Windows NT, one for Chicago, and Win32s, which was a subset of Win32 which could be used on Windows 3.1 systems. Thus Microsoft sought to ensure some degree of compatibility between Chicago and Windows NT, even the two systems had radically different architectures.

Windows NT 3.1 (Microsoft marketing desired to make Windows NT appear to be a continuation of Windows 3.1) arrived in Beta form to developers at the July 1992 Professional Developers Conference in San Francisco. Microsoft announced at the conference its intentions to develop a successor to both Windows NT and the still as yet unreleased Chicago, which would unify the two into one operating system. This successor was codenamed Cairo. (In hindsight, Cairo was a much more difficult project than Microsoft had anticipated, and as a result, NT and Chicago would not be unified until Windows XP).

Microsoft marketing adopted "Windows 95" as the product name for Chicago when it was released in August 1995. Although it shared much code with Windows 3 and even MS-DOS, Windows 95 had two big advantages for the average consumer. First, although it was still a GUI strapped on top of MS-DOS, it had an integrated installation and so appeared to be a single OS: you no longer needed to buy MS-DOS and then install Windows on top of it. Second, it introduced a protected-mode subsystem that was specially written for 80386 and higher processors, which would stop new Win32 applications from damaging the memory area of other Win32 applications. In this respect Windows 95 moved closer to Windows NT.

IBM continued to market OS/2, producing later versions such as OS/2 3.0 and 4.0 (also called Warp). But with the release of Windows 95 OS/2 began to lose marketshare. While OS/2 continued to run Windows 3.0 applications, it lacked support for the new applications that required Windows 95. Unlike for Windows 3.0, IBM did not have access to the source code for Windows 95; and had neither the time nor the resources to emulate the work of Microsoft's programmers in developing Windows 95.

After the release of Windows 95, Windows NT continued to use the Windows 3.1 interface. Therefore Microsoft released Windows NT 4.0, which featured the new Windows 95 interface on top of Windows NT.

June 25 1998 saw the release of Windows 98, which was a minor revision of Windows 95. It included new hardware drivers and the FAT32 file system to support disk partitions larger than the 2 GB allowed by Windows 95.

In 1999 Microsoft released Windows 98 Second Edition, whose most notable feature was the addition of internet connection sharing, which allowed several machines on a LAN to share a dialup connection.

In 2000 Microsoft introduced Windows ME (Millenium Edition), which was Windows 98 with more applications bundled in. Windows ME was a quick one-year project to chuck in the middle of Windows 98 and the upcoming Windows XP. They also introduced Windows 2000, described as NT 5 prior to release, and was very useful for administrating networks and servers.

The merging of the Windows NT/2000 and Windows3.1/95/98/ME lines was achieved with Windows XP, released in 2001. Windows XP uses the NT kernel.

MS-DOS product progression:

  • MS-DOS
  • Windows 1.0,2.0
  • Windows 3.0,3.1,3.11
  • Windows 95,98,ME

OS/2 product progression:


See also:


/Talk