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

ArticlesSunSelect's Wabi vs. Insignia Solutions' SoftWindows


January 1994 / Special Report / SunSelect's Wabi vs. Insignia Solutions' SoftWindows

SunSelect's Wabi (Windows Application Binary Interface), which will be bundled with many Unix workstations, uses the workstation's normal X Window System display protocols for creating the images called for by a Windows application and Unix's usual facilities for handling files, memory, and other resources.

Wabi is based on technology acquired by SunSelect from Praxsys Technologies, but it functions much like other personality translators. While working its way through the code in a Windows application, Wabi decodes and mimics individual 80x86 instructions until it encounters a call to a DOS or Windows function. Then the emulator switches to native mode, performing the DOS or Windows function by making the appropriate calls to X, Unix, or other facilities. The technical challenge comes in translating the parameters of each Windows call to the appropriate format for Unix and then translating the results from the function call into the appropriate information to be returned in the appropriate Windows data structures.

The first release of Wabi claims to support the Windows 3.1 API, with DDE and OLE supported only as external DLLs that must be interpreted by Wabi's 80x86 emulator. Networking is limited to access to remote file systems and printers. SunSelect says improved network support and native versions of DDE and OLE will come in a future release of Wabi.

Windows applications running under Wabi have the look of an X-based Unix GUI such as Motif or OpenLook, rather than that of Microsoft Windows. And instead of running the entire Windows desktop environment within a window, as Insignia Solutions' SoftPC and SoftWindows currently do, Wabi opens a new window on the Unix desktop for each Windows-based application. Using a standard X displ ay means both text and graphics can be cut and pasted between Windows and Unix applications (although most Unix applications can't automatically convert to and from the Windows bit-map format).

However, SunSelect isn't religious about its X implementation of Windows. To make sure TrueType fonts are properly handled for the Windows applications, the company has licensed font-handling technology from Bitstream. As a result, when a Windows application issues a call to display text in a particular TrueType face, Wabi converts the request to X calls but also provides the appropriate fonts for the display.

Wabi can't currently handle plenty of Windows-related features, including multimedia extensions, ODBC (Open Database Connectivity), MAPI (Messaging API), and networking beyond access to remote file systems and printers. Are those limitations Wabi-killers? SunSelect doesn't think so, arguing that Wabi's purpose is to run the popular Windows applications Sun's customers have asked for, not to convert Unix into a close copy of Windows. The current list of "Wabi-certified" applications is short. Only 13 packages from Lotus, WordPerfect, Microsoft, Borland, and other major Windows software vendors are guaranteed to run under Wabi.

According to SunSelect's director of research and development, Andy Halford, another 50 packages seem to work fine, but they haven't been run through the Wabi testing and certification program. Software that uses APIs Wabi doesn't support may fail to install or exit gracefully with an option to close files--or even cause Wabi to abort.

But a Microsoft-backed competitor thinks Wabi's approach is far too limited. The day before SunSelect unveiled Wabi, Microsoft launched a preemptive strike by announcing it would license Windows source code to Insignia Solutions. The product that Insignia produced from that agreement, SoftWindows, runs Windows applications on Unix workstations, but there the similarity to Wabi ends.

SoftWindows is actually Windows 3.1 and MS-DOS, recompiled for Unix. Initially, SoftWindows fully supports OLE, DDE, and DLLs; Insignia says it is now working on multimedia and other extensions. The image that appears in a SoftWindows window is that of a complete Windows desktop, and because the source code is the same as the original 80x86 version, every nuance of Windows is preserved. When SoftWindows' 80x86 emulator reaches a Windows function call, it doesn't simply mimic the function. It actually performs it, at full processor speed, with appropriate calls made to Unix instead of DOS.

Because it uses authentic Windows source code, SoftWindows is able to run a far wider range of Windows applications than Wabi. By comparison, says Insignia, Wabi offers very little.

But according to SunSelect, Wabi does claim one major advantage over SoftWindows: blinding speed. Executing every line of authentic Windows code for each function creates an awful lot of overhead, particularly because Windows was designed as a 16-bit application running on top of MS-DOS and was built to perform its own memory management and other advanced functions. By contrast, Unix is a 32-bit operating system that has finely tuned memory management and other facilities.

SunSelect argues that by using Unix to mimic Windows rather than slavishly performing every line of the authentic code, Wabi can outperform genuine 80x86-based Windows. A demonstration performed at SunSelect's original Wabi announcement appears to bear out the claim. Running the Wintach benchmark, a PC running the Intel version of Solaris with Wabi performed 50 percent faster than an identical PC running Microsoft Windows, according to SunSelect.

In response, Insignia points out that Wintach is just one benchmark, and it's strongly geared to graphical functions--the kind of functions where Wabi would be expected to do well. Insignia claims it uses a battery of benchmarks to make sure its RISC Unix versions of SoftWindows will perform at least as well as a 25-MHz 486-based PC in every area. The compa ny says it has not yet benchmarked SoftWindows against Wabi but that the two initially look "competitive."

Ironically, SunSelect is an Insignia customer. The company sells an enhanced version of Insignia's SoftPC as SunPC, and SunSelect acknowledges that for SPARC customers who need more complete PC emulation, that's the way to go. But for those who need to run only the top Windows applications, says SunSelect, Wabi is a better solution.

The choice between SoftWindows and Wabi comes down to whether a customer wants to run full-scale Windows or full-speed Windows applications.


Screen: Wabi running Windows applications on the Solaris desktop.
Screen: SoftWindows running Windows applications.

Up to the Special Report section contentsGo to previous article: Personality PlusGo to next article: Windows NT and Workplace OS: Plug It InSearchSend 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