History of Microsoft Windows

From Example Problems
Jump to navigation Jump to search

In 1983 Microsoft announced its development of Windows, a graphical user interface (GUI) for its own operating system (MS-DOS) that had shipped for IBM PC and compatible computers since 1981. Microsoft modeled the GUI, which was first known as Interface Manager, after that of Apple's Mac OS. Bill Gates had been shown a Macintosh prototype by Steve Jobs early in its development, around 1981, and Microsoft was partnered by Apple to create some of the important early Mac software, such as Word and Excel.

Early history

The first independent version of Microsoft Windows, version 1.0, released in 1985, lacked a degree of functionality and achieved little popularity. Windows 1.0 did not provide a complete operating system, but rather extended MS-DOS and shared the latter's inherent flaws and problems. Moreover, the programs that shipped with the early version comprised "toy" applications with little or limited appeal to business users.

Furthermore, legal challenges by Apple limited its functionality. For example, windows could only appear 'tiled' on the screen; that is, they could not overlap or overlie one another. Also, there was no trash can (place to store files prior to deletion), since Apple believed they owned the rights to that paradigm. Microsoft later removed both of these limitations by means of signing a licensing agreement.

Microsoft Windows version 2 came out in 1987, and proved slightly more popular than its predecessor. 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 their activity, and closing down Windows upon exit (rumor has it that Windows was intended as a platform to run Microsoft Office applications first, and only later as a general-use GUI system).

Microsoft Windows received a major boost around this time when Aldus Pagemaker appeared in a Windows version, having previously run only on Macintosh. Some computer historians date this, the first appearance of a significant and non-Microsoft application for Windows, as the beginning of the success of Windows.

Versions 2.0x still used the real-mode memory model, which confined it to a maximum of 1 megabyte of memory. In such a configuration, it could run under another multitasker like DESQview, which used the 286 Protected Mode. Later two new version were released, named Windows/286 2.1 and Windows/386 2.1. Windows/286 could run in either Real or Protected Mode, which gave it access to up to 16 megabytes of memory, and Windows/386 included support for the 386 CPU's Enhanced Mode.

Version 2.03, and later 3.0, faced legal challenges from Apple over its overlapping windows and other features Apple charged mimicked the "look and feel" of its operating system and "embodie[d] and generate[d] a copy of the Macintosh" in its OS. Judge William Schwarzer dropped all but 10 of the 189 charges that Apple had sued Microsoft with on January 5 1989.

Success with Windows 3.0

Microsoft Windows scored a serious success with Windows 3.0, released in 1990. In addition to improved capabilities given to native applications, Windows also allowed a user to better multitask older MS-DOS based software compared to Windows/386, thanks to the introduction of virtual memory and of loadable VxDs. It made PC compatibles serious competitors to the Apple Macintosh. This benefited from the improved graphics available on PCs by this time (by means of VGA video cards), and the Protected/Enhanced mode which allowed Windows applications to use more memory in a more painless manner than their DOS counterparts could. Windows 3.0 could run in any of Real, Standard or 386 Enhanced modes, and was compatible with any Intel processor from the 8086/8088 upto 80286 & 80386. Windows tried to auto detect which mode to run in, although it could be forced to run in a specific mode using the switches: /r (real), /s (standard) and /3 (386) respectively.

Due to this backwards compatibility, applications also had to be compiled in a 16-bit environment, without ever using the full 32-bit capabilities of the 386 CPU.

A limited multimedia version, Windows 3.0 with Multimedia Extensions 1.0, was released several months after. This was bundled with the first sound card / CD-ROM multimedia kits e.g. Creative Labs Sound Blaster Pro along with titles such as MS Bookshelf. This version was the precursor to the multimedia features available in v3.1 later.

However, the features listed above, as well as the growing market support made Windows 3.0 wildly successful—selling around 10 million copies in the two years before the release of version 3.1, Windows 3.0 became a major source of income for Microsoft, and led the company to revise some of its earlier plans.

A step sideways: OS/2

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 aforementioned Protected Mode of the Intel 80286 processor, to allow use of up to 16M of memory. OS/2 1.0, released in 1987, supported swapping and multitasking and allowed running of DOS executables.

A GUI, called the Presentation Manager (PM), was not available with OS/2 until version 1.1, released in 1988. Although some considered it to be in many ways superior to Windows, its API was incompatible with Windows. (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.) Version 1.2, released in 1989, introduced a new file system, HPFS, to replace the DOS FAT file system used by Windows.

