Archives
 
 
 
  Special
 
 
 
  About Us
 
 
 

Newsletter
Free E-mail Newsletter from BYTE.com

 
    
           
Visit the home page Browse the four-year online archive Download platform-neutral CPU/FPU benchmarks Find information for advertisers, authors, vendors, subscribers Request free information on products written about or advertised in BYTE Submit a press release, or scan recent announcements Talk with BYTE's staff and readers about products and technologies

ArticlesWindows NT and Workplace OS: Plug It In


January 1994 / Special Report / Windows NT and Workplace OS: Plug It In

While Unix personality modules are designed to function as if they were applications, both Microsoft's and IBM's entries in the portable 32-bit operating-system sweepstakes take a more integrated approach. Microsoft Windows NT and IBM's forthcoming Workplace OS have been specifically designed to support emulation of multiple operating-system personalities, although the difference between the two systems' approaches is striking.

Windows NT supports five operating-system personalities: MS-DOS, 16-bit Windows, OS/2 1.x, Posix, and 32-bit Windows. All five personalities are implemented as NT "environment subsystems"; each runs in its own protected user space. The Win32 subsystem handles display, keyboard, and mouse support for the other four personalities.

DOS and 16-bit Windows a pplications run via VDMs (virtual DOS machines), each of which emulates a complete 80x86 computer running MS-DOS. In NT, a VDM is a Win32 application; thus, like a typical Unix personality module, NT DOS and 16-bit Windows applications effectively float in a layer directly above the Win32 subsystem.

The OS/2 and Posix subsystems are a different matter. As full-scale NT subsystems themselves, they communicate with the Win32 subsystem for user input and output, but they also communicate directly with the NT Executive for other operating-system services. The OS/2 subsystem can run many current character-mode OS/2 applications, including OS/2 SQL Server, and it supports named pipes and NetBIOS.

But the Posix subsystem is remarkably limited, despite direct access to kernel services. Posix applications must be compiled specifically for Windows NT; NT does not support binary code intended for any other Posix-compliant operating systems, such as Unix. In addition, NT's Posix subsystem does not directly support printing, does not support network access except for remote file systems, and does not support any facilities of the Win32 subsystem such as memory-mapped files or graphics.

Compared to NT, IBM's forthcoming Workplace OS uses a more straightforward organization. While some NT personalities go through the Win32 subsystem and others deal directly with the NT kernel, all Workplace OS personalities have direct access to kernel services. Workplace OS currently supports three personality servers: an OS/2 server for OS/2 applications, an AIX server that mimics IBM's version of Unix, and an MVM (multiple virtual machines) server for DOS and 16-bit Windows applications.

Workplace OS is built on a version of Mach 3.0. The IBM microkernel supplies only a very limited set of services; it is essentially a software backplane into which other modules, called servers, connect. The personality servers function exactly like any other Workplace OS servers. Each runs in its own protected memory space and co mmunicates directly with the microkernel and, through it, other servers.

However, all personality servers are not created equal. IBM initially plans two versions of Workplace OS, one the OS/2 Workplace Shell, the other, Unix CDE (common desktop environment). In each case, the dominant personality will do double duty, providing both the capabilities required for its own applications and the desktop GUI and default execution semantics for the other personalities. On a standard Workplace OS system, the OS/2 (or Unix) personality is dominant. The other personality servers, known as alternative personalities, don't contain code to provide these services.

However, dominance is entirely arbitrary in Workplace OS. The Workplace OS could be given a Windows look and feel, although IBM has no plans to do so. IBM says the server interfaces for Workplace OS will be published, so constructing dominant and alternative personalities will be practical for ISVs (independent software vendors). Additional personali ties can also be added by IBM or other vendors; although none have been announced, a Mac personality is rumored as a future addition.

In practice, announcements and demonstrations are currently the limit of Workplace OS's functionality, because it is a product in development rather than a shipping package like NT. In recent demonstrations, for example, Workplace OS's Unix and DOS personalities were both character-based, and users could only hot-key between them and the OS/2 GUI.

Technically, both Windows NT and Workplace OS use modular subsystems to support multiple operating-system personalities. Paul Giangarra, lead architect for Workplace OS, is enthusiastic about the idea of other software vendors developing additional personalities (or, alternatively, personality-neutral services). Microsoft's director of business development, Bob Kruger, says the whole reason NT includes Posix support is to demonstrate that subsystems can be added, either by Microsoft or other vendors, that connect directl y to the NT Executive without running as Win32 applications.

In fact, the two approaches seem very comparable at a technical level. Then why does Workplace OS's approach to multiple personalities seem so robust, promising the potential ability to run every significant desktop operating system, while NT's non-Windows personalities seem thoroughly undeveloped? One reason may be that it's easier to create a robust plan than a working operating system with robust implementations of multiple personalities.

But there's also clearly a difference in business philosophy. IBM is pursuing multiple personalities, while Microsoft appears to be discarding them. "How many people are actually going to write a Posix application?" asks Kruger. And he downplays NT's ability to run OS/2 applications: "At the end of the day, people will buy Windows NT because it runs Windows," Kruger insists. It's true that with good support for Windows applications, NT already has many of the benefits that multiple personalities pr omise. But only time will tell if a Windows-only philosophy will help or hurt NT in its competition with other advanced operating systems.


Up to the Special Report section contentsGo to previous article: SunSelect's Wabi vs. Insignia Solutions' SoftWindowsGo to next article: A Better OS/2 Than OS/2?SearchSend a comment on this articleSubscribe to BYTE or BYTE on CD-ROM  
Flexible C++
Matthew Wilson
My approach to software engineering is far more pragmatic than it is theoretical--and no language better exemplifies this than C++.

more...

BYTE Digest

BYTE Digest editors every month analyze and evaluate the best articles from Information Week, EE Times, Dr. Dobb's Journal, Network Computing, Sys Admin, and dozens of other CMP publications—bringing you critical news and information about wireless communication, computer security, software development, embedded systems, and more!

Find out more

BYTE.com Store

BYTE CD-ROM
NOW, on one CD-ROM, you can instantly access more than 8 years of BYTE.
 
The Best of BYTE Volume 1: Programming Languages
The Best of BYTE
Volume 1: Programming Languages
In this issue of Best of BYTE, we bring together some of the leading programming language designers and implementors...

Copyright © 2005 CMP Media LLC, Privacy Policy, Your California Privacy rights, Terms of Service
Site comments: webmaster@byte.com
SDMG Web Sites: BYTE.com, C/C++ Users Journal, Dr. Dobb's Journal, MSDN Magazine, New Architect, SD Expo, SD Magazine, Sys Admin, The Perl Journal, UnixReview.com, Windows Developer Network