The magazine of the Melbourne PC User Group

OS/2 - An Alternative?

John Angelico
talldad@kepl.com.au

OS/2 seems to be a little like Mark Twain the author, who wrote to a newspaper protesting "reports of my death are greatly exaggerated!" OS/2 shares his nationality, but judging by the lack of coverage, one could be forgiven for thinking that everyone has forgotten about the existence of OS/2. However, it is still the operating system of choice on many computers, working without too much fuss, supporting many mission-critical operations - especially in our financial system. About 75% of Australian ATMs operate under the control of OS/2, along with much of the front counter equipment in the branches of our major and regional banks.

Some Operating System History 

The software industry and operating systems "were invented" or took on a distinct existence in the early 1970s as a result of the IBM anti-trust case and the subsequent Consent Decree with the US Department of Justice. Since then the computer industry has seen a steady movement away from intense dependence on hardware. This began with the development of programming languages and gathered pace as the hegemony of mainframe computers was attacked first by "mini" computers and then by personal computers both of the Apple and the IBM-compatible variety. 

The general approach was to remove from users any need to understand the details of the hardware they were working with. This process of abstraction continues today with the web-based Java language and the entire concept of network computing. 

As hardware proliferated, software developers were overwhelmed by the need to cope with the variety. Word-smiths from the DOS era will recall that prominent WordPerfect selling point "support for over 700 printers!" Therefore manufacturers and systems developers put a lot of effort into writing device drivers and similar middle ware to ease the burden, and the abstraction process advanced another step. 

With the Internet, abstraction advanced again, so that by using standard TCP/IP communication protocols we can retrieve data and communicate world-wide. We need have no regard for the brand-name or operating characteristics of the equipment anywhere in the chain linking our humble PC with the server that is the source of our Web pages or the file we download.

DOS is Dead, Long Live OS/2! 

In 1985, IBM and Microsoft were still the two biggest names in 16-bit Intel-based personal computing. They began a joint project to fix the problems of the MS/PC-DOS operating environment. "What problems" you ask? Wasn't DOS just fine for PCs? Well, consider these:

  • Single-tasking "co-operative" operating model
  • Vulnerability of critical system areas to corruption (via rogue programs, viruses, power problems, breaches of the 640 KB memory limit etc)
  • Device compatibility and dependence
  • File system limitations (eg. FAT)
  • Hardware developments exhausting DOS capacity (32-bit processors, new devices)
  • User interface, training and productivity issues caused by programming diversity
T he result of that project was OS/2, first released in 1989. Version 2 was released in 1991 with a graphical interface, Warp version 3 in 1993 with expanded 32-bit processing, extensive 32-bit driver support, and broader networking functions. The current release, Warp version 4, came in 1996 with Voice Navigation, Voice Dictation and Internet connectivity. 

Since then the computer industry has focused much of its attention on a love affair with the Internet. IBM has concentrated on releasing FixPacks and device driver updates to keep abreast of developments. There are up-to-date OS/2 device drivers for USB, DVD, Zip drives, the latest high-capacity hard drives (both IDE and SCSI), the latest printers, cable modems, network cards, plotters, analogue modems and video cards. 

OS/2 has been a solid operating platform for all of its existence and is now a seasoned warrior in the world of mission-critical computing, with an assured future ahead, since IBM has publicly committed to active support until the end of 2007.

The Power of OS/2: Objects Everywhere 

One of the reasons for the survival of OS/2 and the existence of a loyal (dare I say it: fanatical) user base both in corporate business and in the private sectors is the collective set of design principles on which it is built. 

OS/2 is the first retail PC Operating System to be fully object-oriented - everything you see from the Desktop down is an object.

All objects have properties - programs, data files, directory folders, the Desktop, Drives and so on. These properties are consistent, and can be inherited by subsidiary objects. I will illustrate this object-oriented design in a number of areas.

Work Areas 

The Desktop (see Figure 1) has a property of "Work Area" which means that when it is closed all objects within it are also closed. This is effectively what happens at Shutdown, since (in graphical mode) all objects are started from the Desktop by a process called "The Workplace Shell." 

This property of "Work Area" can also apply to any other folder (see Figure 2), so if I open a subsidiary folder and run a program, then I can minimise or close the folder and automatically minimise or close the contents with it. But not only that - when I reopen the folder, the contained objects are also restored.


Figure 1. The OS/2 Desktop


Figure 2. Work Area Settings

The enclosed objects inherit the attributes or properties of the container folder and behave consistently. All the objects open together - multi-tasking for productivity. If your work is project focused, you can establish a folder for each project, include all relevant programs and files, define it as a Work Area and get to work with one mouse click (see Figure 3).

Shadows 

Folders can of course be buried anywhere in the tree structure of a hard drive. If I create a shadow of a folder (similar to a link in Windows) on the Desktop, I can access its contents more quickly. I can create a shadow in a couple of ways - with a right-click to access the folder popup menu, or by a "single click and drag" to the destination while holding Ctrl+Shift.

