OS/2 Research Outline

From DisNCord Community Wiki
Jump to navigation Jump to search

This is a set of wiki pages dedicated to researching the rise and fall of OS/2, with the intent on creating a larger record of the 16-bit and early 32-bit era of IBM's ill fated operating system, with stream ideas, research notes, discussion and more.

This is an effort to fundamental answer is to document the reasons as to why despite IBM's best efforts, OS/2 failed in the marketplace in favor of Windows 3.0, an operating system that is technically inferior in almost all regards.

Goals Of This Project

The fundamental goal of this project is to create a pretty definitive guide to the early history of OS/2, including showing how it worked, functioned, and more as a primary source, and should interest remain, the creation of multiple realtime videos and/or documentaries to document one of the more pivotal moments of the late 1980s, and early 1990s.

This wiki page should use citations for all major facts and statements, as they will be cited in any video. It's expected that each top level section will become its own "realtime video" at some point.

Overview of the 16-bit Era of OS/2

Because the level of general knowledge of OS/2 is so low, a basic understanding has to be established about the 16-bit era needs to be established. The closest thing to a canonical document on this era exists at the OS/2 Museum, but setting up usable and working systems with native apps is essential ...

Understanding The Pricing Of Equipment for OS/2

OS/2 runs decently on maxed out equipment, but that's easily going into five figures or more. We need to figure out what was acceptable for a developer system in this era ...

It should be important to research what hardware each version of OS/2 may have run on. For example, CGA cards on the AT were pretty common. Understand how OS/2 behaved on low end hardware vs. Windows of the era.

Another important note is that OS/2 was created as a replacement to Microsoft's Xenix (a licensed port of AT&T). The chronology here should be determined to understand more factors of the OS/2 mess.

Things to research:

  • OS/2-Xenix chronology
  • Typical low, medium, and high end PC hardware of the era
  • What, besides DOS, was actively used in this time period

OS/2 Pre-alphas and 1.0

Scan of page InfoWorld 1987

What was the actual intended goals of OS/2? It's often cited that OS/2 was intended to deal with the shortcomings of DOS, namely lack of multitasking and memory restrictions, but is this actually true?

It's known that Microsoft offered a $3,000 SDK and training materials which had basically everything you could want and more in a single box[1], but IBM based material is somewhat scant ...

Topics to be researched:

  • Descriptions of OS/2 (or ADOS) as found in early programming reference manuals
  • Comparison of early alpha versions of OS/2
  • In-depth reading and review of the manual and more

Questions to be answered:

  • What were the stated goals of OS/2?
  • What was actually provided out of the box in 1.0?
  • IBM marked OS/2 as a server - understanding the relationship here is important

OS/2 Editions

OS/2 1.0 Splash Description Page
Microsoft OS/2 Splash Screen Startup

In general, OS/2 was first created for IBM hardware, and then by Microsoft, resold for other PC compatible vendors. OS/2 was also available directly from Microsoft as an upgrade. There are known code and behavior differences between the two editions, as well as significant differences in documentation. However, all editions of OS/2 should be able to run the same binaries.

In general, IBM branded versions only ran properly on IBM machines or extremely compatible clones, while Microsoft versions were, for the most part, more forgiving.

IBM Edition

IBM editions are generally considered the "canonical" branch of OS/2, as they were developed for and used on IBM's PS/2 line of machines, which were generally the highest end machines with microchannel architecture support. If you were going to shell out the money for a MCA system in the late 1980s, you almost certainly were running either OS/2 or Xenix.

The question is, what did OS/2 specifically bring to the table for power users of this session. The canonical answer would be "Presentation Manager", but is PM actually that good?

Microsoft Edition

Similar to DOS of the era, Microsoft sub-licensed OS/2 to any OEM who wanted it, creating things like "Nokia OS/2" and "Intel OS/2". There are some code changes, possibly for compatibility reasons. It's likely that OS/2 was at least available for licensing for non-IBM compatible PCs, and may have had an actual OEM adoption kit, similar to the Windows 2/3 OAKs. While unlikely to ever turn up, a good look at the differences between editions is warrented. IBM OS/2 for instances uses the undocumented but highly commonly used 286 LOADALL instruction.[2]

IBM Extended Edition

Although not sold to end-users, IBM also offered an special version of OS/2 to its partners and vendors, which included applications for use in big business, and more importantly, talking to expensive IBM hardware of the era. This had three essential components[3]

  • Communications Manager - allows interfacing to various IBM mainframes
  • Database Manager - A SQL database that was later ported to UNIX as a non-mainframe version of DB/2
  • LAN Requester - Client for accessing LAN Server/Manager and NetBIOS shares on the network. May not have been in OS/2 1.0 (need to check)

LAN Manager

OS/2 was also a very popular server platform, completing with Novell NetWare, and UNIX systems of the era, and was in use well into the NT era. Microsoft sold their LAN Manager package as an add-on instead as a dedicated edition. Included were the following components:

  • OS/2 LAN Manager Server
  • OS/2 LAN Manager Workstation (or Requester in IBM parlance)
  • DOS LAN Manager client software
  • HPFS386 filesystem for OS/2
  • Novell NetWare interoperability tools
  • DOS and OS/2 Drivers for a number of NICs

It's unclear how much DNA is shared between IBM products and Microsoft ones.

OS/2 as a Server

One of the biggest roles of OS/2 in the 90s was its use as an application server, both for handling file and printer sharing, and was essentially the upsale from IBM PC LAN products of this time period. OS/2 was likely more suited as an application server than NetWare at the time, due to NetWare being monolithically linked, and only having "value addon packages", vs. the NLMs that came with NetWare 2.x.

Was the PC network of this era essentially just NetBIOS shares, or were there more functional aspects to it like using databases and more, and how did this interact with software of the era ...

Understanding the OS/2 Development Environment

Hello World on OS/2 1.0-1.3

Comparison to DOS and Creating Family Mode applications

Exploring Native OS/2 Apps

Limits of Preemptive Multitasking

Capabilities and Limitations of OS/2

How Hamstrung was OS/2 By the 286

HPFS

Use of Segmentation in Protected Mode (such as IOPL)

Networking with NetWare/LAN Server/LAN Manager

DOS/Windows Compatibility

Later OS/2 Era Stuff Worth Researching

  • OS/2 on PowerPC
  • Embedded OS/2 such as on the New York City Subway
  • eCommStation and AcraOS