On Tue, Jun 23, 2020 at 11:09:57AM +0200, Paul Ruizendaal wrote:
I did a (short) search on FSS/VFS in earlier,
non-Unix OS’s (Tenex, Multics, CTSS, etc.), but none of those seem to have had a
comparable concept.
Does anybody recall prior art (prior to 1984) in this area?
Surely any OS, even non unix, which offered a remote FS in addition to a local FS
implicitly implements something like a FSS/VFS?
So we could look to CP/M (and CP/Net, CP/NOS), where this[1] seems to suggest a date
between 1980 and 1982.
An appendix to that paper has the CPM file system operations (such as they were) remotely
available and
listed with their codes for the messages.
That said, another OS from DR (FlexOS) has a recognisable VFS, is written in C, but dates
to early 1985.
I'm not sure when the design dates from[3]. If one looks at this[2] article in Byte,
each of the Resource Managers operates through a VFS layer, in terms of:
#define I_GET 3 /* NET DISK CON MSC PIPE KERN */
#define I_SET 4 /* NET DISK CON MSC PIPE KERN */
#define I_LOOKUP 5 /* NET DISK CON MSC PIPE KERN */
#define I_OPEN 6 /* NET DISK CON MSC PIPE */
#define I_CLOSE 7 /* NET DISK CON MSC PIPE */
#define I_READ 8 /* NET DISK CON MSC PIPE */
#define I_WRITE 9 /* NET DISK CON MSC PIPE */
#define I_SEEK 10 /* NET DISK CON MSC PIPE */
#define I_CREATE 11 /* NET DISK CON PIPE */
#define I_DELETE 12 /* NET DISK CON PIPE */
Which can be seen in the public code for CDOS-68k.
Not all RMs implement all calls, but the NET, DISK and PIPE sort of did.
DF
[1]
https://www.autometer.de/unix4fun/z80pack/cpnet/cpnet.htm
[2]
http://tech-insider.org/personal-computers/research/1985/05.html
https://archive.org/stream/byte-magazine-1985-05/1985_05_BYTE_10-05_Multipr…
[3] The 80286 was released in '82, but I don't know when Intel started giving
early info to customers.