[Info-vax] What does VMS get used for, these days?

Craig A. Berry craigberry at nospam.mac.com
Sat Nov 12 16:52:37 EST 2022


On 11/11/22 10:41 PM, Jake Hamby (Solid State Jake) wrote:

> It would *definitely* make sense for VMS to provide a posix_spawn()
> API since it would be more efficient than the current method.

It would still have to do some tricks to preserve open file descriptors,
copy the argv and envp arrays to the child, etc.  But hopefully it could
be done without the setjmp/longjmp business.  For folks not familiar,
it's documented here:

https://pubs.opengroup.org/onlinepubs/9699919799/functions/posix_spawn.html

> Getting back to shells, I discovered bash had so many ... <snip>

> I've decided to take a slightly different route for populating my
> preferred VMS POSIX environment, which is to start with a subset of
> the NetBSD userland. That's what MINIX did, and it worked out fine
> for them. Once I have something that looks acceptable to pkgsrc, as
> well as NetBSD's /bin/sh and UNIX utilities, BSD make, and C wrappers
> to make CC/CXX look like cc/c++, then I'll still only have C++03, but
> I'd also have a NetBSD userland at a fraction of the effort that
> porting GNU userland has turned out to be. I did learn more than I
> ever wanted to know about GNU autoconf, automake, libtool, and
> friends.

This doesn't surprise me.  Most of the BSD code I've seen has been
continuously refactored to be readable and use modern practices, which
can make it much easier to port than code that has not been so well
maintained.

Note that on OpenVMS x86_64, the C++ offering will be clang++, so you'll
get some recentish standard, not sure which one initially.



More information about the Info-vax mailing list