[OpenAFS] OpenAFS on HP-UX 10.2
Mika, David P (CRD)
mika@exc01crdge.crd.ge.com
Wed, 4 Apr 2001 11:16:32 -0400
>Well, I've got it built, sortof... Had to disable all the threading stuff,
>as the pthreads provided by DCE on hpux10 isn't sufficient. It's missing
>some routines, and some defines, like PTHREAD_CREATE_DETACHED.
Yes, I see. This may offer some insight:
http://devresource.hp.com/devresource/Docs/TechTips/portingTips.html#portingtip2
says:
"Fundamental problem in porting threads to HP-UX 10.20
If you attempt to port code using POSIX threads from Sun Solaris or
Digital Unix to HP-UX 10.20, you will see errors about missing
symbols (such as pthread_attr_init) from the linker.
"The issue here is one of standards and functionality. On Solaris and
Digital's Unix your code is using native (or kernel) threads for
which the POSIX standard is 1003.1c which is also the standard used
on HP-UX 10.30/11.0. The example routine reported as absent by the
linker in your example above is a part of this standard.
"On HP-UX 10.20 your application will be using CMA (Common Machine
Architecture) or DEC Threads provided by installing the DCE
developer's filesets. These threads are defined in the POSIX standard
1003.4a, and are not true threads in the sense that every thread
created within a given process will compete for CPU time on the same
SPU. With true kernel (or native) threads, found on HP-UX 10.30/11.0,
threads created within a given executable may find themselves running
on different SPUs, thus bestowing the possibility of an element of
parallelism to the application. Thus porting code from systems with
true kernel threads to HP-UX 10.20 will result in a loss of
parallelism as well as requiring you to re-code to the less
functional API implied by 1003.4a."