For
over two years now, I've charted the development of Windows 2000 from its
roots as a decent upgrade to Windows NT 4.0 to its current status as •ber
operating system. Given the massive development time of Windows 2000,
it's probably useful to take a look at all of the changes that have
occurred over this time and understand how this OS came to be what it is.
Planning
sessions for Windows NT 5.0 (as it was known at the time) began right
after the release of Windows NT 4.0 in the summer of 1996. At the time,
Microsoft had vague ideas about how it was going to handle future updates
to the Windows NT, which was previously augmented by a series of Services
Packs (SPs), which fixed bugs and added new functionality. At the time of
NT 4.0's release, Windows NT 3.51 had had four SPs, with a fifth
forthcoming. Service Packs were made available via floppy and CD-ROM
installs, and from Microsoft's support BBS and FTP sites. For Windows NT
4.0, Microsoft eventually settled on a system where new features were
added in Option Packs (though only one was ever released for NT 4; it
included Internet Information Server 4.0 [IIS4], updated data components,
Transaction Server 2.0, and some other features) while Service Packs were
destined to include only bug fixes. Microsoft never really lived up to
this promise in NT 4.0, of course, but the rapid success of NT 4.0 caused
them to release a large number of SPs and individual hot-fixes. A seventh
SP release is due in early 2000.
Something
humorous to consider: The first projected release date of NT 5.0 was late
1997. Seriously. But before that could happen, Windows NT 5.0 would need
to correct some of the glaring problems with Windows NT 4.0: It would
have to include a "true" directory service that did away with
the limitations of Microsoft's proprietary domain model. It would have to
support Plug and Play and work with all of the latest hardware. It would
require fewer reboots and would be easier to use, though NT was already
much, much easier to use than its nearest competitors, Novell Netware and
the various flavors of UNIX. It needed to support FAT32, the file system
that was introduced in Windows 95 OSR-2. And NT 5.0 would run on Alpha
and Intel platforms, though Alpha support was eventually dropped in late
1999, after two years of work. A 64-bit version for Alpha was also in
development, beginning in late 1997.
One
thing to keep in mind, of course, is that the world of 1996 was very
different than that of today: Linux was a simple grass roots OS that only
ran on select Intel hardware and had a very small user base, the Internet
was just starting to take off (NT 4.0 shipped with the lame IE 2.0, while
IE 3.0 was released only a month later, in August 1996), and Microsoft's
networking solutions still revolved around a non-routable technology
called NetBEUI, not TCP/IP, the Internet standard. Over the course of
time, Microsoft would address these issues and more, and adapt what would
become Windows 2000 to face the changing world.
So
let's go back through the mists of time and review the long and seemingly
never-ending story that is the development of Windows 2000...
1997:
Windows NT 5.0 Beta 1
In early 1997, Microsoft began preparing a beta version of its Directory
Services Toolkit for Windows NT 4.0, which previewed Active Directory for
early adopters and developers. It also informed partners that NT 5.0
would not ship until early 1998 and that the first widespread beta
release, Windows NT 5.0 Beta 1, would not be ready until Summer 1997 at
the earliest. At Germany's CeBIT tradeshow in March 1997, Microsoft
demonstrated Windows NT 5.0, showing off its support for Plug and Play,
task-oriented system customization, "EasyNet," a new network
configuration utility, Wolfpack clustering, and other new features. The
theme at the time was "removing the barriers": Microsoft wanted
all users of Windows 9x and NT to be able to easily upgrade to the
ambitious new NT 5.0 when it shipped.
"NT
5.0 will let any user have no reason not to run it, if they have enough
memory," said Moshe Dunie, then vice president of Microsoft's
personal and business systems group. Dunie would later take the fall as
NT 5.0's development schedule fell further and further behind.
Microsoft
also revealed that the Active Directory in Windows 2000 would be based on
technology taken from its Exchange Server product, whose SQL-like message
store was considered an obvious choice. Brian Valentine was running the
show for the Exchange team at the time; Valentine would later take
control of Windows 2000 when Dunie was forced out.
At
the May 1997 WinHEC show, Bill Gates announced that Windows NT 5.0 would
ship "in 1998" and that the company would merge its 9x and NT
lines after that release. These plans, of course, were doomed. NetPCs and
Zero Administration for Windows (ZAW) were all the rage at the show. In
April, Moshie Dunie explained that Windows NT would be split into three
"versions" after the release of NT 5.0 in 1998: a 64-bit
version for Intel's Merced that would work on servers, a 32-bit version
for servers and workstations, and a consumer version that would have
"friendly security because you don't want a child to access and wipe
out your files." All three versions would run on the same kernel,
Dunie said, and the 64-bit version would support hierarchical storage,
volume management, and disaster recovery.
At
an ill-conceived Scalability Day in May 1997, Microsoft announced that NT
5.0 would ship in three editions: Workstation, Server, and Enterprise
Edition. The Enterprise Edition was to be bundled with the Wolfpack
clustering solution and messaging middleware code-named
"Falcon."
Multi-monitor support was added to NT 5.0.
At
TechEd in May 1997, Microsoft revealed what many people had feared: it
wasn't sure that it was going to be able to migrate users from Windows 9x
to Windows NT 5.0. The company had (and continues to have) no plans to
upgrade Windows 9x to support NT's NTFS file system and it originally was
planning no 9x upgrade plan to NT 5.0. "What we won't be providing
initially is, on first ship, the upgrade from Windows [9x to NT 5.0
Workstation]," said Microsoft program manager Bernard Wong, who
presented seminars on Windows 98 (then known as "Memphis") and
NT 5.0 Workstation at TechEd. "The reason is because we expect there
won't be such an incredible amount of time lag between those products, so
that somebody who has just finished upgrading to Memphis is not going to
be upgrading to Windows NT Workstation."
Needless to say, this never happened because of the delays getting
NT 5.0 out the door. Instead, Microsoft was forced to work up a 9x to NT
5.0/2000 upgrade plan, further delaying the product.
In
May 1997, Microsoft announced a deal with Citrix that would make NT 5.0 a
true multi-user operating system like UNIX. Using technology from Citrix,
Microsoft eventually developed Terminal Services, which is now included
in Windows 2000 Server. But before that work was complete, the company
released Windows NT 4.0 Terminal Server Edition in 1998
("Hydra"). Other developments of the time never saw the light
of day: Microsoft was working on a set of broadcast architecture
technologies that eventually were included in Windows 98 as WebTV for
Windows. Though originally planned for inclusion in Windows 2000, this
feature was dropped in mid-1998 when it became clear that the
ever-ambitious OS was already biting off more than it could chew.
At
Spring Comdex 97 in Atlanta, I was able to attend some advanced NT 5.0
demos. Microsoft was adding support for Plug and Play, USB devices, DVD,
Enhanced TV, and other features. Microsoft's David Ursino and Bernard
Wong told me that the first NT 5.0 beta would ship in
"August/September" while the final release was expected in
early 1998. This seemed reasonable at the time: NT 4.0 was in beta for
only five months before it shipped. At his Comdex keynote, Bill Gates
announced that Windows NT would receive half of the company's 1998
R&D budget, or $1 billion. Alpha versions of NT 5.0 were shipped to
key developers the week of Comdex. Gates confirmed that NT 5.0 would ship
in early 1998 and that the product would include key Internet features
and Kerebos public key encryption technology.
At
PC Expo in late June, however, Microsoft's release date for Windows NT
5.0 had slipped from early 1998 to "about a year" (mid-1998).
The delays would only continue.
On
July 1, 1997, Microsoft released the first beta of Windows 98, then known
as "Memphis." Though the product was eventually delayed about
eight months so that Internet Explorer could be integrated into the OS,
Windows 98 still managed to ship in June 1998, a full year and a half
before Windows 2000. And Memphis Beta 1 shipped two months before
Microsoft was able to get a beta of Windows 2000 (NT 5.0) into the hands
of testers. It's an interesting comparison.
The
company also announced in July that it would ship Windows NT 5.0 Beta 1
in September so that attendees at its Professional Developer's Conference
(PDC) could get their hands on the new code. It was an announcement the
company regretted: The NT team made the announcement to goad them into
shipping something, as the product was already far behind schedule by
then. But as the September date neared, NT 5.0 wasn't even close to ready
and the eventual Beta 1 release that was handed out was a disjointed mess
that would never have otherwise been declared Beta 1. It was an
embarrassment of epic proportions. New features such as Intellimirror and
Active Directory were broken or nowhere to be seen.
In
August, technical beta testers were informed that the Windows NT 5.0 beta
was beginning when NDAs were faxed and mailed.
Also
in September, I discovered the code-name for the next version of Windows,
"Millennium." At the time, Millennium was to have been the next
consumer Windows, or Windows NT 6.0. This never happened, of course, and
Millennium eventually became the code-name of the Consumer Windows that
followed Windows 98 Second Edition. NT 6.0 was originally expected in
2000 or 2001. The company also announced that it was pushing back the
release of Windows 98 from November 1997 to Q1 1998. Publicly, the
company said it was doing this to add a Windows 3.1 upgrade option, but
the truth was far more sinister: It was pushing back the release of
Windows 98 to harm Netscape by integrating IE 4.0 more permanently into
the Windows operating system. The facts behind this delay were revealed
in mid-1999 during the Microsoft antitrust trial. The company also said
that the first beta for Windows NT 5.0 would be "far from build
quality," which was a huge understatement.
Microsoft
also unveiled its plans for "Windows DNA" at the PDC that year.
No one quite understood what it meant, but it relied on Windows NT 5.0,
"COM3" (which became COM+), and "Vegas" (Visual
Studio 98, which was renamed Visual Studio 6.0). Windows NT 5.0's
encrypting file system was also revealed, along with the Security
Configuration Editor. Windows NT 5.0 would also include DirectX 98, which
was the original name for DirectX 6.0 (the final version of Windows 2000
actually includes DirectX 7.0). Microsoft announced that the second beta
of Windows NT 5.0 would ship in January or February 1998; it actually
shipped in late August 1998.
Windows
NT 5.0 Beta 1 (build 1671, NT 4.0 was build 1381) was released to
manufacturing (RTM) on Saturday, September 20, 1997. VP Jim Allchin told
attendees at the PDC that they would have the code on CD by the end of
the week. "Windows NT 5.0 is going to be a massive release,"
Allchin said. "And Microsoft is going to bet the company on
it." It was a theme that would repeat over the years, that Microsoft
was betting the company on NT 5.0. The plan at the time was simple:
Windows NT 5.0 was a superset of Windows 98, including and expanding on
every feature that the consumer OS offered. This meant that NT 5.0 would
include Digital TV integration (eventually dubbed WebTV for Windows),
Internet Explorer 4.0, DirectX 5.0, and more. Of course, there were
distinctions between the two. Allchin noted that "NT 5 will be the
ultimate business OS...an obvious standard for businesses," while
Windows 98 is for consumers. In the future, this position would be
altered tremendously: NT 5.0/2000 become solely a business OS by the time
Beta 2 shipped in 1998.
New
features of Windows NT 5.0 unveiled at the time of the PDC included NTFS
5.0, Distributed File System (Dfs), file encryption, FAT32 compatibility,
and "no reboot" networking. If a DHCP server weren't found,
Windows NT 5.0 would simply assign its own IP address and keep working
without throwing up an error message. Active Directory was designed to be
NT's first true directory service, while IntelliMirror would enable easy
support for roaming users and data/code replication. And NT 5.0 would
include a common management shell called the MMC (Microsoft Management
Console) that would house all future management tools. Allchin noted that
Windows NT 6.0 would be the first fully 64-bit version of NT on both
Intel and Alpha hardware. The goal for Windows NT 6.0 was
"simplicity," though this goal was later subsumed for Windows
2000/NT 5.0, leading to further delays. NT 6 would support distributed
computing, be more intuitive, information rich, maintenance free, and was
to offer seamless communication features ("No networking!"
Allchin declared) along with a speech interface. Windows Installer was
also previewed at the PDC in 1997.
On
the last day of the PDC, Microsoft CEO Bill Gates unveiled his vision for
the future of Windows. According to Gates, that future was all NT, with
natural language, speech, and visual recognition features thrown in for
good measure.
"Bet
the future on Windows NT," Gates said. "We're driving the
business market to use that product as rapidly as possible, and it'll be
a variation using the same technology that we use to drive NT into the
consumer market. New personal computers will come with the refinement of
NT 5.0 the same way they come with Windows 95 today."
Gates
said that Windows 98, which had yet to ship at the time, would be phased
out in a couple of year for Windows NT, which would be available in a
consumer edition in Windows NT 6.0, which he referred to as "Windows
NT Personal Edition."
Microsoft
released Exchange Server 5.5 at Fall Comdex that year, promising to
deliver the next release, "Platinum," in 1998. The Platinum
message store formed the basis of Active Directory. System requirements
for Windows NT 5.0 were released in November 1997 as well: 200 MHz
Pentium Pro processor or better with 64 MB of RAM.
At
Fall Comdex 97, Microsoft dropped a bomb: Windows NT 5.0 would not ship
until late 1998, not mid-1998 as promised. Meanwhile, Beta 2 was also
delayed from December 15th (an interesting date; Windows 2000 eventually
RTM'd on December 15, 1999) to "the first half of 1998." Later
that month, WinInfo was the first online publication to note that Windows
NT 5.0 might actually be delayed until 1999.
Cyrix
announced a $500 computer that was to run Windows NT 5.0. The project was
created with cooperation from Microsoft, though it obviously never saw
the light of day.
In
late November, Microsoft confirmed that it would not support the older
APM power management specification in Windows NT 5.0, but would only
support the newer ACPI spec instead. This decision was later repealed,
and then reinstated for Server Edition.
In
December, Microsoft released a beta MSN client for Windows NT, which was
supposed to have been included in Windows NT 5.0. This was, however, the
last external release of an MSN client for NT to this day. Microsoft now
promises to have MSN working on Windows 2000 sometime in 2000. Steve
Ballmer stated the obvious in December when he noted that IE 4.0 was
rushed to market. He said Microsoft wouldn't do the same thing to Windows
NT 5.0: Without the ZAW and IntelliMirror stuff, I don't think we're
doing the seminal step forward that people expect out of NT 5,"
Ballmer said. "It's absolutely essential we get that product right.
If it's a few months later, I'd hate it--I'd love to have it now--but
we're better off getting it right."
1998:
NT 5.0 Beta 2, "Windows 2000"
In
January 1998, Microsoft's Jonathan Perera said that Windows NT 5.0 Beta 2
would ship in June 1998, with the final release delivered in time for the
1998 PDC in September. A beta of the 64-bit NT 6.0 was promised by the
end of 1998; this never happened of course (in fact, it hasn't shipped as
of this writing). "I don't think there will be big differences in the
source code [between NT 5.0 and 64-bit NT]," said Ed Muth, a group
product manager in Microsoft's personal and business systems division.
"There will be the same source deck, with the choice of generating a
32-bit or 64-bit executable. This will be a recompilation of the NT
operating system as a 64-bit application. It will include a flat address
space and 64-bit pointers, APIs, and system services and will coexist for
many years with a 32-bit version of NT." By January 1998, NT 5.0 was
already "wallowing in delays," as I wrote in WinInfo, with key
features such as IntelliMirror still not working correctly. "The
current plan is to have the IntelliMirror functionality in Beta 2,"
said Microsoft's Jeff Price. Beta 2 was then expected in mid-1998.
In
an attempt to save face, Microsoft announced in February that it would
ship Beta 2 in April. Windows NT 5.0 Beta 2 was to be the first look at
the final feature-set of NT 5.0: While Beta 2 itself wouldn't be feature
complete, user feedback would determine how the final product would look.
Expected ship date in February was first quarter 1999, though Microsoft's
Phil Holden refused to confirm: "That's just rumor and speculation.
We haven't set the launch dates internally yet. I wish we had; then I
could finalize some of my plans," he said. Holden was part of the
team at Microsoft that planned the Windows 98 launch event. "We will
not set a final ship date for NT 5.0 until we get solid feedback from
beta testers. Unfortunately, all