Hacker News new | ask | show | jobs
by macdice 1139 days ago
Fun read. I'm pretty sure there were ways to run SCO SysV binaries unmodified on Linux (and I think FreeBSD and others), back in the day. Maybe something to do with ibcs2?
4 comments

The bsd binary compatibility system was an interesting effort to allow executeable files built for other systems to run on bsd, I never actually used it but my understanding is it was always hard to set up and fragile.

OpenBSD removed it as they did not feel they could properly maintain the system.

FreeBSD keeps a little of it around, mainly to run linux binaries.

NetBSD it looks like they kept the whole buffet.

https://www.netbsd.org/docs/compat.html

BSD = Berkeley Software/System Distro.

iBCS = Intel Binary Compatibility Standard. iBCS2 = iBCS v2.

Not the same thing or even related.

... but the BSDs did have support for SystemV binaries, through modules compat_svr4 and compat_ibcs2, so the grand parent comment made perfect sense to me. Not sure why there were two and I don't plan to go down that rabbit hole today, but perhaps due to SVR4 vs SVR3 differences, and ELF vs COFF, shrug.
Fair point! I am not so familiar with them, but I am sure you're right.
Back in the day, I ran native SCO binaries on Linux, but you needed the SCO shared libraries for most apps, and those were definitely not open source.
iBCS2 - https://www.linuxjournal.com/article/2809. As another comment indicated, this worked as the syscall layer rather than at the library layer, so the kernel would translate the expected responses - but this meant that you needed libraries that expected the SVR4-style responses, which means having to find a copy of the appropriate libc and so on as well instead of being able to use the Linux libc.
I started digging into this because that's basically the sort of person I am, and hit https://ibcs-us.sourceforge.io/ which implements iBCS2 in userland, including a COFF loader. In theory, with that you should be able to run the unmodified Lotus 1-2-3 binary, as long as you have the corresponding SVR3 or whatever userland available for it.
Since there are now native x86-32 binaries, I don't see much point.

But there was a native MS Word for Xenix. I installed that on several production systems. It offers easier file interchange with modern word processors, and it was a bit easier to use. Less powerful than WP 7, but also less arcane.

I'd love to see that running again.

I remember my boss managed to make Oracle 7 running on FreeBSD via iBCS. I was told, CNN did that, too for their web site back in nineties.