By the early 1990s, conflicts developed in the Microsoft/IBM relationship. They co-operated with each other in developing their PC operating systems, and had access to each other's 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 OS/2, while Microsoft changed the name of its (as yet unreleased) OS/2 3.0 to Windows NT. Both retained the rights to use OS/2 and Windows technology developed up to the termination of the agreement; Windows NT, however, was to be written anew, mostly independently (see below).

After an interim 1.3 version to fix up many remaining problems with the 1.x series, IBM released OS/2 version 2.0 in 1992. This was a major improvement: it featured a new, object-oriented GUI, the Workplace Shell (WPS), that included a desktop and was considered by many to be OS/2's best feature. Microsoft would later imitate much of it in Windows 95. Version 2.0 also provided a full 32-bit API, offered smooth multitasking and could take advantage of the 4 gigabytes of address space provided by the Intel 80386. Still, much of the system still had 16-bit code internally which required, among other things, device drivers to be 16-bit code as well. This was one of the reasons for the almost chronic bad supply of OS/2 with up-to-date device support. Version 2.0 could also 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.

At the time, it was unclear who would win the so-called "Desktop wars". But in the end, OS/2 did not manage to gain enough market share, even though IBM released several improved versions subsequently (see below).

Windows 3.1 and NT

File:Windows 3.11 workspace.png
Typical Windows 3.11 desktop

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 display of TrueType scalable fonts, developed jointly with Apple), but primarily consisted of bugfixes and multimedia support. It also removed support for Real mode, and would only run on a 80286 or better processor. Later Microsoft also released Windows 3.11, a touch-up to Windows 3.1 which included all of the patches and updates that followed the release of Windows 3.1 in 1992. Around the same time, Microsoft released Windows for Workgroups (WfW), available both as an add-on for existing Windows 3.1 installations and in a version that included the base Windows environment and the networking extensions all in one package. Windows for Workgroups included improved network drivers and protocol stacks, and support for peer-to-peer networking. One optional download for WfW was the 'Wolverine' TCP/IP protocol stack, which allowed for easy access to the Internet through corporate networks. There were two versions of Windows for Workgroups, WfW 3.1 and WfW 3.11. Unlike the previous versions, Windows for Workgroups 3.11 only runs in 386 Enhanced mode, and requires at least an 80386SX processor.

All these versions continued version 3.0's impressive sales pace. Even though the 3.1x series still lacked most of the important features of OS/2, such as long file names, a desktop, or protection of the system against misbehaving applications, Microsoft quickly took over the OS and GUI markets for the IBM PC. The Windows API became the de-facto standard for consumer software.

Meanwhile Microsoft continued to develop Windows NT. Microsoft hired Dave Cutler, one of the chief architects of VMS at Digital Equipment Corporation (later purchased by Compaq, now part of Hewlett-Packard) 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 US and agreed to support DEC's Alpha CPU chip in NT.

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 Windows 3.1's replacement (code-named 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, and still, parts of Cairo have not made it into Windows as of today. Specifically, the WinFS subsystem, which was the much touted Object File System of Cairo, has now been put on hold, and will not be released with Longhorn/Vista).

Driver support was lacking due to the increased programming difficulty in dealing with NT's superior hardware abstraction model. This problem plagued the NT line all the way through Windows 2000. Programmers complained that it was too hard to write drivers for NT, and hardware developers were not going to go through the trouble of developing drivers for a small segment of the market. Additionally, although allowing for good performance and fuller exploitation of system resources, it was also resource-intensive on limited hardware, and thus was only suitable for larger, more expensive machines. Windows NT would not work for private users because of its resource demands; moreover, its GUI was simply a copy of Windows 3.1's, which was inferior to the OS/2 Workplace Shell, so there was not a good reason to propose it as a replacement to Windows 3.1.

However, the same features made Windows NT perfect for the LAN server market (which in 1993 was experiencing a rapid boom, as office networking was becoming a commodity), as it enjoyed advanced network connectivity options, and the efficient NTFS file system. Windows NT version 3.51 was Microsoft's stake into this market, a large part of which would be won over from Novell in the following years.

One of Microsoft's biggest advances initially developed for Windows NT was new 32-bit API, to replace the legacy 16-bit Windows API. This API was called Win32, and from then on Microsoft referred to the older 16-bit API as Win16. Win32 API had three main implementations: one for Windows NT, one for Win32s (which was a subset of Win32 which could be used on Windows 3.1 systems), and one for Chicago. Thus Microsoft sought to ensure some degree of compatibility between the Chicago design and Windows NT, even though the two systems had radically different internal architectures.

