OS/2 eZine - http://www.os2ezine.com
October 16, 2004
Andrew Belov is a programmer from Russia. Lured into OS/2 by Microsoft developer tools of the 16-bit age, he attempted many times to find his way out - only to discover another treasure in OS/2.
If you have a comment about the content of this article, please feel free to vent in the OS/2 e-Zine discussion forums.

There is also a Printer Friendly version of this page.

Previous Article
Next Article


Warp 3 History

Little software releases on the PC can be remembered about on their 10th anniversary, yet less could be found in production use as on the day of their introduction. Before we would be able to see how does Windows NT 4.0 perform on its 10th birthday, we can take an insight into the history of another gem of computer technology, IBM's OS/2 Warp 3.

Late 1993: the origins

The history of Warp 3 starts in early 1990s inside Personal Software Products (PSP), IBM's dedicated software unit in charge of OS/2. This team has successfully launched OS/2 v 2.1 in May 1993 (thus making it four months ahead of competitor's Windows NT v 3.1) and was looking for all ways to expand the reach of OS/2, still an expensive and resource-hungry product.

The first milestone on the way to new version the release of OS/2 v 2.1 for Windows, codename Ferengi. Owing to a genius of Darren Miclette - the person who figured out a concept of loadable patches to Windows 3.1 code - Ferengi made OS/2 a natural upgrade path for those already possessing a Windows 3.1 license. Darren's sudden death in a relatively young age in 1994 was commemorated in the dedication of Warp 3 credits screen.

