home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / std_unix / mod.std.unix.v8 / text0020.txt < prev    next >
Encoding:
Internet Message Format  |  1987-06-30  |  2.1 KB

  1. From: guy@sun.com (Guy Harris)
  2. Date: Mon, 3 Nov 86 00:50:03 PST
  3.  
  4. > I came into the Unix game late, but as I understand it, various flavors
  5. > of Unix (such as MERT, Unix' real-time cousin), implemented the file system
  6. > completely outside the kernel, I suppose as a library of routines.
  7.  
  8. Yes, and no.  They did implement it outside the kernel, although not in user
  9. mode.  The file system was implemented by a process that ran in supervisor
  10. mode and which received messages telling it to do things like read from or
  11. write to a file.  Other operating systems, like RSX-11 and VMS, did the same
  12. thing.  I believe the latest descendents of MERT, and VMS, have moved the
  13. file system back into the kernel for performance reasons.
  14.  
  15. >      If any sort of fundamental change is to be made to the file system for
  16. > POSIX, I'd prefer moving towards a non-kernel file system.  In addition to
  17. > simplifying the design of the operating system, it also allows users to
  18. > implement layers on top of the file system, such as case insensitivity,
  19. > wildcard expansion, network file systems, access methods, etc.  Gee, is this
  20. > starting to sound like streams?
  21.  
  22. POSIX does not specify whether the file system is implemented in the kernel
  23. or not.  Even if a particular POSIX implementation has the file system in
  24. the kernel, it can implement things like "case insensitivity, wildcard
  25. expansion, network file systems, access methods", etc. on top of the file
  26. system.  One system that is nearly POSIX-compatible, called the UNIX system,
  27. has done the last three of these (wildcard expansion in the shell - this
  28. could also be made into a user-mode library; network file systems, such as
  29. the Newcastle Connection and IBIS, implemented as user-mode wrappers around
  30. calls like "open", "read", "write", etc.; access methods such as C-ISAM,
  31. that are just user-mode libraries).
  32.  
  33. Remember, POSIX is an *interface* specification, not an implementation.  The
  34. fact that many (most?)  POSIX implementations, including the UNIX
  35. implementation, will have the file system in the kernel says nothing about
  36. POSIX.
  37.  
  38. Volume-Number: Volume 8, Number 21
  39.  
  40.