summaryrefslogtreecommitdiff
path: root/community/gsoc/project_ideas.mdwn
diff options
context:
space:
mode:
authorThomas Schwinge <tschwinge@gnu.org>2008-03-27 16:51:32 +0100
committerThomas Schwinge <tschwinge@gnu.org>2008-03-27 16:51:32 +0100
commit83a7d85d60efb36d7dabe98f8ad7e3b82a8708b6 (patch)
tree676405ebfe80386117967d9bd090f47251c482c4 /community/gsoc/project_ideas.mdwn
parentd6a6f18e8b3ed8bb12b1b9116ebabc9b97d234bb (diff)
community/gsoc/project_ideas (convert Hurd servers to pthreads): Amend with some links, etc.
Diffstat (limited to 'community/gsoc/project_ideas.mdwn')
-rw-r--r--community/gsoc/project_ideas.mdwn16
1 files changed, 11 insertions, 5 deletions
diff --git a/community/gsoc/project_ideas.mdwn b/community/gsoc/project_ideas.mdwn
index 7b45f666..de5df566 100644
--- a/community/gsoc/project_ideas.mdwn
+++ b/community/gsoc/project_ideas.mdwn
@@ -377,9 +377,11 @@ applications.
## convert Hurd servers to pthreads
-The Hurd was originally created at a time when the pthreads standard didn't
-exist yet. Thus all Hurd servers and libraries are using the old cthreads
-package that came with Mach, which is not compatible with pthreads.
+The Hurd was originally created at a time when the [pthreads
+standard](http://www.opengroup.org/onlinepubs/009695399/basedefs/pthread.h.html)
+didn't exist yet. Thus all Hurd servers and libraries are using the old
+[[cthreads|hurd/libcthreads]] package that came with [[microkernel/Mach]],
+which is not compatible with [[pthreads|hurd/libpthread]].
Not only does that mean that people hacking on Hurd internals have to deal with
a non-standard thread package, which nobody is familiar with. Although a
@@ -388,7 +390,9 @@ possible to use both cthreads and pthreads in the same program. Consequently,
pthreads can't presently be used in any Hurd servers -- including translators.
Some work already has been done once on converting the Hurd servers and
-libraries to use pthreads, but that work hasn't been finished.
+libraries to use pthreads, but that work hasn't been finished. It is available
+as [[GNU_Savannah_task 5487]] and can of course be used to base the new work
+upon.
The goal of this project is to have all the Hurd code use pthreads. Should any
limitations in the existing pthreads implementation turn up that hinder this
@@ -397,12 +401,14 @@ transition, they will have to be fixed as well.
One possible option is creating a wrapper that implements the cthreads
interfaces on top of pthreads, to ease the transition -- but it might very well
turn out that it's easier to just change all the existing code to use pthreads
-directly. This is up to the student.
+directly. This is up to the student. Such a wrapper has been proposed as
+[[GNU_Savannah_task 7895]].
This project requires relatively little Hurd-specific knowledge. Experience
with multithreaded programming in general and pthreads in particular is
required, though.
+
## sound support
The Hurd presently has no sound support. Fixing this requires two steps: One is