limiting strace?, was: failure of unzip and recent cygwin1.dll

Ross Boulet ross@rossb.com
Wed Feb 18 21:46:00 GMT 2004


> On Wed, 18 Feb 2004, Ross Boulet wrote:
> 
[...snip...]
> > Just adding my 2 cents and hopefully to learn something:
> >
> > I know how to use pipes but I don't know how they are 
> handled "under the
> > covers".  Wouldn't piping the strace to tail or grep still produce a
> > temporary file of a large size?  I don't know if the 
> original poster is
> > concerned with disk space or only the output.  If it's a 
> space issue and a
> > temporary file is created for the pipe, I can see why he 
> would want to limit
> > the strace output directly.  If its just the result, it 
> seems tail or grep
> > would be good options.
> >
> > Ross
> 
> Pipes are direct process-to-process communication devices in 
> most (all?)
> modern operating systems.  Older systems (read: MS-DOS) 
> didn't have true
> pipes, and had to emulate them with redirection to temporary files.
> AFAIK, Cygwin doesn't use temporary files for pipes on any of 
> the systems
> that it runs on.
> 	Igor
Just for my own edification and at the risk of being slightly OT....

When you run:

$ foo | bar

I'm assuming the output from foo is stored in memory and then passed to bar
as the output is generated.  I deduce this from experience when I run

$ foo | less

Less starts processing the output as it comes in.  Less would obviously
require memory to store the entire output to facilitate paging back.
However, grep would be looking at each line and only keeping what its been
told.  So in

$ foo | grep sometext

Is the memory consumed by output from foo freed as soon as grep reads it and
sees that sometext is not in the output line?

Thanks,
Ross



--
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/



More information about the Cygwin mailing list