Wabi (software)
| Company type | Software product |
|---|---|
| Industry | Software compatibility layer |
| Predecessor | Praxsys Technologies |
| Founded | 1992 |
| Founder | Praxsys Technologies |
| Defunct | 1997 |
| Fate | Discontinued |
| Headquarters | United States |
Area served | Solaris, AIX, HP-UX, SCO OpenServer, Linux |
| Owner | Sun Microsystems |
Wabi was a commercial software product developed by Sun Microsystems that has since been discontinued. It implemented the Windows Win16 API, enabling execution of applications created for Windows 3.1, Windows 3.11, and Windows for Workgroups by translating x86 instructions directly, without emulating DOS or PC hardware.
Originally launched for Solaris, Wabi was subsequently extended to support AIX, HP-UX, and SCO OpenServer. Additionally, a Linux edition was introduced by Caldera.
History
Wabi’s origins trace back to Praxsys Technologies, which developed the software following discussions with Interactive Systems Corporation in 1990. Sun Microsystems acquired Praxsys’s assets in late 1992. The product was initially named WABI (Windows Application Binary Interface), but the name was changed to Wabi to avoid trademark conflicts and to evoke the Japanese concept of "quiet taste," aligning with SunSoft’s branding strategy.
SunSelect demonstrated Wabi at the 1992 Fall Comdex event, showcasing how it utilized the Windows API to abstract software from hardware dependencies. This allowed RISC workstations, such as those produced by Sun, to execute Windows applications with superior performance compared to conventional Intel-based PCs. Unlike Sun’s earlier SunPC solution, Wabi did not support DOS applications.
In May 1993, Wabi was announced and provided free of charge to Solaris customers that year. IBM licensed the technology for its RS/6000 systems in exchange for reciprocal technology sharing. After distributing 30,000 copies of version 1.0 by April 1994, Sun released Wabi 1.1 featuring improved stability. Both HP and IBM incorporated it into their system offerings. The summer of 1994 saw the launch of Wabi 2.0, which broadened certified application compatibility beyond the initial set of thirteen programs.
By late 1994, Sun reported shipping 100,000 copies bundled with Solaris 2; HP and IBM offered it as an optional purchase priced at $395 and $249 respectively. Wabi 2.0 supported twenty-four applications covering more than 80% of the commercial Windows software market. SCO made Wabi 2.0 available as an option for OpenServer Release 5.
The release of Wabi 2.1 in 1995 introduced multimedia features and ODBC support. Concurrently, Sun enhanced its DOS emulator Merge and rolled out a faster CPU for its SunPC expansion card. Preparing for Windows 95’s launch, Sun planned to update Wabi within a year following Windows 95’s release date. Additionally, Sun introduced WabiServer, enabling Windows applications to run on servers accessible via network clients, thereby extending compatibility to X terminals and lower-end SPARC machines running SunOS.
In 1996, Caldera licensed version 2.2 of Wabi as part of its Linux strategy and distributed it across multiple Linux distributions later that year. Development efforts ceased in December 1997, with only maintenance updates continuing thereafter; revision E of Wabi 2.2 was the final release from Sun for Solaris 2.6.
Alternative approaches such as the Willows Toolkit and Wine existed but did not provide the same level of Windows application compatibility as Wabi at the time it was discontinued.
Features
Wabi was originally engineered to execute certified Windows applications without requiring any Microsoft Windows software installation. Version 2.0 explicitly certified support for Windows 3.1 applications; installing Windows itself helped mitigate some earlier limitations. Version 2.1 extended compatibility to include Windows for Workgroups 3.11.
To enable execution of Windows API-based programs, Wabi supplies library routines implementing documented API calls that perform equivalent operations within the host operating system environment—for example, Solaris on Sun workstations. Unlike competitors such as Insignia's SoftWindows, Wabi runs Windows programs using native components, allowing them to display in individual windows under the X Window System rather than being confined within a single native window container.
The core Windows environment in Wabi is realized through user.dll, kernel.dll, and gdi.dll libraries upon which all other Windows DLLs depend. This focused implementation approach was considered necessary due to Microsoft’s growing software complexity and the precision required to reliably run commercial applications.
Wabi was made available on Solaris platforms including SPARC, x86, and PowerPC architectures; PowerPC AIX; PA-RISC HP-UX; as well as x86 and SPARC Linux systems. To support execution of x86-based Windows environments on RISC architectures such as SPARC, Wabi uses dynamic binary translation that converts x86 instructions into native instructions upon first execution.
Although Wabi does not emulate DOS or PC hardware directly, Caldera’s version integrated with the DOSEMU package to allow launching DOS sessions via the MS-DOS Prompt icon within the Windows Program Manager interface.
Standardization Efforts
Wabi depended on widely recognized and documented Windows API functions, which made it susceptible to compatibility issues with software that utilized undocumented APIs, often resulting in improper operation. Although Wabi incorporated methods intended to enhance the execution speed of Windows applications on Solaris, users frequently experienced uneven performance, with certain programs operating noticeably slower than expected.
It was commonly believed that developers, including Microsoft itself, leveraged undocumented Windows API calls to secure a competitive edge. While Microsoft admitted to using these undocumented calls in its own software, the company maintained that such practices were pervasive across the industry and did not confer significant benefits. Drawing parallels from the DOS API’s role as an informal standard and Wabi’s mission to support Windows APIs across different platforms, there were growing calls within the industry to establish formal standardization of DOS and Windows APIs through bodies similar to ANSI.
To address this, Sun initiated the Public Windows Interface project in collaboration with organizations such as IBM, ICL, Toshiba, SCO, Unix System Laboratories, Corel, and WordPerfect. The goal was to develop an open industry standard for the Windows API. Sun’s Scott McNealy asserted that Sun had effectively "documented the Windows API on behalf of Microsoft" and submitted this documentation to X/Open for evaluation. This proposed public standard was designed to be free from Microsoft’s intellectual property claims, including copyrights and patents.
In early 1993, Sun reportedly attempted to obtain licensing agreements from Microsoft for Windows technologies but was unsuccessful. Microsoft’s Bill Gates downplayed the initiative by pointing out that the relevant information was already publicly accessible in a book priced at $9; however, Microsoft considered pursuing legal action following Wabi’s launch. Subsequently, Microsoft granted a license for Windows source code to Insignia Solutions, facilitating their SoftWindows product and forming part of a broader approach to licensing Windows on Unix platforms.
Despite Sun’s insistence that no intellectual property rights were infringed upon, Microsoft’s lobbying efforts effectively impeded progress on the Public Windows Interface within standards organizations, thereby halting this standardization attempt.
See also
- Sun386i
- SunPCi
- Macintosh Application Environment
- Wine (software)