FreeVMS 0.3.0 review

Download
by rbytes.net on

FreeVMS is an OpenVMS-like operating system which can run on several architectures like i386, PPC, Alpha, and many others. FreeVMS

License: GPL (GNU General Public License)
File size: 9481K
Developer: Joel K. Bertrand
0 stars award from rbytes.net

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.

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:
DCL can now use if-then-else-endif and expressions.
Vararg handling was written.
Some obsolete CLI argument handling code was fixed and the CLI library was cleaned up.
Pointer and semantics fixes were made in SMGRTL.
Problems with exec argument passing were fixed along with issues where Read did not return the size after EOF, exit lacked spinlock and ipl, creprc lacked spinlock initialization, and opa0 cleanup was missing after startup.com.
On i386, a structure offset problem in Dfu was fixed.

FreeVMS 0.3.0 keywords