Windows 95

File:Am windows95 desktop.png
A typical Microsoft Windows 95 desktop

After Windows 3.11, Microsoft began to develop a new version of the operating system code-named Chicago. Chicago was designed to be fully 32-bit and support pre-emptive multitasking, like OS/2 and Windows NT, that would improve its stability as opposed to the notoriously unstable 3.11. Many parts of the operating system's core were rewritten; others went through an elaborate overhaul. Win32 API was adopted as the standard external interface, Win16 compatibility being preserved through various measures and tricks. A new GUI was not originally planned as part of the release, although elements of the Cairo user interface were borrowed and added as other aspects of the release (notably Plug and Play) slipped.

Microsoft did not change all of the Windows code to 32-bit; parts of it remained 16-bit (albeit not directly using real mode) for reasons of compatibility, performance and development time. This, and the fact that the numerous design flaws had to be carried over from the earlier Windows versions, eventually began to impact on the operating system's efficiency and stability.

Microsoft marketing adopted Windows 95 as the product name for Chicago when it was released on August 24, 1995. Microsoft had a double gain from its release: first it made it impossible for consumers to use a cheaper, non-Microsoft DOS; secondly, although traces of DOS were never completely removed from the system, and a version of DOS would be loaded briefly as a part of the bootstrap process, Windows 95 applications ran solely in 386 Enhanced Mode, with a flat 32-bit address space and virtual memory. These features made it possible for Win32 applications to address up to 2 gigabytes of virtual RAM (with another 2GB reserved for the operating system), and (at least in theory) prevented them from corrupting the memory space of other Win32 applications. In this respect the functionality of Windows 95 moved closer to Windows NT, although Windows 95/98/ME did not support more than 512 megabytes of physical RAM without obscure registry tweaks.

IBM continued to market OS/2, producing later versions in OS/2 3.0 and 4.0 (also called Warp). Responding to complaints about OS/2 2.0's high demands on computer hardware, version 3.0 was significantly optimized both for speed and size. Before Windows 95 was released, OS/2 Warp 3.0 was even shipped preinstalled with several large German hardware vendor chains. However, with the release of Windows 95, OS/2 began to lose marketshare.

It is probably impossible to nail down a specific reason why OS/2 failed to gain much marketshare. While OS/2 continued to run Windows 3.1 applications, it lacked support for anything but the Win32s subset of Win32 API (see above). Unlike Windows 3.1, IBM did not have access to the source code for Windows 95 and was unwilling to commit the time and resources to emulate the moving target of the Win32 API. IBM also introduced OS/2 into the United States v. Microsoft case, blaming unfair marketing tactics on Microsoft's part, but many people would probably agree that IBM's own marketing problems and lack of support for developers contributed at least as much to the failure.

Microsoft released 5 Versions of Windows 95:

  • Windows 95 Original Release
  • Windows 95 A - included Windows 95 Service Pack 1 slipstreamed into the installation.
  • Windows 95 B - (OSR2) included several major enhancements, like IE 3.0 and full FAT32 support.
  • Windows 95 B USB - OSR2.1, included basic USB support.
  • Windows 95 C - (OSR2.5) included all the above features, as well as IE 4.0. This was the last 95 version produced.

OSR2, OSR2.1, and OSR2.5 were not released to the general public, rather, they were available only to OEMs that would preload the OS onto computers. Many people consider these releases to be superior to the retail versions.

Windows NT 4.0

File:Nt4server.png
Windows NT 4.0 Server Desktop

Originally developed as a part of its effort to introduce Windows NT to the workstation market, Microsoft released Windows NT 4.0, which featured the new Windows 95 interface on top of the Windows NT kernel (a patch was available for developers to make NT 3.51 use the new UI, but it was quite buggy; the new UI was first developed on NT but Windows 95 was released before NT 4.0).

Windows NT 4.0 came in four flavors:

  • Windows NT 4.0 Workstation
  • Windows NT 4.0 Server
  • Windows NT 4.0 Server, Enterprise Edition (includes support for 8-way SMP and clustering)
  • Windows NT 4.0 Terminal Server

Windows 98

File:Word 6.0 on Win98SE.png
Windows 98SE with the "Jungle" theme, and a couple of the programs from Microsoft Office 4.3 running.

On June 25, 1998, Microsoft released Windows 98, which was widely regarded as 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. It also controversially integrated the Internet Explorer browser into the Windows GUI and Windows Explorer file manager, prompting the opening of the United States v. Microsoft case, dealing with the question whether Microsoft was abusing its hold on the IBM PC operating system market to push its products in other areas.

