Open System Portability Checker Update (Aug 92)

New ports

OSPC has now been ported to the IBM RISC System/6000 and Sun 4 under Solaris 2.0 (or SunOS version 5.0 as it is also known).

OSPC running under AIX 3.1 on a RS/6000 provides the same functionality as supplied on all supported platforms. The IBM XL C compiler proved to be well documented and very close to the ANSI C standard (this compiler is listed in the latest Validated products list from NIST as being ANSI conforming). AIX has also passed the NIST POSIX.1 certification suite. As might be expected from these certifications this platform provides very good support for standards conforming code. Like all vendors, however, there are extensions to both the language and the support services. From our point of view one of the advantages of porting to a new platform is that we get to extract a great deal of information on that platform. The RS/6000 was no exception and over a quarter of a megabyte of profile information was obtained.

Solaris 2.0 is currently being provided to beta test sites, with shipment planned for November. The real reason behind our desire to port to this platform was to get a look at the changes to the system services being provided by Sun. The C compiler would appear to be based on the standard SVR4 release, although there has been talk of another vendors compiler being shipped. Solaris 2.0 is a big break with the past, changes include OpenWindows 3.0, new device drivers and an OS based on System V rather than BSD.

Floating point options

The previous release of OSPC had relatively little support for configuring floating point characteristics. This latest release reverses that situation. It is now possible to configure the maximum and minimum values of all of the floating point types. We almost went as far as allowing the representation to be configurable, but decided that this was a pandoras box that should not be opened.

The ability to configure floating point characteristics should be of particular benefit to those developers moving to supercomputers.

Dynamic checking

A lot of work has gone into speeding up the dynamic checker. This has involved tuning the interpreter and optimizing the generated code. Many people are interested in the correctness proof we have for the generated code. Don't panic. The optimizer has been added as a separate phase and can be switched on and off. It is also possible to mix and match optimized and unoptimized .kic files.

Benchmark figures suggest a four to five fold improvement in performance. This makes mce the fastest interpreter of C code known to us, even with all the checking that it does.

Multi-threaded applications

Some applications start up child processes. This is automatically handled by mce. However, sorting out the stack tracebacks can be difficult. The error reporting machinery now knows about multi threaded applications. So when it is invoked from within a child process it adds the process number to the backtrace. The addition of this process number makes it considerably simpler to work out which process generated the given backtrace.


As we go to press draft 12.01 of this document has been submitted to ISO for CD balloting. After the major changes that happened between drafts 9 and 11 the current version has settled down. OSPC continues to follow the drafts of the POSIX standards as they are released.


The Precision RISC Organisation has been set up to promote the HP risc processor. PRO are impressed by the checking abilities of OSPC. They are currently committed to binary checking of applications but are still undecided on source code checking.


Some companies have expressed a desire to have an independent third party check there code, rather than purchasing a copy of OSPC. So Knowledge Software are now offering a consulting service. Pricing is based on three daily rates, one for the first day, another for the second and third days and thereafter a standard daily rate. Applications are checked using OSPC. The developer gets to keep the log files and receives a report on the standards conformance of their code. There is also plenty of opportunity to discuss the implications of the warnings being generated and what might be done to remove them. For more information contact Knowledge Software on (0252) 520667.

OpenForum 1992

This conference is jointly organised by UniForum, EurOpen and Royal Dutch Fairs. Held in Utrecht, Holland on 25-27 November it looks like being the big Open Systems event of the year. Derek Jones will be presenting a paper at the business conference entitled "Advantages of applications conformance to POSIX.1". For copies of this paper please contact Knowledge Software. For fair and conference information contact Mrs Marjolein Jacobs on +32 30 955662.

WG15 in the UK

Both the IEEE and ISO POSIX working groups will be holding joint meetings in Europe this Autumn. IEEE are meeting in the Netherlands, while WG15 meet in Reading the following week (Americans view Amsterdam and Reading as being sufficiently close to be viewed as the same place).

So see you in Reading on October 26 for a week of POSIX standardisation work. Those of you who prefer a gentler introduction might like to attend the UK POSIX panel meeting on 11 September. Contact Dave Cannon on (0392) 263956 for details.

© Copyright 1995. Knowledge Software Ltd. All rights reserved;