Stephen Hahn wrote:
[CC:'ing shell-discuss at opensolaris.org to get some feedback from there]
>   Please read
> 
>   http://blogs.sun.com/sch/entry/verexec_1_a_simple_execute
> 
>   for some background, and then review
> 
>   http://cr.opensolaris.org/~sch/on-verexec/
> 
>   I'm debating implementing some of the refinements mentioned in the
>   blog entry, as well as providing manual pages for both verexec(1) and
>   isaexec(1).

1. What do you do if a script clears it's environment, e.g. removes all
environment variables except those it thinks are "safe" ?

2. How wide will this be used, e.g. which utilties/commands do you
target with this ?

3. I have two concerns about performance:
- The extra |exec()| will be a huge pain for larger machines, e.g. on a
fully-loaded SF15 an |exec()|-storm can bring-down a machine to it's
knees because each |exec()| will do crosscalls to all other CPUs to
tear-down the address space and do other housekeepingt stuff.
- The extra time spend in the "versexec" wrapper may cause catrastrophic
performance problems if this is used for utilities which are expected to
run _fast_, e.g. "mkdir"&co. Remember we already have that problem with
ksh93's use of "isaexec" and the _only_ way we got away with that was
that ksh93 is a big shell interpreter with long startup time (making
|exec()| only a fraction of the total startup time) and that the use of
even a single builtin command compensates for the isaexec overhead. But
if this is used for short-lived things the performance penalty may be a
huge price to pay...

----

Bye,
Roland

-- 
  __ .  . __
 (o.\ \/ /.o) roland.mainz at nrubsig.org
  \__\/\/__/  MPEG specialist, C&&JAVA&&Sun&&Unix programmer
  /O /==\ O\  TEL +49 641 3992797
 (;O/ \/ \O;)

Reply via email to