[Info-vax] CRTL and RMS vs SSIO

Arne Vajhøj arne at vajhoej.dk
Tue Oct 12 20:15:39 EDT 2021


On 10/12/2021 6:13 PM, Lawrence D’Oliveiro wrote:
> RMS (and VMS) dates from the time when control blocks were a common
> way of communicating with OS services. A control block was a block of
> memory whose layout was defined by the OS, but lived in user space,
> so responsibility for its allocation and management was left to
> userland code. This way, it neatly avoided being counted against OS
> overhead. ;)
> 
> Then came Unix (and possibly also MULTICS and TENEX), where when you
> opened a file, all you got back was a small whole number*, a “file
> descriptor”. All the state that was part of that file descriptor
> lived in kernel space, and was managed by the kernel. All access by
> userland code to that state had to be done through system service
> calls.

Multics and Unix are actually older than VMS.

But newer OS also has various blocks. Not the same
as VMS but other.

On your Linux system look in /usr/include/sys/*.h,
/usr/include/bits/*.h and /usr/include/linux/*.h.

Some of them VMS even inherited due to C and POSIX
(struct tm, struct stat etc.).

On Windows lots of structs are defined in
windows.h and what it includes

To mention a few random: CONSOLE_SCREEN_BUFFER_INFO,
NTFS_VOLUME_DATA_BUFFER, MEMORYSTATUS and
IP_OPTION_INFORMATION.

So RMS got FAB, RAB, NAM and XAB* and QIO got
FIB and FAT. Different types of blocks but
still blocks.

Arne






More information about the Info-vax mailing list