After Ferengi, IBM proceeded with a refresh of the mainstream code (much like a today's Convenience Pack) to be known as OS/2 v 2.11. It was essentially OS/2 2.1 with some cosmetic differences, like the new teal/blue/violet palette that was carried forward into ...

Early 1994: FourMeg

Now there was a definite plan to have a system targeted for the mobile and low-end PCs of the day, something like a 486DX-33, with only four megabytes of RAM. In general, the CPUs became faster but memory was still a problem, especially for notebook PCs. The reason behind this step-down was, of course, the necessity to stem Microsoft's competition in the face of "Chicago" (Windows 95).1

A lot of ideas went into optimizing "FourMeg", like a notion of "constrained system" (special memory manager setup) for PCs with only 4-6M of RAM, a simple compression algorithm for SWAPPER.DAT and an improvement in LX executable compression, the disputable concept of "combined DLLs" (PMMERGE and DOSCALL1) and so on.

In hardware area, RESOURCE.SYS came to standardize the bus/IRQ/memory reservations and keep track of their usage. Delivering on its promise to expand laptop support, IBM has also included PCMCIA services. With all these activities happening during the first half of 1994, the "FourMeg" effort became known as ...

Mid-1994: Personal OS/2

Something has to be said about the target audience of Warp. For years, the OS/2 community was mostly represented by computer professionals with a solid PC and mainframe background, and many of them have actually helped to sculpt the uninhabitable OS/2 v 2.x into a usable production environment. Now IBM went for the novice user - and this required some touches on virtually all parts of OS/2.

First, the user interface. Inside WPS, new folder icons were presented, the printer was made more distinguishable from the shredder, "Start Here" was replaced by a more thorough "Tutorial", greater CUA correctness was ensured, while the Launchpad made a nice complement primarily for mouse-addicted users. Everything was made to look simple and consistent.

A product logo seemed better than a splash screen, and a metafile-like logo (the OS/2 bubbles) of OS/2 v 2.0 was rejected for a compressed bitmap image. A cleanup campaign swept over driver code to eliminate extra screen output from the standard drivers (sadly, no such incentive took place for the talkative MPTS and Peer). This is also when the Alt+Fx "magic keys" were introduced - before that, repairing or switching one's OS/2 configurations was quite tricky.

Finally, Neko the Cat, PM Paint, Diary and a dozen of applets previously populating the OS/2 v 2.x "Productivity" folder were pointed at exit door. This rip was rather brutal - while a 14-disk BonusPak came to partially fill the vacuum, many goodies of OS/2 v 2.x were dead and gone.

The OS/2 v 2.x installers were rightfully criticised as ill-suited, and with 3.0, SYSINST2.EXE and INSTALL.EXE became more straightforward and fault-tolerant. Still they were not as easy and interactive as the Windows 3.1 installer. The media underwent some tacitly accepted changes. 5.25" FDDs were discontinued in favor of expanding the CD-ROM delivery (where could you see the exclusive 15-second edition of The Macaw Parrots, except on a CD?). 3.5" floppies were switched to a non-standard XDF format before becoming limited to 3 startup floppies in the next version.

The later half of 1994 saw a substantial rise of Internet, especially WWW. And with IBM Global Network searching for promotion opportunities, the concepts of Internet Access Kit (IAK, also known as Internet Connection for OS/2) were laid out rather quickly before the October release. The Kit was barely enough to sign on using SLIP with an IBM's evaluation account (where available), then download a decent PPP update and IBM Web Explorer, to come 1Q 1995. This Internet capability of OS/2 was particularly promoted by a TV advertisement known as "The Nuns" (eventually reaching many parts of the globe). Despite this hurry, the IAK proved to be a rather stable and mature core - it remained adequate for dialup users for years to come.

Not Quite 3.0

There was no initial plan to call this a 3.0 release. Just version 2.20 with some productivity enhancements. Yes, there was a different 3.0 in the works. Before 1994 IBM has caught the attention of the public with their imposing vision of "Workplace OS" - a portable, innovative platform that could integrate OS/2, Win32, POSIX and DOS personalities seamlessly. This miracle, for as long as its specifications were unpublished, was described as a solution to all known shortcomings of OS/2 design. It was an excuse for the still-16-bit device driver model, absence of multiuser environment and tons of legacy code in OS/2 v 2.0. It was to become the Real OS/2 3.0. Microsoft had another miracle, Cairo, with similarly unclear goals (like the "object-oriented file system").

As we have learned, it was nothing but a sort of vaporware wars. The name Cairo was retained for NT 4.0, not a revolutionary change from Daytona (NT 3.5). The bubble of WPOS began to disintegrate by 1995, and codenames like "Falcon" and "Hawk" came instead to herald a new line of OS/2 products. They did had little of fantastic features of WPOS, providing only OS/2 and DOS on PowerPC hardware. But after all, there was a totally new kernel (based on a Mach microkernel) with undoubtable portability.

So, IBM became involved with "FourMeg" for the short term, while having to admit in their memos that its kernel was "technically aged" with respect to newer designs, and that OS/2 for PowerPC (implementing their workplace strategy) was a vision of the future.

But where did the PowerPC version end up? After failing its deadlines over and over, and losing its plumage of fabulous Win32 and POSIX subsystems, it finally appeared as an "IBM limited availability release" in January 1996, being a rough equivalent of Warp 3 with an update scheduled to transform it into Warp Connect. By then IBM was about to dump its entire strategy of personal PowerPC (which was nothing but terrible prices), and the pretext to abandon the product came after withdrawing its hardware platform, Power Series 820/830/850, on March 20th. Already cut short of its support personnel, the system got lost eternally in IBM's archives.

1994-1995: the Launch and the first steps

Back to the 1994 and i386 OS/2. The first launch event of Warp 3 (at Richard Rogers Theater, NYC, on October 11th 1994) was widely acclaimed - a Warpstock number zero, it opened a way for a series of shows first around the US, then around the globe. The animated "OS/2 Point-of-Sale demo", released shortly thereafter, advertised the new brand and emphasized the key theme of its day - "Do Not Wait" (well, the exploding Windows hourglass might not be as spectacular on 640x480 than on a stage!)

The campaign was really a bit hurried. What has entered the market was the most limited version, Warp 3 for Windows (better known as "half-pack", or "Red-Spine package" - for its retail box). A full-pack version, OS/2 with Win-OS/2 ("Blue Spine") was delayed until February 1995, and OS/2 Warp Connect even later. Microsoft's response was obvious: pro-Microsoft press condemned the "immature" release while Windows 95 was delayed for some more time.

But IBM was not idle - a code tree known as R207 accumulated dozens of fixes - to address the roughnesses of the product. Fixpak (a new name for the old idea) XR_W003 was ready by Christmas 1994, presenting a few corrections "for immediate release". By spring 1995 the updated media was complete, and PSP proceeded rapidly with national language releases for spreading the Warp worldwide (ironically, the hardest point about NLS was to explain the name "Warp" to foreign consumers). Separate teams were in charge of national versions, resulting in quite disparate NLVs. Some lacked the localization of certain parts, and codepages were hardly interchangeable at first.

Mid-1995: Warp acceptance and the shareware boom

In its first year on the market, Warp 3 was topping the software sales charts in U.S. and Europe (wreaking panic on pro-Microsoft press who sought frantically to conceal this fact). While the large-scale commercial vendors were slower to respond to this boast, 1995 could be definitely described as the year of shareware for OS/2. If there is any characteristic detail that makes the decade-old OS/2 software different from what we use today, it is the abundance of hot shareware - nearly everything, down to small VX-REXX hacks to edit SYSLEVEL.OS2, flooded the evolving market with with nag screens and registration forms. Nowadays there is not only a smaller OS/2 community but also a strong open-source movement which would hinder the commercial potential of '95 best-sellers.

Although the mid-1990s software eagerly exploited the rapid growth of OS/2 user base, its technical side was often mediocre. With the advent of VisualAge, Hockware VP-REXX, Watcom VX-REXX, GUIdeLines (put aside Borland), every program pretended to be GUI-based, but the GUI was designed with only an initial experience in the field. Even the "core" WPS extensions sometimes lacked the "feel" of OS/2, the dialogs had no accelerators and mazy tab-orders. Most of this software disappeared as soon as mass interest in OS/2 began to decline.

Nevertheless, the Warp wave has brought a new breed of programmers - those differed with the preceding generation in that they found a relatively large choice of tools at their disposal. There was a younger, more enthusiastic community who could do it without a daily dose of "Workplace" tales to keep their devotion to programming. Many of them now constitute the stronghold of OS/2 native development.

Fall 1995: the Reiteration

IBM was merely "reiterating" their strategy, as they used to say. Indeed, nothing really changed in the first weeks after IBM has made some alleged concessions to Microsoft in August 1995. The NLVs continued to be launched timely (Russian came on August 30th 1995) and OEM preloads proceeded on schedule. But the real decision was to "deemphasize" OS/2, and any subsequent changes were made with this plan in mind. IBM's preloads collapsed first - the IBM PC Company has swiftly reverted to Windows-only preloads by the next year, so did many of the OEMs (not without Microsoft's involvement). The press readily forged tons of obituary articles on OS/2.

