On 23/06/10 11:44, Michael Schnell wrote:
On 06/22/2010 05:18 PM, Florian Klaempfl wrote:
At least according to Linus, the kernel api/syscall interface will never
break.

Regarding Threads, as far as I understand, the thread aware APIs (e.g.
NPTL and FUTEX) have been added, while the other APIs were not affected.
(No wonder, as I understand that the "Linux Threads" were constructed on
top of the non-thread "process" APIs (e.g. fork and Inter-Process
Semaphores) by the pthread library.

These "APIs" you're talking about, are just system calls. There are no magic NPTL APIs: both NPTL and LinuxThreads use the "clone" system call. In order to implement Posix threads, some things needed to be improved in the kernel, though, and there were also some new system calls (tls for x86/64, exit_group). futex was added before NPTL, so NPTL uses them.

Read this article if you'd like to find out how this was implemented:

people.redhat.com/drepper/nptl-design.pdf

Henry
_______________________________________________
fpc-devel maillist  -  [email protected]
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to