This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [ANNOUNCEMENT] TEST RELEASE: Cygwin 1.7.33-0.1


On 27/10/14 23:39, Corinna Vinschen wrote:
> On Oct 27 09:28, Luke Kendall wrote:
>> On 24/10/14 21:37, Corinna Vinschen wrote:
>>> On Oct 24 17:35, Luke Kendall wrote:
>>>> On 24/10/14 02:43, Corinna Vinschen wrote:
[snip]
>> Sure, and I thought you'd prefer the American, but I'm happy to see British
>> spelling.
>
> So, so, it's always fun to wake up people with an unusual word


[...]
>
> And the anwser is, yes, just as on Linux or other UNIXy systems.  You
> have one primary group ("None" on non-domain machines, default "Domain
> Users" on domain machines), and an arbitrary number of supplementary
> groups.  Have a look into the output of `id'.

Thanks!

>>>> 'Cygwin process tree, which[ever?] first process'
>>>
>>> Hmm.  Sounds bad, right?
>> Um, awkward and not quite clear, yes.
>>> What I'm trying to say is, if the first
>>> process of a process tree found cygserver isn't started, it will not try
>>> to ask cygserver again, and it will propagate the lack of cygserver to
>>> the child processes, so they will neither try to contact cygserver.  If
>>> you have a catchy way to phrase this in less words, I'd be quite happy.
>>>
>>> Btw.
>>>
>>> In the document I'm talking of the "first process of a Cygwin process
>>> tree" throughout.  Is it clear at all what that means?
>>
>> I think your description is reasonably clear.
>>
>>>   For a Cygwin
>>> Terminal session that would be the mintty process.  If you have this:
>>>
>>>    Cygwin process 1 starts Cygwin process 2
>>>    Cygwin process 2 starts CMD.EXE
>>>    CMD.EXE starts Cygwin process 3
>>>    Cygwin process 3 starts Cygwin process 4
>>>
>>> Then you have two Cygwin process trees with Cygwin process 1 and
>>> Cygwin process 3 being the "first processes in a Cygwin process tree".
>>>
>>> Is there a better way to phrase this in English?  Would it make more
>>> sense to use "parent" or "grandparent" for the first process?  Or
>>> any other expression?
>>
>> Hmm.
>>
>> Well, you open the section by saying:
>>
>> "The information fetched from file or the Windows account database is cached
>> by the process. The cached information is inherited by child processes."
>>
>> What about if you said:
>>
>> "The information fetched (from file or from the Windows account database), >> is cached by the first process in the process tree. This cached information
>> is inherited by every child process."
>
> Uh, that wouldn't be quite right.  Every process calling getpwuid and
> friends caches the account information it got.  So if process A starts
> B, and B starts C, process C inherits the combined cached account
> information from A and B.

Ah.

>> A little later you say:
>>
>> "If cygserver is running it will provide passwd and group entry caching for >> all processes in a Cygwin process tree, which first process has been started
>> after cygserver."
>>
>> Maybe:
>>
>> "If cygserver is running, it will provide passwd and group entry caching for
>> all processes in every Cygwin process tree started after cygserver."
>
> Sounds much better.
>
>> But what I hadn't realised until I read your reply, above, was that if
>> you're not running cygserver, that if a Cygwin process is started from a
>> Windows command in a Cygwin process tree, that new Cygwin process is the
>> root of a new Cygwin process tree.
>>
>> I wonder if the opening sentence should therefore say something like:
>>
>> "The information fetched from file or the Windows account database is cached
>> by the process. The cached information is inherited by child /Cygwin/
>> processes. (A Cygwin process invoked from a Windows command, such as
>> CMD.exe, will start a fresh process tree unless /cygserver/ is running.)"
>>
>> BTW, you could say "root of the process tree", but "root" tends to get
>> confused with (superuser) root quite easily, so care would be needed.  I
>> think "first process" is pretty clear.
>
> Ok, cool.  I rephrased the above a bit different:
>
>    The information fetched from the Windows account database or the
>    /etc/passwd and /etc/group files is cached by the process.  The cached
>    information is inherited by Cygwin child processes.  A Cygwin process
>    invoked from a Windows command, such as CMD.exe, will start a new
>    Cygwin process tree and the caching starts from scratch (unless
>    cygserver is running, but read on).
>
> Is that ok?

Yep, it's good and clear IMHO.

>>>> 'If both[,] files and db are specified'
>>>
>>> There is a comma already.  Or am I looking into the wrong line?
>>
>> Sorry, I was too terse: the comma should be removed:
>> "If both files and db are specified..."
>
> Isn't that ambiguous?  What I was trying to say is:
>
>    If both settings, "files" and "db" are specified...
>
> Without the comma, the expression "both files" seems to refer to
> the passwd and group files, not the setting I'm talking about,
> and then I'm stumbling over the "... and db ...".

I hadn't considered parsing it that way, and you're right. But your phrasing 'If both settings, "files" and "db" are specified' is both unambiguous and also reads very naturally.

>> I hope the above is of some help.
>
> Very much so.  I'm very happy if you guys really care for the
> documentation.  As a developer and as a non-native speaker, I'm never
> quite sure if my expressions are intelligible enough for non-devs.

It's good, and I (and I'm sure many others) appreciate the time and effort you put in.

> I updated https://cygwin.com/preliminary-ntsec.html according to
> the above.

Great!  And thanks again.

luke

> Thanks,
> Corinna
>

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]