The reasons for decision are subtle, but in general it can be said that IBM became weary. As evidenced by the materials of anti-Microsoft lawsuit released in April 2004, PSP was stuck in battles of attrition for the corporate desktop by 1995. They "gained" some 5000 seats from legacy platforms only to "lose" another 5000 OS/2 seats to NT next week. This pattern saw no signs of improvement. The WPOS withered and lagged behind the schedule, and its misfocused development resources consumed huge funds. Growing profits from the personal OS/2 could hardly tip the scales. Microsoft finally approached IBM with their "cut-throat" tactics when it was the time to negotiate about Windows 95 preloads, and IBM soon made its first blow against the SOHO market.

Nevertheless, Warp 3 was able to secure its long-term life in the corporate environment - the fall of 1995 was especially a lucky season. IBM's press releases began to drift away from the "personal" strategy and quoted the "commitment to connected consumer". In the meantime the "consumer" will quietly morph into "customer", meaning that IBM became less interested in those who consume the product and flood them with support requests. And the word "commitment" seems to have a very distinct meaning within IBM.

Early 1996: inside the IBM's workshop

Even though the abandonment of WPOS was devastating, the PSP's code storages were replete with features planned for "next version". The problem was, no one knew for certain what further plans could look like. Merlin was not a real priority before 1996. To quote Tony Ingenoso (an ex-IBMer known for his substantial contribution to PC-DOS), "Merlin was playing a distinct second fiddle in Boca". So, in the short-term all the work was concentrated in delivering products based on Warp 3 core - Warp Server and its SMP brother - with enhancements that had ripened by the time.

