[[!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