lkml.org 
[lkml]   [2003]   [Apr]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [RFD] Combined fork-exec syscall.
Do you have some work done on this issue ?


4/27/03 9:57:12 PM, Mark Grosberg <mark@nolab.conman.org> wrote:

>
>Hello all,
>
>Is there any interest in a single system call that will perform both a
>fork() and exec()? Could this save some extra work of doing a
>copy_mm(), copy_signals(), etc?
>
>I would think on large, multi-user systems that are spawning processes all
>day, this might improve performance if the shells on such a system were
>patched.
>
>Perhaps a system call like:
>
> pid_t spawn(const char *p_path,
> const char *argv[],
> const char *envp[],
> const int filp[]);
>
>The filp array would allow file descriptors to be redirected. It could be
>terminated by a -1 and reference the file descriptors of the current
>process (this could also potentially save some dup() syscalls).
>
>If any of these parameters (exclusing p_path) are NULL, then the
>appropriate values are taken from the current process.
>
>I originally was thinking of a name of fexec() for such a syscall, but
>since there are already "f" variant syscalls (fchmod, fstat, ...) that an
>fexec() would make more sense about executing an already open file, so the
>name spawn() came to mind.
>
>I know almost all of my fork()-exec() code does almost the same thing. I
>guess vfork() was a potential solution, but this somehow seems cleaner
>(and still may be more efficient than having to issue two syscalls)...
>the downside is, of course, another syscall.
>
>L8r,
>Mark G.
>
>-
>To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>the body of a message to majordomo@vger.kernel.org
>More majordomo info at http://vger.kernel.org/majordomo-info.html
>Please read the FAQ at http://www.tux.org/lkml/
>
>


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:35    [from the cache]
©2003-2011 Jasper Spaans