File:  [NetBSD Developer Wiki] / wikisrc / projects / project / make_system__40__3__41___and_popen__40__3__41___use_posix__95__spawn__40__3__41__.mdwn
Revision 1.2: download - view: text, annotated - select for diffs
Fri Mar 12 10:56:10 2021 UTC (20 months, 3 weeks ago) by nia
Branches: MAIN
CVS tags: HEAD
couldn't find a mentor for debpkg

posix_spawn project was done by nikita last gsoc

[[!template id=project

title="Make system(3) and popen(3) use posix_spawn(3) internally"


[Martin Husemann](



The library functions popen(3) and system(3) are used to create a new shell
process and (in case of popen(3) set up IPC channels to the new process).

Currently they are implemented using fork(2), execve(2) and do a bit of
astonishing complex internal bookkeeping.

It should be possible to simplify both implementations using
posix_spawn(3) and associated helper functions.

[[!tag gsoc]]

CVSweb for NetBSD wikisrc <> software: FreeBSD-CVSweb