[FreeVMS] Status Update

BERTRAND Joel joel.bertrand at systella.fr
Tue May 5 10:17:40 CEST 2009


Roar Thronæs wrote:
> On Sun, May 03, 2009 at 07:13:19PM -0700, anthony c wrote:
>>> It is only compiled on Linux, but it is not a Linux kernel / distribution.
>> Could have fooled me, what with the Linux (2.4?) source tree under the linux/ directory, the makefile.linux makefile, and the references made to Linux, UML, and various other Linux-based kernel modifications under doc/internals. 
> 
> But even less is used as time passes.
> Linux system calls have to remain for some time.
> And the basic system setup is there.
> 
>>> Device drivers are rewritten to have a QIO interface.
>> Making the device driver interface for FreeVMS fully compatible with OpenVMS makes no sense. OpenVMS is written/compiled for VAX and Alpha, while FreeVMS is (for the moment) i386-only, unless my kernel's portability is sufficient enough for smooth cross-compilation, but it is not going to be a huge goal until it runs smooth on i386 although portable coding practices are being done in the meantime. 
>> Consider Linux, a self-proclaimed open source UNIX-like operating system, with a not-very-UNIX-like driver interface, or kernel architecture for that matter. Making a clone of an operating system, especially for an entirely different processor architecture, does NOT mean the driver interface has to be the same, although the usermode environment, C/POSIX library and binary image loading should be the same as I'm attempting to do.
> 
> Not only device drivers, but also how RMS accesses ODS-2, and how the
> TCP/IP-stack is accessed, is done with QIO.

	Ant I think we have to keep QIO too.

> QIO with ASTS is after all a characteristic of VMS.

	Right.

> And a system call too, so it must be considered as part of the user interface.
> It is basically the equivalent of Unix creat, open, close, read, write,
> ioctl, fcntl and tens of other system calls.
> 
> (Now there is also something new, Fast I/O, but I don't know much about it)
> 
>>> They have a QIO interface and are structured according to?:
>>> (snip: various OpenVMS Alpha driver coding books)
>> A QIO interface, along with the POSIX read/write systemcalls is desired (and perhaps layered) is desired, but I think we need to establish the fact that Alpha and i386 are NOT THE SAME ARCHITECTURE, and that there are no plans to even make the kernel(s?) support them both. 
> 
> Only 64-bit that is supported (and will be for a long time) is x86_64.

	And I would add that i386 is a dead arch and shouldn't be a priority. 
If I have to do some choices, I shall prefer amd64, sparc64 and maybe 
some other 64bits archs.

>> Everything at the kernel level shouldn't matter, since we have nothing belonging to OpenVMS kernel-wise to emulate for i386, and save for usermode system calls and libraries it _really_ shouldn't even matter. For an example, look at the recent work by the Debian developers to run the FreeBSD kernel under the usual Debian userspace: the kernel should be invisible and shouldn't even matter as long as it operates the userspace correctly, as basic operating system theory has it.
> 
> But FreeBSD and Linux are much alike, belonging to the same family.
> Given a set of system calls and a complete system specification,
> how many fundamentally different ways can it be implemented in?
> It will be fun for you to find out.
> 
>> The point is, as long as the userspace is compatible ...
> 
> Meaning one should be able to compile source (mostly C) code one
> can compile on OpenVMS?
> 
>>> I would really like to replace the current console driver.
>> Tell me what you'd like to see in it, or just wait until I check in the code and patch away at it.
> 
> Some of the drivers with QIO interfaces hurt a bit :)
> But no hurry.
> 
>> I document everything I write
> 
> Good habit.

	Yes, I think ;-)

	Regards,

	JKB


More information about the FreeVMS mailing list