On Thu, 5 Dec 2002, Welly Santosa wrote: > Hi, > > 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 -- http://cs.nyu.edu/~pechtcha/ |\ _,,,---,,_ [EMAIL PROTECTED] ZZZzz /,`.-'`' -. ;-;;,_ [EMAIL PROTECTED] |,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 Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/