In 1999, Microsoft released Windows 98 Second Edition, an interim release whose most notable feature was the addition of Internet Connection Sharing (a brand name for a form of network address translation), which allowed several machines on a LAN to share a single internet connection. Hardware support through device drivers was increased. Many minor issues were found and fixed which make it, according to many, the most stable version of Windows on the Win9x kernel.

Windows 2000

File:Windows2000.png
Windows 2000 Desktop

Microsoft released Windows 2000, known earlier as NT 5.0, in February 2000. It was successfully deployed both on the server and the workstation markets. Windows 2000, claimed by some to be the best Windows version to date, borrowed a number of features, in particular the user interface, from Windows 98. This made it as user-friendly as previous versions while making it much more stable, preparing the ground for the next version, codenamed 'Odyssey'. This version was cancelled, and work moved to Windows XP. A home consumer edition of Windows 2000 was also attempted (codenamed 'Neptune'), but later was scrapped and Windows Me (which was based on the less stable kernel that Windows 95 and 98 were based on) took its shelf place.

Windows 2000 came in four flavors:

  • Windows 2000 Professional
  • Windows 2000 Server
  • Windows 2000 Advanced Server
  • Windows 2000 Datacenter Server

Windows Millennium Edition (Me)

In 2000, Microsoft introduced Windows Me (Millennium Edition), which upgraded Windows 98 with enhanced multimedia and Internet features. It also introduced the first version of System Restore, which allowed users to revert their system state to a previous good point in the case of system failure. System Restore was a notable feature that made its way into Windows XP.

Windows Me was conceived as a quick one-year project that served as a stopgap release between Windows 98 and the upcoming Windows XP due to the cancellation of the home consumer edition of Windows 2000. As a result, Windows Me was not acknowledged as a unique OS along the lines of 95 or 98. Windows Me was also widely criticised for serious stability issues and for lacking real mode DOS support.

Windows XP: Merging the product lines

File:Windows xp desktop.PNG
A typical Windows XP desktop.

