summaryrefslogtreecommitdiff
path: root/community
diff options
context:
space:
mode:
authorantrik <antrik@users.sf.net>2009-03-09 02:03:37 +0100
committerantrik <antrik@users.sf.net>2009-03-09 12:36:25 +0100
commit94cc3dbdf08e4aa2ba2fc9a6e2e1f7b0deec9545 (patch)
treeca1a947dd46a00edba6bc39a50ead5bc0710db7b /community
parentd20bf273b84caf99ad41d8f1dcbd2976c535f72f (diff)
Mention cthread vs. pthread problem in language bindings GSoC task
Diffstat (limited to 'community')
-rw-r--r--community/gsoc/project_ideas/language_bindings.mdwn11
1 files changed, 11 insertions, 0 deletions
diff --git a/community/gsoc/project_ideas/language_bindings.mdwn b/community/gsoc/project_ideas/language_bindings.mdwn
index 3376754c..51defe54 100644
--- a/community/gsoc/project_ideas/language_bindings.mdwn
+++ b/community/gsoc/project_ideas/language_bindings.mdwn
@@ -40,6 +40,17 @@ even create native stubs directly from the interface definitions. The
[[lisp_bindings_created_by_Flavio_Cruz|flaviocruz]] in last year's GSoC mostly
use the latter approach, and can serve as a good example.
+There is another possible reason for preferring lower-level bindings:
+Presently, the Hurd server libraries use the cthreads threading library, which
+predates the pthread standard prevalent today. There is a pthread library for
+the Hurd as well, but it's not possible to use both cthreads and pthreads in
+the same executable. Thus, until
+[[porting_the_Hurd_libraries_to_pthreads|community/gsoc/project_ideas/pthreads]]
+is finished, implementing bindings for any language that uses pthreads (in the
+runtime environment or the actual programs) is only possible when not using the
+standard Hurd server libraries at all -- i.e. when binding at MIG stub level or
+interface definition level.
+
The task is to create easy to use Hurd bindings for a language of the student's
choice, and some example servers to prove that it works well in practice. This
project will require gaining a very good understanding of the various Hurd