A informal PowerPC Embedded Application Binary Interface group has been meeting to tie up most of the loose ends of the portable software specification. The most pressing problem for the group – which includes compiler, debugger and real time operating system developers – is what to do with its work once it is finished. Getting approval from the PowerOpen Association is an obvious move, however the Association is concerned that having two very different application binary interfaces bearing the PowerOpen endorsement could confuse the market. And when we say very different, we mean very different. The PowerOpen Application Binary Interface is based very closely on IBM Corp’s AIX version of Unix; the Embedded Application Binary Interface is built around SunSoft Inc’s Solaris implementation for the PowerPC. When the Embedded Application Binary Interface group started working on its specification, it initially turned to the PowerOpen/AIX application binary interface. Here, after all, was an operating system ready to run on the PowerPC.
Performance versus compactness
Unfortunately, the AIX interface is tuned for sheer performance, rather than compactness or the other attributes that the embedded industry likes. So the Embedded group struck out on its own. Around the end of 1993 the group switched compiler output standards and was consequently drawn towards Solaris. When a compiler spits out a finished file, it includes information that can be used by debuggers and other software tools. One standard, XCOFF, is used by AIX; another, ELF, is used by Unix System V.4-compatible systems such as Solaris. Most people acknowledge that ELF is the up and coming contender, newer and more flexible than XCOFF. It was after the Embedded group changed its allegiance to ELF that it became aware of SunSoft’s effort to transfer Solaris to the PowerPC – with an application binary interface based on System V.4 and support for ELF, the potential for collaboration was obvious. Moreover, Sunsoft’s lack of an installed PowerPC base meant that, unlike IBM, it could tweak its proposed application binary interface to the Embedded group’s advantage. Mark Edwards of Motorola Inc’s Advanced Microcontroller division and one of the leading lights among Embedded Application Binary Interface workers says Sunsoft and the Embedded group have worked closely, proposing and making changes to their respective interfaces to keep them in sync. By closely basing the embedded interface on Solaris for PowerPC, the group ensures a ready supply of development and conformance-testing tools. The result puts the PowerOpen Association in something of a quandary. On one hand, here is the undisputed interface for embedded applications; on the other hand, it is so different from the main PowerOpen Application Binary Interface that applying the PowerOpen stamp to both may cause confusion, because some customers might expect a degree of compatibility between tool sets. There are suggestions that the Association’s reluctance may also have a political basis, with IBM unhappy about the infiltration of Sunsoft technology into the previously true Blue Association. Association president Tom Mace denies this: There are some people who would characterise it as political, but it is really not that way, he says. What we have to work out as we talk to the Embedded Application Binary Interface group is how we keep the confusion down to the minimum, while providing the group with the facilities they require. Mace is attending next week’s Embedded group meeting for a discussion of what will be required to get the PowerOpen Association tag attached to the its work. We will help them in any way we can, he promises.