This is the mail archive of the
mailing list for the Cygwin project.
- From: Igor Pechtchanski <pechtcha at cs dot nyu dot edu>
- To: Welly Santosa <welly at mediawaresolutions dot com>
- Cc: cygwin at cygwin dot com
- Date: Thu, 5 Dec 2002 18:55:20 -0500 (EST)
- Subject: Re: Ulimit
- Reply-to: cygwin at cygwin dot com
This is quite possible, as the script was written along with the message,
with no testing. You would have a much better chance of debugging it
yourself. Some things to check are:
- whether 2304 is the WPID or the SPID,
- whether the process that you're timing completes,
- whether the trap is executed,
- whether the process you're trying to kill spawns other processes.
The list above is almost certainly incomplete, but it provides a good
On Thu, 5 Dec 2002, Welly Santosa wrote:
> Thanks for your reply. I have tried your suggestion, and I got this
> error message saying that:
> kill 2304: Operation not permitted
> where 2304 being the PID. Any more suggestion?
> Thank you,
> Igor Pechtchanski wrote:
> >On Thu, 5 Dec 2002, Welly Santosa wrote:
> >>I would like to set the maximum CPU time into a few minutes only. When I
> >>tried to use ulimit (using CYGWIN), it gave me this:
> >>$ ulimit -t 100
> >>bash: ulimit: cpu time: cannot modify limit: Invalid argument
> >>So, is this option not supported? if not, is there any other option
> >>where I can limit one process to be able to run
> >>for only a limited amount of time?
> >>PS: The reason for me doing this is so that I can check whether a
> >>process loops forever.
> >>Thank you in advance.
> >>Best regards,
> >>Welly Santosa
> >>Software Engineer
> >>Mediaware Solutions Pty Ltd.
> >As far as I'm aware, ulimit doesn't work on Cygwin, sorry.
> >However, yours is the easiest case to implement without ulimit: use a
> >deadman timer, something like this:
> > #!/bin/sh
> > process-to-check &
> > WPID=$!
> > trap "kill -9 $WPID" INT
> > (sleep $duration; kill -9 $WPID) > /dev/null 2>&1 &
> > SPID=$!
> > wait $WPID
> > RES=$?
> > kill -9 $SPID
> > exit $RES
> >where 'process-to-check' is the process you want to limit, and 'duration'
> >is the time limit (in seconds) that you want to impose. You may need to
> >do something more sophisticated if your process can spawn other processes.
> >Hope this helps...
> > Igor
|\ _,,,---,,_ email@example.com
ZZZzz /,`.-'`' -. ;-;;,_ firstname.lastname@example.org
|,4- ) )-,_. ,\ ( `'-' Igor Pechtchanski
'---''(_/--' `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-. Meow!
"Water molecules expand as they grow warmer" (C) Popular Science, Oct'02, p.51
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html