Add new NS program object. This syntax is different than I had
originally anticipated, but I was worried about confusion with the Agent/Application API that NS provides, and which is substantially different than this. Anyway, I added support for this syntax: set prog0 [$ns program] $prog0 set node $nodeA $prog0 set command "/bin/ls -lt >& /users/stoller/logs/foo" Kinda obvious, although whats not obvious is that without events to start and stop them, these will never run. So, I added support for this: $ns at 10 "$prog0 start" $ns at 20 "$prog0 stop" You can start and stop programs as much as you like, but you cannot start a program that is already running; you have to stop it first. You can also issue these dynamically using the same api: tevc -e testbed/Tevents now prog0 start \ "command=/bin/ls -lt / >& /users/stoller/logs/foo" tevc -e testbed/Tevents now prog0 stop Note the quotes when using a multiword command. I also had intened to support a KILL command so that you could send arbitrary signals to a process. I added that, but I will not bother to document it yet; since I invoke /bin/csh to process the command line, the issue of signals is a little fuzzy. Sending a signal like -HUP to the parent process (the csh) is not really what we want to do. I think we can support this, but I need to poke around and see what the right way is.