home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / std_unix / v21 / 138 < prev    next >
Internet Message Format  |  1990-12-05  |  2KB

  1. From std-unix-request@uunet.uu.net  Fri Sep 28 00:31:11 1990
  2. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3.     id AA27875; Fri, 28 Sep 90 00:31:11 -0400
  4. Posted-Date: 27 Sep 90 17:08:13 GMT
  5. Received: by cs.utexas.edu (5.64/1.76) 
  6. From: tct!chip@cs.utexas.edu (Chip Salzenberg)
  7. Newsgroups: comp.std.unix
  8. Subject: Re: Standards Update, IEEE 1003.4: Real-time Extensions
  9. Message-Id: <550@usenix.ORG>
  10. References: <523@usenix.ORG> <539@usenix.ORG> <541@usenix.ORG>
  11. Sender: jsq@usenix.ORG
  12. Organization: Teltronics/TCT, Sarasota, FL
  13. X-Submissions: std-unix@uunet.uu.net
  14. Date: 27 Sep 90 17:08:13 GMT
  15. Reply-To: std-unix@uunet.uu.net
  16. To: std-unix@uunet.uu.net
  17.  
  18. Submitted-by: chip@tct.uucp (Chip Salzenberg)
  19.  
  20. According to brnstnd@kramden.acf.nyu.edu (Dan Bernstein):
  21. >The underlying principle is that everything is a file *descriptor*.
  22.  
  23. No one disputes the significance of file descriptors.
  24.  
  25. Nevertheless, it is important not to underestimate the simplification
  26. gained by using one namespace for all objects -- files, devices,
  27. processes, hosts, IPC entities, etc.  A filesystem is good for files,
  28. but a namespace is good for everything.  And if an object has a name,
  29. and you want a file descriptor referring to that object, why invent a
  30. new system call?  I'd rather continue using open().
  31.  
  32. >In reality, you initiate a network stream connection in two stages.
  33. >First you send off a request, which wends its way through the network.
  34. >*Some time later*, the response arrives.
  35.  
  36. This situation is easily modeled with open() and O_NDELAY.  Compare
  37. the way Unix opens a modem control tty.  Normally, the open() call
  38. will block until the carrier detect line is asserted.  However, the
  39. O_NDELAY parameter to open() avoid the blockage.
  40.  
  41. Likewise, an open() on a TCP connection would block until the
  42. connection succeeds or fails.  However, the O_NDELAY parameter would
  43. allow the program to continue immediately, with provisional status of
  44. "success".  The program could come back and check on the open() status
  45. later, perhaps with an fcntl() call.
  46.  
  47. Devices are well-entrenched residents of the filesystem namespace.  So
  48. far, all proposed reasons for keeping network connections out of the
  49. filesystem would apply equally to devices.  Do we really want to leave
  50. the filesytem free of everything except files?  That way lay CP/M.
  51. -- 
  52. Chip Salzenberg at Teltronics/TCT     <chip@tct.uucp>, <uunet!pdn!tct!chip>
  53.  
  54. Volume-Number: Volume 21, Number 138
  55.  
  56.