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

  1. From: seismo!munnari!yabbie.rmit.oz!rcodi@sally.utexas.edu (Ian Donaldson)
  2. Date: Tue, 21 Oct 86 10:39:40 EST
  3.  
  4. > From: im4u!caip!hplabs!hpda!hpisoa1!davel@sally.utexas.edu (Dave Lennert)
  5. > Date: Thu, 9 Oct 86 14:06:30 pdt
  6.  
  7. >        saved process group ID
  8. >          An    active process has a saved process group ID that is
  9. >          set to the    saved process group ID of the parent
  10. >          process at    the time of creation of    the process (via
  11. >          the fork()    function).  It is reset    to the process
  12. >          group ID of the process when the process successfully
  13. >          calls one of the exec functions.
  14.  
  15. What is the significance of the "saved process group ID"?  How is
  16. it different to the normal process-group-ID?  Who uses it?
  17.  
  18. >        In section 3.2.2.2 Description of the _exit function replace
  19. >        the paragraph:
  20.  
  21. >        with:
  22. >          If    the process is a session process group leader, the
  23. >          SIGHUP signal may be sent to each process that has    a
  24.                ^^^ should be replaced by the word "will"
  25. >          process group ID equal to that of the calling process;
  26. >          also, all such processes may have their process group
  27. >          ID    set to zero.
  28. >          If    the implementation supports the    job control option
  29. >          and if the    calling    process    has child processes that
  30. >          are stopped, they will be sent SIGHUP and SIGCONT
  31. >          signals.
  32.  
  33. I disagree with the proposal on the handling of _exit processing for
  34. job control.  It should be possible to not have to know in advance
  35. that you wish to log-off and leave something running that you started
  36. in foreground and later shifted to background.  This is a KEY feature
  37. of job control.  
  38.  
  39. vhangup() will provide clean terminals on a bsd system,
  40. and we have improved vhangup further to not just turn off READ/WRITE bits,
  41. but to actually redirect the file references to /dev/null (which has
  42. the advantage of also dropping DTR reliably). 
  43. Infinite-loop processes don't cause problems with system-response because
  44. they are automatically niced (something that is long-needed in UNIX systems).
  45.  
  46. I see no mention of a vhangup equivalent in this proposal segment, but
  47. then again, I haven't seen the whole of P1003 either.
  48.  
  49. I find the SIGHUP being sent by exiting processes to sub-proceses
  50. a plain nuisance, and it does nothing for productivity.  Nohup(1)
  51. is effectively obsoleted by job control, since the process won't
  52. receive signals from terminals when they are in background anyway.
  53.  
  54. One if the KEY things about job-control is that you don't have
  55. to "know in advance" what you plan to do.  Nohup(1) requires that 
  56. you do known in advance, and with the above proposal, nohup(1) IS
  57. required if you want to leave jobs running when you log-off.
  58.  
  59. The SIGHUP and SIGCONT signals are only sent to processes in the
  60. terminal process group when modem carrier disappears on a BSD system.
  61. Children of init that are stopped are also sent SIGHUP's and SIGCONT's.
  62. Children of init that aren't stopped aren't sent anything.
  63.  
  64. Ian Donaldson
  65.  
  66. Volume-Number: Volume 7, Number 84
  67.  
  68.