In 2001, Microsoft introduced Windows XP. The merging of the Windows NT/2000 and Windows 3.1/95/98/ME lines was achieved with Windows XP (codenamed "Whistler"; "Odyssey" was the codename for NT's Successor, which was cancelled, and merged with the Windows 9x successor at the time, "Neptune", and they became "Whistler"). Windows XP uses the Windows NT kernel; however, it finally marks the entrance of the Windows NT core to the consumer market, to replace the aging 16-bit branch.

Windows XP is available in a number of versions:

  • "Windows XP Home Edition", for home desktops and laptops (notebooks)
  • "Windows XP Home Edition N", as above, but without a default installation of Windows Media Player, as mandated by a European Union ruling
  • "Windows XP Professional Edition", for business and power users
  • "Windows XP Professional Edition N", as above, but without a default installation of Windows Media Player, as mandated by a European Union ruling
  • Windows XP Media Center Edition (MCE), released in November 2002 for desktops and notebooks with an emphasis on audio, video, and PVR capability
    • Windows XP Media Center Edition 2003
    • Windows XP Media Center Edition 2004
    • Windows XP Media Center Edition 2005, released on October 12th, 2004.
  • "Windows XP Tablet PC Edition", for tablet PCs (notebooks with touch screens)
  • Windows XP Embedded, for embedded systems
  • "Windows XP Starter Edition", for new computer users in developing countries
  • Windows XP Professional x64 Edition, released on April 25, 2005 for home and workstation systems utilizing 64-bit processors based on the x86 instruction set (AMD calls this AMD64, Intel calls it Intel EM64T)
  • Windows XP 64-bit Edition, is a version for Intel's Itanium line of processors; maintains 32-bit compatibility solely through a software emulator. It is roughly analogous to Windows XP Professional in features. It was discontinued in September 2005 when the last vendor of Itanium workstations stopped shipping Itanium systems marketed as 'Workstations'.

Windows Server 2003

On April 24th, 2003 Microsoft launched Windows Server 2003.

Windows Server 2003 is available in seven editions:

  • Small Business Server
  • Web Edition
  • Standard Edition
  • Enterprise Edition (32 and 64-bit)
  • Datacenter Edition
  • Compute Cluster Edition
  • Storage Server

Looking to the Future: Vista, Longhorn & Blackcomb

The next client version of Windows, Windows Vista, is expected in fall 2006. According to Microsoft, this will bring enhanced security from a new restricted user mode, finally replacing the "administrator-by-default" philosophy in their former operating systems, as well as support for Windows OneCare. A more abstract file system will provide instant searches and a greater use of metadata. Vista will also feature advanced graphics features similar to those found in Apple's Mac OS X, a revised, task-based user interface called "Aero", and a new and more secure version of Internet Explorer based on the upcoming version 7.

The next version of Windows Server, currently scheduled for release in 2007, is known only by the codename "Longhorn Server", but given Microsoft's announcement that its server products will maintain the year based naming scheme, it is likely to be released as "Windows Server 2007". The next major release after Longhorn is codenamed "Blackcomb".

XP 64-bit

The AMD Athlon 64 was the first CPU to successfully bring 64-bit computing to the consumer desktop while providing compatibility with the IA32 architecture. A 64-bit version of Windows XP for the Intel Itanium (IA64 architecture) had already been made available. Microsoft released on April 25, 2005 a new 64-bit version of Windows XP for the AMD-64 architecture (which includes AMD Athlon 64 and Opteron processors, and Intel Pentium 4 and Xeon processors with support for the EM64T extensions).

History of the Microsoft Operating Systems

MS-DOS product progression:

  • MS-DOS and PC-DOS
  • Windows 1.0
  • Windows 2.0
  • Windows 2.1 (aka Windows/286 and Windows/386)
  • Windows 3.0, Windows 3.1, Windows 3.11 (and Windows for Workgroups)
  • Windows 95 (Windows 4.0)
  • Windows 98 (Windows 4.1), Windows 98 Second Edition
  • Windows Millennium Edition (Windows 4.9)

OS/2 product progression:

  • 16-bit Versions: OS/2 1.0 (CLI only), 1.1, 1.2, 1.3
  • 32-bit Versions: OS/2 2.0, 2.1, 2.11, 2.11 SMP, Warp 3, Warp 4
  • Until 32 bit Versions : OS/2 Warp 5

Current NT-Line product progression:

  • Windows NT 3.1, 3.5, 3.51
  • Windows NT 4.0
  • Windows 2000 (Windows NT 5.0)
  • Windows XP (Windows NT 5.1)
  • Windows Server 2003 (Windows NT 5.2)

Future NT-Line product progression:

  • Windows Vista (Windows NT 6.0)
  • Windows Blackcomb (Windows NT 6.1/7.0) (current code name of not yet released follow-on)
  • Windows Longhorn Server (current code name of not yet released follow-on)

Timeline

Date 16-bits 16/32-bits 32-bits 64-bits
align="right" Template:Highlight1|November, 1985 Windows 1.0
align="right" Template:Highlight1|1987 Windows 2.0
align="right" Template:Highlight1|May, 1990 Windows 3.0
align="right" Template:Highlight1|1992 Windows 3.1
align="right" Template:Highlight1|1992 Windows for Workgroups 3.1
align="right" Template:Highlight1|July, 1993 Windows NT 3.1
align="right" Template:Highlight1|December, 1993 Windows for Workgroups 3.11
align="right" Template:Highlight1|September, 1994 Windows NT 3.5
align="right" Template:Highlight1|May, 1995 Windows NT 3.51
align="right" Template:Highlight1|August 24, 1995 Windows 95
align="right" Template:Highlight1|July, 1996 Windows NT 4.0
align="right" Template:Highlight1|June 25, 1998 Windows 98
align="right" Template:Highlight1|February 17, 2000 Windows 2000
align="right" Template:Highlight1|September 14, 2000 Windows Me
align="right" Template:Highlight1|October 25, 2001 Windows XP
align="right" Template:Highlight1|April 25, 2003 Windows Server 2003 Windows Server 2003
align="right" Template:Highlight1|2003 Windows XP Media Center Edition 2003
align="right" Template:Highlight1|October 12, 2004 Windows XP Media Center Edition 2005
align="right" Template:Highlight1|April 25, 2005 Windows XP Professional x64 Edition
align="right" Template:Highlight1|Est. October, 2006 Windows Vista Windows Vista
align="right" Template:Highlight1|2007 Windows Server "Longhorn" Windows Server "Longhorn"
align="right" Template:Highlight1|2011 Windows Blackcomb Windows Blackcomb

File:Windowsfamily.gif

Other

See also

External links

Template:History of Windows

es:Historia de Windows it:Storia di Microsoft Windows nl:Geschiedenis van Windows zh:Microsoft Windows的历史