This topic is may a bit OT: Why there is no open application binary interface? I could use any binary on any operating system which support this standard. In the moment I can't use my linux executables on Solaris or FreeBSD and I can't use the Solaris kernel for Ubuntu without using solaris packages from Nexenta project.