The shadow now has its own object identity and remains distinct from the original. Its function is to accept any actions (clicks, double-clicks, changes to properties etc) and have them apply to the original, and vice versa to reflect actions performed on the original. That is, OS/2 enables a two-way connection between the shadow and its original. The shadow can be deleted without affecting the original, but because it has a subsidiary function to point back to its original, if the original is deleted, logically the shadow is deleted with it.


Figure 3. Work Area Open


Figure 4. Program Settings

The shadow dynamically retains its two-way connection even if the original is moved. So I can go to the original location of a folder and move it say from Drive H: to Drive G:. If I return to Desktop and click on the shadow:

  • it now points to the new location and
  • all objects within the folder are accessible and functional.
Program References 

I can create an object that refers to a program, (known in OS/2 as a Program Reference Object). On the Desktop I may have such an object that refers to say my Accounting Program, which happens to be a Windows application. Using the DOS & Windows support built into OS/2 I can assign certain features to the environment it will use, select the AUTOEXEC.BAT file that will run when the program starts and assign command line parameters to the object. I can also keep all of these distinct from those same attributes that apply directly to the (executable) program itself. The example object on the Desktop is labelled "Pastel 5H" but the executable program name is actually "Pastel5.exe." (see Figure 4).

I can create another object referencing that same program to operate slightly differently, for example giving it the title "Accounts - Last Year" and setting command line options for the program to automatically start with last years accounts. I can also go to a folder, find another program and create a new object on the desktop. The Program Object will automatically be assigned a default set of properties according to its nature (OS/2, Windows or DOS). I can double click on that object to run the program and it will appear to behave exactly as if I was directly starting up the actual .EXE file or had typed its name at the command line - DOS-style. I can delete the object from the desktop when I am done, without risking the loss of the actual program.

Fax Freedom - Even for DOS Programs! 

This object concept applies even to transient entities such as print jobs. Every printer device in OS/2 handles print jobs as objects. A Fax device with attributes to transmit output files as faxes may be built as a print object and will appear in the list of printers available to all native OS/2 programs. 

But even DOS and Windows programs that have never been built to recognise a Fax device or a modem may be Fax-enabled. When the native OS/2 fax application Faxworks is registered upon installation, logical device LPT3 (another object) is established as an alternative source of fax jobs. 

So I can go to my venerable and trusty DOS database program PC-File, prepare a report and print it to LPT3. As soon as the print job is closed, Faxworks collects it from LPT3 (which has been assigned the attribute of "Fax") and spools it for faxing (see Figure 5) exactly the same as if it had come from a native OS/2 program designed to recognise the Fax device.


Figure 5. Faxworks showing DOS Report


Figure 6. Template Icon

Multiple Attributes, Multiple Purposes 

Data files are another form of discrete object to OS/2 with particular attributes reflecting the fact that they are used as the "raw material" for application programs. 

Any object can be turned into a template for use in creating new copies. The properties Icon panel has a check-box "Template". When that is checked the icon appearance becomes a yellow pad, almost like a Post-It Notepad™ (see Figure 6) to reflect its new capabilities. With a right click and drag 

I can peel off a new copy from the original, and deposit it on the Desktop.

The Template and the new copy are identical but distinct and the new copy has a new name. The properties of the data file include a definition of one or more of a list of file types. With each type may be associated one or more programs which use that file type. For example one file may have the type HTML plus the type Plain Text. It may then be viewed as a text file using say the System Editor, or as HTML Web page using Netscape, Web Explorer or another browser, or the page may be edited using a HTML editor or Web page creation program. The file is not restricted to being assigned exclusively to one particular program. 

The available file types are accessible in a Program (using its Properties Associations panel) and any number of programs may be associated with a file type. We may also associate a program by file name or extension. (see Figure 7).


Figure 7. Multiple Associations

Desktop Extensions 

Because of the robust and flexible OS/2 design, third party developers are able to build extensions to the Desktop environment which add to or modify Desktop functions. Some of the mouse functions available (from eight pages of options) in my favourite utility "NPSWPS" include:

  • Pointer Wrapping at Screen Borders (vertical and horizontal) allows me to move the pointer anywhere on the screen with minimal hand movement
  • Shift Pointer to Focus/Activate Window at Pointer allows me to move the pointer to a new window and without a click that window becomes active
  • Automatic Menu Selection - if a window becomes active by program action, the pointer automatically goes to the window and to the default button if applicable.
The Power of OS/2 Warp

OS/2 is a clear demonstration that "object-oriented" is a not merely a buzzword. It has been brought out of the clouds, and applied to real-life situations: indeed OS/2 = Objects Everywhere. About the only objects you won't find on an OS/2 system are named "Melissa," ILuvU," "Concept.VBS" and so on. OS/2 offers power, productivity and stability which is not about to disappear. 

If you want to experience more of the power of OS/2, the SIG meets on the fourth Tuesday each month. If you think you might like to try it, we will happily install OS/2 from your APC July cover CD-ROM.

About the Author 
John Angelico CPA, talldad@kepl.com.au is co-convener of the OS/2 SIG and has been operating OS/2 in the family business since 1993. 


Reprinted from the November 2000 issue of PC Update, the magazine of Melbourne PC User Group, Australia

[About Melbourne PC User Group]