FreeVMS is an OpenVMS-like operating system which can run on several architectures like i386, PPC, Alpha, and many others.
FreeVMS consists of a POSIX kernel and a DCL command line interpreter. The only architecture currently supported is i386.
Product's homepage
Here are some key features of "FreeVMS":
Supported hardware configuration:
· - PCs (i386s)
· - Console: VGA
· - Network interfaces: ne2k and 3c900 (3c905/3c590 might work, untested)
· - Disk interface: IDE
Core kernel features:
· - Control mechanisms: software interrupts, ASTs
· - Synchronization: event flags, locks
· - Scheduling, time support, process control and communication
· - Memory management: working set list, swapper, pools
· - Input/output: QIO, mailboxes, terminal driver
· - Image support: VMS images and ELF
· - Miscellaneous: logical names
Filesystems:
· - RMS read/write SEQ (yes) IDX (too little to be usable)
· - RMS can be run on both ODS-2 and ext2 (but less functionality on ext2)
· - ODS-2 read/write/execute
· - ODS-2 initialize
· - ODS-2 can have bootable kernel
· - ODS-5 readonly
· - DFU doing analyze/disk
· - XPQ (for ODS-2, and something like it for ext2)
Bootloader:
· - GRUB with ODS-2 support to boot kernel
Clustering:
· - SCA/SCS-ish protocols
· - Configure process
· - CWPS (forcex/stop only)
· - MSCP (does not currently work due to lost network packets)
Networking:
· - CMUIP (with only incoming telnetd)
Shell:
· - DCL
· - mcr, run
· - simple @ scripts
· - basis CLD and CLI$ support
· - simple symbol support
· - DCL builtin
· - define, goto, logout, stop, exit
· - set default/prompt/process
· - show default/time
· - DCL utilities
· - copy, delete, directory, edt, init, mount, search, type
· - create /name_table
· - set working_set
· - show device/system/logical/working_set
Editor:
· - EDT (from Ozone, and can not yet be used fully)
Programming language:
· - Bliss (not directly used, and is under development)
Linker:
· - LINKER (simple, static images. Can do some dynamic linking.)
RTL:
· - STR$
· - LIB$
What's New in This Release: [ read full changelog ]
· Some fixes and new bugs were added.
· A GCC variable argument count on i386 was added.