The first changes in Warp 3 were addressing certain long-standing problems. In a half of year between XR_W009 and XR_W018 the core was changed substantially. Security services (SES) were introduced. PM_ASYNC_FOCUS_CHANGE, the promised "solution to Single Input Queue problem", helped to slightly relieve the PM hangs under misbehaving applications. Side-effects ranged from pleasant (new interfaces, e.g. the "kill -9" DevHelp, thanks to SES) to unbearable (XR_W017 was particularly morbid - it integrated all previosly untested changes). Furthermore, some rudimentary facilities appeared that were never exploited, sometimes wasting the resident kernel space. That's when we have to say farewell to FourMeg!

Having published a comprehensive OS/2 Debugging Handbook (which can be called "Kernel Hacking Handbook" for unveiling many undocumented internals of the kernel) and launched a Warp Server release, IBM proceeded at last with some functional enhancements.

Mid-1996: waiting for Merlin

Warp 3 has become a fine testing ground for the new niceties of Merlin, primarily because every single piece could be tried separately (Merlin prereleases seemed a jumble at the first glance). In early 1996, we had a chance to taste the new Java kit recently ported to OS/2, marginally useful before the age of JDK 1.1.x and Netscape, but still better than OpenDoc which ended up as a subject of science fiction talks among the community.

Internally, GRADD (originally a PPC feature) was a bold improvement. Introduced around Fixpak 25, this straight and modular approach to video drivers accounted for Warp's survival on contemporary video hardware for its later years.

The SMP kernel, first appearing in August 1996 for Warp Server SMP, was another remarkable feat (though not related to Merlin - it carried forward some code from OS/2 v 2.12). For a time, Warp was brilliantly outperforming NT on then expensive Pentium Pro servers.

NLS could be the point behind the planned "Peregrine" refresh (with some controversy on its designation as "Warp International" versus "Pan-European Warp"), but no way. Merlin was really close, and by April 1996 the whole job seemed to concentrate on NLS convergence in the US pack. Eventually the English-US Warp 3 will handle more codepages, reducing the importance of NLVs, and strengthening "Technical English skills" among the requirements of OS/2 job offerings.

Unicode was introduced as a means to improve NLS. While none of existing subsystems were going to wholly adopt Unicode, the provision of UCS DLLs with XR_W026 in fall of 1996 aimed for some basic Unicode runtime. Next there came a TrueType font driver (to be released by mid-1997), and kernel-mode Unicode provider (UNICODE.SYS) that is best known in Aurora acting for the UDF filesystem.

1997: the conservative age

