Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!wuarchive!usc!apple!zorba!dtynan From: mayoff@walt.cc.utexas.edu (Rob Mayoff) Newsgroups: comp.unix Subject: Re: An idea probably discarded many times Message-ID: <3523@zorba.Tynan.COM> Date: 26 Nov 89 20:14:10 GMT References: <3481@zorba.Tynan.COM> <3495@zorba.Tynan.COM> <3508@zorba.Tynan.COM> Sender: dtynan@zorba.Tynan.COM Reply-To: uunet!cs.utexas.edu!ut-emx!walt.cc.utexas.edu!mayoff (Rob Mayoff) Organization: The University of Texas at Austin, Austin, Texas Lines: 27 Approved: dtynan@zorba.Tynan.COM Posted-Date: 27 Oct 89 22:11:13 GMT In article <3508@zorba.Tynan.COM> uunet!convex.COM!tchrist (Tom Christiansen) writes: >In article <3495@zorba.Tynan.COM> larry@macom1.UUCP (Larry Taborek) writes: >>Processes in Unix are alot like files though, they have user and >>group permissions just like files. > >untrue. process groups are more analogous to directory sub-trees than >to group id's. <.sig deleted> Actually, process groups aren't much like directory trees either. There are, IMHO, THREE important numbers associated with a process that have to do with permissions: real UID, effective UID, and process group number. The real & effective UID's lead to the GIDs. Processes don't have the rwx type permissions. The UIDs and the GIDs related to them determine what files are accessible by the process, and the process group number determines whether the process can write to certain terminals (so long as you are using the new terminal driver, which you are if you use csh w/ job control). I'd suggest that for a virtual /proc implementation, the UID should be the process's effective UID, the GID be something like wheel or bin or maybe some new group devoted to owning processes, and that process files have two more qualities associated with them: controlling terminal and process group (similar to major/minor device numbers). Actually, other values could also be associated - resource usages (similar to file size) and the pathname of the executable file which this process is an instance of. rob "This is vi? So when does version vii come out?"