Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!nuchat!sugar!peter From: peter@sugar.UUCP (Peter da Silva) Newsgroups: comp.sys.amiga Subject: Putting devices in the filename space (was Re: sources to dvi2iff...) Message-ID: <783@sugar.UUCP> Date: Sun, 20-Sep-87 18:58:55 EDT Article-I.D.: sugar.783 Posted: Sun Sep 20 18:58:55 1987 Date-Received: Sun, 20-Sep-87 23:47:04 EDT References: <503@louie.udel.EDU> <1929@umd5.umd.edu> <775@sugar.UUCP> <156@splut.UUCP> Organization: Sugar Land UNIX - Houston, TX Lines: 81 Summary: Yet Another Grand Proposal. In article <156@splut.UUCP>, stu@splut.UUCP (Stewart Cobb) writes: > And while we're at it, can we get rid of device names and go to a > single filesystem? I have always hated this minor-but-annoying > difference between Amiga and UNIX. Let's not, and say we did. I used to really dislike the AMIGA-style method of having a dev:pathname, but it's grown on me. - It allows alien file systems to be easily grafted in. It's not clear to me that //machine/pathname is preferable to machine:path. - UNIX is based on a model where devices are relatively static. The AMIGA, as a floppy bades system, has to deal with volumes that pop in and out of the file system. How would you deal with this setup with UNIX file names? COPY is in c:, on device WorkBench: source file is in SomeFloppy: destination is in AnotherFloppy: copy somefloppy:source anotherfloppy:destination. [requester asks you to insert device somefloppy] [you insert somefloppy in df1:] [requestor asks you to insert device anotherfloppy] [you insert anotherfloppy in df0:] [grind grind grind] copy somefloppy:anotherfile anotherfloppy: [requester asks you to insert device workbench] [you insert floppy in df1:] [requester asks you to insert device somefloppy] [you insert somefloppy in df1:] Note: you never have to mount a file system. You don't have to prepare anything. You just swap disks. I would like to see the content of the disks themselves become more unix-like. Right now there is no satisfactory naming convention for the current directory. It's too easy to accidentally pop up a level. Concept UNIX AmigaDOS current directory . file in current directory file file ./file parent directory .. / root directory / : Syntax UNIX AmigaDos dir/file a file in dir either a file in dir, or a file in the parent directory if dir is null for current directory, or its illegal if dir is the root directory. Solution: Adopt UNIX-style path names within the device. / becomes the root of the curent device. ./ becomes the current directory. ../ becomes the parent directory. /.. is a synonym for /. A file name may be preceded by a device name, in which case the path is relative to the root of the named device. Finally, implement DEV:. DEV: is a special device that takes its first part of the file name and maps it to a device. This would satisfy the people who want devices to be part of the file system. Like me, on odd tuesdays. Doing "list dev:" would be equivalent to "assign". dev:df0/path would be equivalent to df0:path. In fact, you could even implement UNIX-style pathnames via dev:... just have it return locks and the like correctly. Then you could "cd dev:" and find yourself in a UNIX-style homogenous filesystem. You just couldn't create files in "/". It'd be rather like OS/9. -- -- Peter da Silva `-_-' ...!hoptoad!academ!uhnix1!sugar!peter -- 'U` Have you hugged yUUUUUfordputiDe