In the months that followed the Merlin release, Warp 3 continued to borrow some of recent Merlinisms (to name Open32, CHKDSK32 and Joliet CDFS). XR_W032, released in October 1997, was a major waypoint. It brought in a refreshed GPI, new LIBC (now officially), the first Year 2000 APARs, and interesting PowerPC artifacts (the latter apparently by someone's mistake). Thereafter the API of Warp 3 began to lag behind that of Merlin, same for many important fixes in the system core.

A general decline of IBM's OS/2 empire in 1997 was evident and striking. NLVs died out. The market of Russian OS/2 was abandoned after XRRW032/XRRM005 (but "optional" preloads of some hardware vendors continued into 1998 - there was a resolute demand even in a country so plagued with piracy!) Team OS/2 was permanently cut from IBM's funding and local groups began to dissolve. Finally, IBM announced in November 1997 that the PSP division was to be reorganized - with a primary focus on Java and "Network Computing", hence the new name, NCSD (Network Computing Software Division).

By late 1997 most IT techies used to speak about OS/2 in the past tense (just think how unusual "OS/2 is", not "OS/2 was" sounds these days - this certainly reveals an OS/2er). For a year, there was a distinct ex-OS/2 community among the not so numerous NT users, while the OS/2 life became isolated from mainstream computer media (who now postulated there was no life in OS/2).

For a long time to come, only a negligible difference in the scope of supported hardware existed between Warp 3 and modern versions, but the installation engine of Warp 3 was much simpler and more predictable than multi-phase installers of Merlin and Aurora. So it had become a conservative choice for those who needs only the OS/2 that works rather than a full-color demonstration of VoiceType.

1998-1999: IBM is Out

Nearly a half of individual users of OS/2 might be still running Warp 3 by mid-1998. It was just a question of time whether they upgrade to some newer release or abandon OS/2 altogether. Many were waiting for "Warp 5", a campaign started by John Martin Alfredsson, to yield any results - but the pitiful number of responses (about 1/20th out of IBM's requirement for the minimum number of potential licensees) has made it clear there is no chance for another large-scale "client" release.

Things were looking stable for some time, and the overall usability of Warp 3 was largely increased by selective backports from Merlin. Uptime competitions have become popular, and long-running Warp machines were using their idle cycles to help Team Warped crack the RC5-64 contest at www.distributed.net. Win32-OS/2, an Open32-based precursor to Project Odin, was showing excellent results on Warp 3, particularly with its support for Quake II. The 5-year long Opera/2 adventure also had its roots in Win32-OS/2 of this age.

At IBM, XR_W035 was the next and final major update for Warp 3, improving RAS (now these diagnostics facilities probably make up one quarter of the kernel), REXX and removable media. The last fixpak available to SOHO Warpers, XR_W040 has assured kernel compatibility with Project Odin (though still requiring manual intervention into PM DLLs) and fixed some performance regressions. Then gradually came the end of support. Service continued for Warp Server up to XR_W043 (October 2000) as well as for the whole family in a "fee-based" arrangement, resulting in "restricted" fixes up to XR_R044 (October 2001). Some individual updates continued to appear sporadically on IBM FTPs.

The server was in maintenance mode too, as there was Aurora in sight, and NCSD had to make a sparing use of their run-down development facilities. Most of Aurora's architectural enhancements in one part were implemented exactly to a level exploited by another part (and were largely left undocumented); most of its kernel improvements trace to some "e-business" facility, often a single one.

2000-2004: the Strategic Underlying Platform

This was a new formula for expressing IBM's commitment to OS/2 for another 10 years. At the turn of decade, the remnants of PSP were reorganized again - the remaining OS/2-related activities now associated with an even smaller unit, "e-BOSS" (e-Business Operating Systems Solutions). It seems, however, that a majority of recent contributors to OS/2 worked far outside the USA (if one studies the DDK code carefully enough). The constantly improved drivers, which in contrast to the kernel and PM received more attention, are clearly a result of this international labour division.

Little can be said about Warp 3 community of these years. It was the time of eComStation already. Warp 3 was now retiring to older hardware, and there was a secondary market - many shrinkwrapped boxes of "the world's most popular 32-bit operating system" were sold on Internet auctions.

At the same time, the final years of Warp 3 life cycle were marked a with growing popularity of private TCO (Total Content Offering) branches for enterprise accounts. This pattern is just repeated now, when fee-based contracts on 4.5x sometimes go as far as to provide functional improvements in the areas where nothing was going to be improved officially.

So much for a tenth birthday

While it is carefully agreed that the "end-user" OS/2 is nowadays in a better (or, at least, more certain) state than two or three years ago, it is also the time when OS/2 approaches its design limits. It does not make a worthy difference that newer Aurora kernels are more successful, say, at utilizing the whole 4 gigabytes of RAM (Warp 3 gives up at 1 gig), as little architectural improvements can be achieved further without a hundred-million dollar investment. It is not that impossible that some future distribution of OS/2 lists only a few virtual machine products, rather than real hardware, for selection at its installation screen.

Still, when it comes to long-term dependency of enterprise installations, Warp 3 is certainly a major asset and a part of mission-critical installations. In the end, the prize for "the last OS/2'er" to support these systems might be quite big. And if you are sitting in front of a Warp 3 system today, join our thanks to IBM for creating such a viable platform, and [optionally], try to find any trace of NT 3.5 (who turns 10 at November 9th) in the vicinity to have a reason for extending your greetings to Microsoft.

This article was written in OS/2 Warp 3 with genuine IBM hardware.

Previous Article
Next Article

Copyright (C) 2004. All Rights Reserved.