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.1: download - view: text, annotated - select for diffs
Thu Jan 24 18:46:19 2019 UTC (10 months, 1 week ago) by wiki
Branches: MAIN
CVS tags: HEAD
web commit by martin: Add gsoco project to make system(3) and popen(3) use posix_spawn(3) internally

[[!template id=project

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

contact="""
[tech-userland](mailto:tech-userland@NetBSD.org)
"""

mentors="""
[Martin Husemann](mailto:martin@NetBSD.org)
"""

category="userland"
difficulty="easy"

description="""
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 <wikimaster@NetBSD.org> software: FreeBSD-CVSweb