summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/libpthread/README
blob: 3139c731dde36054469fb4449b69cd22462a55fc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
LIBPTHREAD

  This is the pthread implementation of dietlibc.
  Written from scratch by Olaf Dreesen.

1. STATUS: incomplete but should work (or not... I had a lot of heisen-bugs...)
	On non i386 archs the kernel header have major differences...
	NO workaround yet for this problems...

It's like linuxthreads a clone base thread implementation.

I have implemented a "Manager Thread" with all the pain it involves...
Nested thread creation is now working fine...


2. HOW-TO make this lib:

	1. generate the dietlibc in the parent directory.
	   and make sure you have WANT_THREAD_SAVE active in the file:
	   dietfeatures.h

	2. change back here and type make

	and then you should have a libpthread.a


3. NOTES

NON STANDARD SIGNAL HANDLING for the threads:

  SIGHUP	the targeted thread is canceled
	depends on the cancel type of the thread.

	ASYNCHRONOUS: the signal handler will KILL the thread immediately.

	DEFERRED: the signal handler mark its thread as canceled.
		(only for the sig-handler to do some sane stuff...)

  SIGTERM	the thread is KILLED
	if the thread signaled is the main thread, then ALL child-threads
	will get a SIGHUP and after some micros a SIGTERM....