[Info-vax] Announcement: A new system library (plibsys) is ported to OpenVMS
Alexander Saprykin
xelfium at gmail.com
Mon Oct 3 10:12:43 EDT 2016
Hi folks,
I'm glad to announce that after several months of work I've ported my
personal project to OpenVMS. I'm talking about the plibsys library which
is available at GitHub:
https://github.com/saprykin/plibsys
This is a cross-platform system library with many capabilities provided:
- Platform independent data types
- Threads: POSIX, Solaris and Win32
- Mutexes: POSIX, Solaris and Win32
- Condition variables: POSIX, Solaris and Win32
- Read-write locks: POSIX, Solaris and Win32
- System-wide semaphores: POSIX, System V and Win32
- System-wide shared memory: POSIX, System V and Win32
- Optimized spinlock
- Atomic operations
- Socket support (UDP, TCP, SCTP)
- Hash functions: MD5, SHA-1, SHA-2, SHA-3, GOST (R 34.11-94)
- Binary trees: BST, red-black, AVL
- INI file parser
- High resolution time profiler
- Files and directories
- Shared library loading
- Useful routines for linked lists, strings, hash tables
- Macros for OS and compiler detection
The main idea is to use native code wherever is possible. Library supports
lot of operating systems and compilers, the full list you can check at the
project's page.
As discussed here
(https://groups.google.com/forum/#!topic/comp.os.vms/ySlKal2n51Y) POSIX
semaphores and shared memory unfortunately do not work now due to a bug
in the implementation.
All the library modules are covered with unit tests. I have only an FreeAXP
emulator with OpenVMS 8.4 to run tests, where they are run fine.
I would appreciate if someone could run tests on IA64 platform as I do not
have access to it. This was actually my first experience working with
OpenVMS, so any advice or fixes are appreciated.
Build instructions for OpenVMS: https://github.com/saprykin/plibsys/tree/master/platforms/vms-general
I hope it will be useful for someone, especially who works with
cross-platform projects with OpenVMS as on of the target systems.
Best Regards,
Alexander Saprykin
More information about the Info-vax
mailing list