This is the mail archive of the cygwin@cygwin.com 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: cygwin performance


Christopher Faylor wrote:
> 
> On Wed, Oct 22, 2003 at 09:40:10PM +0200, Hannu E K Nevalainen wrote:
> >> From: Linda W.
> >> Sent: Wednesday, October 22, 2003 12:49 AM
> >
> >> >>Perhaps it is unavoidable, but I see things like find doing 2
> >> >>'opens' /file when it is searching for files...can't it just do a
> >> >>'stat' of some nature?  does it need to do an open, let alone 2?

<snip>

The reason why stat() opens a file even with ntsec is to use
GetFileInformationByHandle 

> > I believe that the major culprit is looking for executable files. If I have
> >understood things correctly.
> >
> >$ mount -h | grep exe
> >  -x, --executable      treat all files under mount point as executables
> >  -E, --no-executable   treat all files under mount point as
> >                        non-executables
> >  -X, --cygwin-executable   treat all files under mount point as
> >                            cygwin executables

AFAIK this applies only when (smb)ntsec isn't in effect. Correct me if I am wrong.

> >I've not tried this, but anyway: I wonder what happens if one uses the
> >sequence;
> >
> >       umount /blaha
> >       mount -E / -X  / -x "MS-PATH" /blaha
> >       find /blaha ...
> >       umount /blaha
> >       mount -bs "MS-PATH" /blaha
> 
> The syntax would be:
> 
> mount -f -E x:/foo /foo
> 
> foo can be a directory or a file, as always.  This will force cygwin to
> believe that the file is not executable.
> 
> Although, hmm.  I just tried this and bash still executed a file that should
> be non-executable.  I'll have to see why.
 
bash walks down the PATH looking for anything that matches the name.
It remembers the first match but keeps walking until it finds an executable.
If no executable is found, it returns the first match, if any.
If it's a directory, too bad (a non-executable file can be masked by a directory). 

Pierre

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


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