load lib which linked with another lid

Hi!

help me, plz!
in qnx6.1 i have executable (say “loader”) which loads (with dlopen())
shared lib with C++ code (say libtest1.so). libtest1.so linked with another
shared lib with C++ code (say libtest2.so).

Notes of this test
1: these libs has no refferences on each other!
2: code of these lib-s are not called.
3: lib-s has no static objects such as std::string …etc

Further:
loader calls dlopen(libtest1.so) – OK
loader calls dlclose(libtest1.so) – crash ??? :frowning:(

WHY?!

I have tested it in Linux – it works!!!

now i guess that the reason are Dinkum C++
or qnx dynamic linker

has anybody any another ideas ?


Respectfully Yours
vasa

vasa wrote:

pardon,
3rd Note in previous mail is not true > :frowning:
crash happens if libtest2.so contains static objects
such as std::string.

and the same in qnx6.2

how can explain this?
what to do to avoid this?

and one more:
if there is no static objects in libtest2.so then
dloclose(libtest1.so) OK ,
BUT – Memory Fault after exit from main() ?!?
why is it?


Respectfully Yours
vasa





Why, i don’t know, but if you scan this group you’ll find that the c++ +

dlclose → crash is a known issue.

/Johan

pardon,
3rd Note in previous mail is not true :frowning:
crash happens if libtest2.so contains static objects
such as std::string.

and the same in qnx6.2

how can explain this?
what to do to avoid this?

and one more:
if there is no static objects in libtest2.so then
dloclose(libtest1.so) OK ,
BUT – Memory Fault after exit from main() ?!?
why is it?


Respectfully Yours
vasa

Why, i don’t know, but if you scan this group you’ll find that the c++ +
dlclose → crash is a known issue.
/Johan

Johan, i cannot find any offers in this group.
And as was wrote: IT WORKS ON LINUX !!!
And in qnx6.2 (with libstdc++ !!!)
I’m afraid that the problem is in qnx dynamic loader


Respectfully Yours
vasa

vasa <vv40in@newmail.ru> wrote:

Why, i don’t know, but if you scan this group you’ll find that the c++ +
dlclose → crash is a known issue.
/Johan

Johan, i cannot find any offers in this group.
And as was wrote: IT WORKS ON LINUX !!!
And in qnx6.2 (with libstdc++ !!!)
I’m afraid that the problem is in qnx dynamic loader

A lot of things work in linux that don’t in QNX, because Linux
has COW, so when things go wrong and a process tries to write
to a text or rodata page, then it simply makes a new copy of that page.

I just tried to reproduce this and couldn’t. Do you have an example,
by any chance?


cburgess@qnx.com

This issue occurs when the underlying C++ library registers an atexit
handler. Dlclose does not iterate through the atexit list, so when main
exits and it attempts to run the handler for a dll which has been unloaded
already you get a segment violation. We have a workaround we’ve developed
internally that I’ll have to dig up. I’ll post it as soon as I find it.

vasa <> vv40in@newmail.ru> > wrote:
Why, i don’t know, but if you scan this group you’ll find that the c++
+
dlclose → crash is a known issue.
/Johan

Johan, i cannot find any offers in this group.
And as was wrote: IT WORKS ON LINUX !!!
And in qnx6.2 (with libstdc++ !!!)
I’m afraid that the problem is in qnx dynamic loader

A lot of things work in linux that don’t in QNX, because Linux
has COW, so when things go wrong and a process tries to write
to a text or rodata page, then it simply makes a new copy of that page.

I just tried to reproduce this and couldn’t. Do you have an example,
by any chance?


cburgess@qnx.com

Here is the workaround mentioned below. Please give this a try and let me
know if it solves your problems.

This issue occurs when the underlying C++ library registers an atexit
handler. Dlclose does not iterate through the atexit list, so when main
exits and it attempts to run the handler for a dll which has been unloaded
already you get a segment violation. We have a workaround we’ve developed
internally that I’ll have to dig up. I’ll post it as soon as I find it.

vasa <> vv40in@newmail.ru> > wrote:
Why, i don’t know, but if you scan this group you’ll find that the
c++
+
dlclose → crash is a known issue.
/Johan

Johan, i cannot find any offers in this group.
And as was wrote: IT WORKS ON LINUX !!!
And in qnx6.2 (with libstdc++ !!!)
I’m afraid that the problem is in qnx dynamic loader

A lot of things work in linux that don’t in QNX, because Linux
has COW, so when things go wrong and a process tries to write
to a text or rodata page, then it simply makes a new copy of that page.

I just tried to reproduce this and couldn’t. Do you have an example,
by any chance?


cburgess@qnx.com

begin 666 dlfix.h
M(VEF;F1E9B!?7T1,1DE87T@(V1E9FEN92!?7T1,1DE87T@“F5X=&5R;B B
M0R(@=F]I9” J<6YX7V1L;W!E;BAC:&%R(&-O;G-T(“IP871H;F%M92QI;G0@
M;6]D92D[“F5X=&5R;B B0R(@=F]I9”!Q;GA?9&QC;&]S92AV;VED(“IH86YD
M;&4I.PIE>'1E<FX@(D,B(&EN=”!Q;GA?9&QA=&5X:70H=F]I9” HFAA;F1L
M97(I
’9O:60I3L"B-D969I;F4@9&QC;&]S92!Q;GA?9&QC;&]S90HC9&5F
J:6YE(&1L;W!E;B!Q;GA?9&QO<&5N"@HC96YD:68@+R]?7T1,1DE87T@*
`
end

begin 666 dlfix.c
M(VEN8VQU9&4@/&1L9F-N+F@^“B-I;F-L=61E(#QE<G)N;RYH/@HC:6YC;‘5D
M92 <W1D:6\N:#X*(VEN8VQU9&4@/’-T<FEN9RYH/@HC:6YC;'5D92 ;6%L
M;&]C+F@^”@H*<W1A=&EC(’-T<G5C="!Q;GA?9&QL"GL*“6-H87(@G!A=&AN
M86UE.PH):6YT(’)E9E]C;W5N=#L
"79O:60@BIH86YD;&5S.PH):6YT(&%T
M97AI=%]C;W5N=#L
"79O:60@"HJ871E>&ET7VAA;F1L97)S2AV;VED3L
M"7-T<G5C=”!Q;GA?9&QL(“IN97AT.PH*?2 J<6YX7V1L;%]L:7-T(#T@3E5,
M3#L*”@IV;VED(“IQ;GA?9&QO<&5N*&-H87(@8V]N<W0@G!A=&AN86UE+&EN
M="!M;V1E
0I[”@EV;VED(“IH86YD;&4[”@H):68H:&%N9&QE(#T@9&QO<&5N
M*’!A=&AN86UE+&UO9&4I0H)>PH)“7-T<G5C=”!Q;GA?9&QL("IC=7)R96YT
M.PH)"0H)“69O<BAC=7)R96YT(#T@<6YX7V1L;%]L:7-T.V-U<G)E;G08W5R
M<F5N="
E;G0M/FYE>'0I”@D)>PH)"0EI9B@A<W1R8VUP
&-U<G)E
M;G0M/G!A=&AN86UE+’!A=&AN86UE2D"0D)>PH)“0D)=F]I9” JFAA;F1L
M97,["@D)"0D
"0D)“6EF*&AA;F1L97,@/2!R96%L;&]C*&-U<G)E;G0M/FAA
M;F1L97,L*&-U<G)E;G0M/G)E9E]C;W5N=” K(#$I("H@<VEZ96]F*“IC=7)R
M96YT+3YH86YD;&5S2DI"@D)“0E[”@D)"0D)8W5R<F5N=“T^:&%N9&QE<R ]
M(&AA;F1L97,[”@D)"0D)8W5R<F5N="T^:&%N9&QE<UMC=7)R96YT+3YR969?
M8V]U;G0K
UT@/2!H86YD;&4[”@D)“0E]”@D)"0D*"0D)"7)E=‘5R;BAH86YD
M;&4I.PH)“0E]”@D)?0H)"0H)"6EF*&-U<G)E;G0@/2!C86QL;V,H,2QS:7IE
M;V8HF-U<G)E;G0I2D*“0E[”@D)"6EF*"AC=7)R96YT+3YP871H;F%M92 ]
M(’-T<F1U<"AP871H;F%M92DI("8F("AC=7)R96YT+3YH86YD;&5S(#T@;6%L
M;&]C*’-I>F5O9B@J8W5R<F5N="T^:&%N9&QE<RDI2D"0D)>PH)"0D)8W5R
M<F5N="T^<F5F7V-O=6YT(#T@,3L*“0D)“6-U<G)E;G0M/FAA;F1L97-;,%T@
M/2!H86YD;&4[”@D)“0EC=7)R96YT+3YN97AT(#T@<6YX7V1L;%]L:7-T.PH)
M"0D)<6YX7V1L;%]L:7-T(#T@8W5R<F5N=#L*“0D)“7)E='5R;BAH86YD;&4I
M.PH)“0E]”@D)“0H)“0EF<F5E*&-U<G)E;G0M/G!A=&AN86UE3L"0D)9G)E
M92AC=7)R96YT+3YH86YD;&5S3L"0D)9G)E92AC=7)R96YT3L"0E]”@D)
M”@D)9&QC;&]S92AH86YD;&4I.PH)?0H)”@ER971U<FXH3E5,3"D[“GT*”@IV
M;VED(’%N>%]D;&-L;W-E*‘9O:60@FAA;F1L92D>PH)<W1R=6-T(’%N>%]D
M;&P@G!R978LF-U<G)E;G0[”@EI;G0@:3L*”@EF;W(H<’)E=B ]($Y53$PL
M8W5R<F5N=” ](’%N>%]D;&Q?;&ES=#MC=7)R96YT.W!R978@/2!C=7)R96YT
M+&-U<G)E;G0@/2!C=7)R96YT+3YN97AT0H)"69O<BAI(#T@,#MI(#P@8W5R
M<F5N="T^<F5F7V-O=6YT.VDK
RD*"0D):68H8W5R<F5N=“T^:&%N9&QE<UMI
M72 ]/2!H86YD;&4I”@D)"7L*"0D)"0H)“0D):68H+2UC=7)R96YT+3YR969?
M8V]U;G0I”@D)“0E[”@D)"0D);65M;6]V92AC=7)R96YT+3YH86YD;&5S("L@
M:2QC=7)R96YT+3YH86YD;&5S(“L@:2 K(#$L*&-U<G)E;G0M/G)E9E]C;W5N
M=” M(&DI("H@<VEZ96]F*"IC=7)R96YT+3YH86YD;&5S2D"@D)"0D)8W5R
M<F5N="T^:&%N9&QE<R
E86QL;V,H8W5R<F5N="T^:&%N9&QE<RQC=7)R
M96YT+3YR969?8V]U;G0@B!S:7IE;V8HF-U<G)E;G0M/FAA;F1L97,I
3L*
M"0D)"7T*"0D)"65L<V4*"0D)"7L*“0D)“0EF;W(H:2 ](# [:2 (&-U<G)E
M;G0M/F%T97AI=%]C;W5N=#MIRLI"@D)"0D)>PH)"0D)"0EC=7)R96YT+3YA
M=&5X:71?:&%N9&QE<G-;:5TH
3L*“0D)“0E]“0D)“0D*”@D)“0D)9G)E92AC
M=7)R96YT+3YA=&5X:71?:&%N9&QE<G,I.PH)“0D)“69R964H8W5R<F5N=“T^
M:&%N9&QE<RD[”@D)“0D)9G)E92AC=7)R96YT+3YP871H;F%M92D[”@H)“0D)
M"6EF*’!R978I”@D)“0D)“7!R978M/FYE>‘0@/2!C=7)R96YT+3YN97AT.PH)
M"0D)"65L<V4*"0D)"0D)<6YX7V1L;%]L:7-T(#T@8W5R<F5N="T^;F5X=#L*
M"0D)"0EF<F5E*&-U<G)E;G0I.PH)"0D)"61L8VQO<V4H:&%N9&QE3L"0D)
M"7T*“0D)“0H)“0D)<F5T=7)N.PH)“0E]“GT*”@HOB!R971U<FYS.B @,"!I
M9B!N;R!M871C:&EN9R!D;&P@=V%S(&9O=6YD(&%N9"!H86YD;&5R(’-H;W5L
M9"!B92!A9&1E9"!T;R!G;&]B86P@871E>&ET(&AA;F1L97(@;&ES="P
(” @
M(” @(” @(” @(#$@:68@;6%T8VAI;F<@9&QL(’=A<R!F;W5N9”!A;F0@:&%N
M9&QE<B!W87,@<W5C8V5S<V9U;&QY(&%D9&5D('1O(&ET<R!A=&5X:70@:&%N
M9&QE<B!L:7-T+ H@(” @(” @(” @(” @+3$@:68@;6%T8VAI;F<@9&QL(’=A
M<R!F;W5N9”!B=70@:&%N9&QE<B!W87,@;F]T(’-U8V-E<W-F=6QL>2!A9&1E
M9”!T;R!I=’,@871E>&ET(&AA;F1L97(@;&ES=” J+PH*:6YT(’%N>%]D;&%T
M97AI=“AV;VED(”@J:&%N9&QE<BDH=F]I9"DI"GL*“41L7VEN9F@:6YF;SL*
M”@EI9BAD;&%D9’(H:&%N9&QE<BPF:6YF;RD@)B8@:6YF;RYD;&E?9FYA;64I
M”@E[”@D)<W1R=6-T(’%N>%]D;&P@F-U<G)E;G0["@D)"@D)9F]R&-U<G)E
M;G0@/2!Q;GA?9&QL7VQI<W0[8W5R<F5N=#MC=7)R96YT(#T@8W5R<F5N="T^
M;F5X="D*"0D):68H<W1R<W1R*&-U<G)E;G0M/G!A=&AN86UE+&EN9F\N9&QI
M7V9N86UE2D"0D)>PH)“0D)=F]I9” HBIA=&5X:71?:&%N9&QE<G,I’9O
M:60I.PH)“0D)”@D)"0EI9BAA=&5X:71?:&%N9&QE<G,@/2!R96%L;&]C*&-U
M<G)E;G0M/F%T97AI=%]H86YD;&5R<RPH8W5R<F5N="T^871E>&ET7V-O=6YT
M("L@,2D@B!S:7IE;V8HF-U<G)E;G0M/F%T97AI=%]H86YD;&5R<RDI0H)
M"0D)>PH)"0D)"6%T97AI=%]H86YD;&5R<UMC=7)R96YT+3YA=&5X:71?8V]U
M;G0K
UT@/2!H86YD;&5R.PH)"0D)“6-U<G)E;G0M/F%T97AI=%]H86YD;&5R
M<R ](&%T97AI=%]H86YD;&5R<SL*“0D)“0ER971U<FXH,2D[”@D)“0E]”@D)
M"0EE;’-E”@D)“0D)<F5T=7)N*“TQ3L"0D)?0H)?0H)”@ER971U<FXH,“D[
M"GT*”@IS=&%T:6,@<W1R=6-T(&UY7V%T97AI=%]F=6YC"GL*“7-T<G5C=”!M
M>5]A=&5X:71?9G5N8R J;F5X=#L*“79O:60@"IF=6YC2AV;VED3L"GT@
MFUY7V%T97AI=%]L:7-T(#T@3E5,3#L@II;G0@871E>&ET*‘9O:60@"IH
M86YD;&5R
2AV;VED2D>PH)<W1R=6-T(&UY7V%T97AI=%]F=6YC("IF=6YC
M.PH*"6EF*’%N>%]D;&%T97AI=“AH86YD;&5R2D"0ER971U<FXH,“D[”@H)
M:68H9G5N8R ](&UA;&QO8RAS:7IE;V8HF9U;F,I2D*“7L*“0EF=6YC+3YF
M=6YC(#T@:&%N9&QE<CL*“0EF=6YC+3YN97AT(#T@;7E?871E>&ET7VQI<W0[
M”@D);7E?871E>&ET7VQI<W0@/2!F=6YC.PH)“0H)“7)E='5R;B@P3L"7T*
M”@ER971U<FXH+3$I.PI]”@H*=F]I9”!E>&ET*&EN=”!S=&%T=7,I"GL*“79O
M:60@F%D9’(["@ES=’)U8W0@;7E?871E>&ET7V9U;F,@FYE>'0["@H)9F]R
M
#MM>5]A=&5X:71?;&ES=#MM>5]A=&5X:71?;&ES=" ](&YE>'0I"@E"@D)
M;F5X="
"6UY7V%T97AI=%]L:7-T
M+3YF=6YC
"D[”@D)9G)E92AM>5]A=&5X:71?;&ES=“D[”@E]”@D*“6EF*&%D
M9’(@/2!D;’-Y;2A25$Q$7T1%1D%53%0L(F5X96-L<&4B2D"7L*“0E$;%]I
M;F9O(&EN9F[”@D)=F]I9” J;&EB8U]H86YD;&4[”@H)“6EF*&1L861D<BAA
M9&1R+“9I;F9O2 F)B!I;F9O+F1L:5]F;F%M92 F)B H;&EB8U]H86YD;&4@
M/2!D;&]P96XH:6YF;RYD;&E?9FYA;64L4E1,1%]'4D]54"DI
0H)“7L*“0D)
M=F]I9” HE]?97AI="DH:6YT2 ](&1L<WEM*&QI8F-?:&%N9&QE+”)E>&ET
M(BD[”@H)“0ED;&-L;W-E*&QI8F-?:&%N9&QE3L"0D):68H7U]E>&ET(“8F
M(%]?97AI=” A/2!E>&ET0H)"0D)7U]E>&ET’-T871U<RD[”@D)?0H)?0H*
M"5]E>&ET*’-T871U<RD[”@D*(VEF9&5F(%]?1TY50U]?”@EF;W(H.SLI.PHC
M96YD:68*?0H*“G9O:60@7U]A<W-E<G0H8V]N<W0@8VAA<B J97AP<BP@8V]N
M<W0@8VAA<B J9FEL92P@=6YS:6=N960@;&EN92P@8V]N<W0@8VAA<B J9G5N
'8RD*>PI]”@``
`
end

Thanks.

A lot of things work in linux that don’t in QNX, because Linux
has COW, so when things go wrong and a process tries to write
to a text or rodata page, then it simply makes a new copy of that page.
pardon, what is COW?

I just tried to reproduce this and couldn’t. Do you have an example,
by any chance?
it is in attachment. see README in it.


Respectfully Yours
vasa




begin 666 loadtest.tar.gz
M’XL(.P,ACT"^P]7?:R*[]-3YG_P<U25M(\8V'_?1IN<20KO<I2$;DK;[ M>GLXQAZ";XU-;9,FV]O]VY\T8X,QD(^^!+*[]FF#F9$T&LU((WLTPG9U,V!^ M(#^ZOZM0*!8JE1)^\BOY*>XKI:)2+)0UI?BHH.!=Z1&4'JW@&ON![@$\\EPW MN KNNOH_Z65'XW_<J!V\;=S/^"N%0KE<7#;^2JE<GHR_6E$07E4KQ4=02,?_ MWJ^3@>6#:7G,"%SO$@S7"73+\8'F!'P=6,83#9T’3_P=“R3.B<M\ .S6L4”
MRSF#'AOHUKD[]L!RH/[.?@#W6,FN+W
($E?PM)?#S^4\PH%3=JQC&RDB3M
MGS9;!Z [)AR?‘DJ2-W9@P#Q6E;9AJ’]F^)&7NUBH#^WWT/S!-ZWCW_I2))M
M]8@Y)>^[2#/\IM
W7 ZP;?“MH67CF&5+V6L8Z]F> %?H0_R"O!H/>.,!N M]_O8I!. @S7^2#>8)+I,,F%]R\&.8 =X<[+A#E$.^>%G;)4W.2W)SC!E6\YG M'[Y:P2#.G92A)I&-2^3GG('C@G\Y[+DV\N:"QWS7/F<HF"&*'T:>>^;I0S!T M&^M-VQTQ)Q-K(RN1X.)]1XY)E9'AP'7S4L9G#(@_@MM"D3B0.W(,`H$A&V;S MTLF .9#1^P'S8.PCW@AY\*'A8$$64&I1VXCDL]G&I7UWVKGIG$%-"BPC&GHA M@=A<X6WZ;%)/8V4Y5F#IMO4[,F".^8Q"LI[N64QTB$1A(&-21L&FJM%PJ+O@ ML(M8@9*5:MA5$V^],<UE09\Z(0:QIQN?P?5,YN4EJ>;#I3O&6@=04%5!@9"- M$!N^XIP1R%(F)FL^P%0W=D)Q5XD"?$Q*^%-6XGS&. +#TWV4`$C2`[3_I&OW MM?ZC_;]J_:^456[_"^5"12MH9/\UK$[M_PJNK<=RSW)D?R!)[&+D>@$<M+H' MC?W3-WM*5-(ZZ+::^\>UX]^Z1[63G_>V$P75[:/W![*PDMM'Q^UZH]-I'\N^ M.ZU09RND+68,7$@2DJ2MO'SQC[+LRJ$FY?JD>;HW#$9=7*.8=8[Z2_BF:>(" M,0/EL,!P/4;5"ZE$^BMMG9D]F >1SW5/-L?#D1\6YHG<$I;&@67[G-A\];1. M<!FOE[:N)6!8BXC&>K>8(T-W?=L]0X"\,@<RK926Z/]D,5NY_Z<6J([\/ZU< MKE30%BB:6E13_5_%9?4=]'3@UWK[\'7SC11^[GW!1;UOG>%TD)B#?A+Z<88] M-AEL9T(0] *V&A_JK=.#1K>]_Z\./-]#9R'OPC&ZBP'K7-)\JXW0<:$EUX7Y M`NX4_#IF8Q8K/=(#=$"<EH[K<T!0UG!DLSKG9HPNJ,N!/'=$17C[VKI@)MX' MZ W4T4,]0R]V@C:ATC1]?=K(/.-MX:$@2TP?+@+8UWW+B,AASUL'KUNU-[PJ MU]K.H&W[5Z-^TCUNMT^RD27,U(].LS+YI38ON0&6.H>E)AI[;^_FA%G.F9?H MMEK&?+WP*Q?53%"0NC$:)0I#Z*YIVTO:6HS6W.<M^*[QF07(;Z?=?=<X[C3; MA[ 'V('&AY/C6K=S^OIU\T.#@Q*1^M$1U.N2=%A[V]B+C.-VIH,20<RL=-II MO&ZV&GN25*_'>H$^V6Q)NS#S]4R5XKT^2PJPSRX,-@HL?*19(%KAPB;[A$\= MS</.2:W5.F@>[\DF.Y>=,?$QU8JWOQ"SG7 LOPQUPW-]4A]LXAVUP:6Z![/? MEXRHU#FNOZ,%D0#X/#DXC>8),FTRFLE5>(O/27GQ)3^RG#Y-S+@H3KO[G8-N MIWUZ7&\L9Q7-WQD+.*]3F-FIB</5_>*-;<:AI$?I]==[_T/NPH-X_U<B_[^@ M:>G[OY6//QF4OF6SU?I_-#UP_(N5LE91M4J!_+]B^OYO-5>KV3G9>U<[;M8. M3R;V'Y^TQI[/R-BG%O)O9/_=^UD!?L#^TS9 :O]7/_[WL@)<:_\U18Q_H:+@ M#"#[7U'*J?U?R?-_:/+S>1G_35X"I4[^W\W^BY<6Z[?_Y LJ:K%83.W_&L;_ M7IX";SK^A7*AI/+U7RM4U'3\US3^_EV[@;?1?[52H?$OJ>GS_QK'_V[=P)OZ M?ZC_Y0+?_RTI6NK_I?Y?>JU)_VW3-._V^:]R1?R?6H[6?]1[?/ K*$6M6$KU M?Q67//8]'@'B!"X.?LXV(6=>0NYWH!U5R/6 V7U-S5G:/\J0RX71?9//(5 % MXF)=N'N5H_@WY@&G;%L]G$Q?G L*2U"!SR\J,[S RKM3F#.#\'HA%[*:_Y]2 M7B.H'CNSG/KSYPB<&\2C./(*''F6ZUD![??F6GG\'Y&/;D/J]'7@#IE\KONZ M[/N^G)CU:/G$[JN8_M@7$81VN2=BN'*#>/A7#OF^DERD1'&<WR+>JDG.KA;! M=+<RUK_%I3&V_< TGC^/%0P!;MP0`2%,7H_A&S@K',CMAR%^L8K.CQ"^?MR9 M8XI1CT\9)^^F%GM5]E]9G?TOE4+[3WM ]/Q?+*;^7VK_[\[^3\T51:_<=C7X M"UC_U/BGURWLOZ[K=_G^YVK[7U#5R/_'QW^5WO\4E5(:_[F2RV=HY"\D;TA1 MQ/EH_'?(:M$?B<[B/)5XM+9^T^NVX.+L!*X\NI>^=EB__M_Y'O#-XG^T2HGT MGN__%DM:>OYC)5<:_Y/J?TS_[^44R+7G?Y7)_H^J%>C\1U$M*:G^K^3]_X^? M_[@RK#]Y"&!Q-/\!!?]WCFKUQIXX(C%3B3C=SDE+DJP^^P(995?)SI_,.#RH MY]V0R04G!7[D<,220P'34P'&LO,`B7,)6XF#"5O)DPGQ^OY1LSYS=&&^('9T M8>[413@:R8,#L2C^Z+GV=L<6T!%,B@YRMGC$G(.RH_,2LX<>.'9#6D"R(4G) MXM8ROJ.S,?C1?GO4/CT\Z(8+5U:Z@MMDG7V=$&YP((*VROX:9R(2]G]-\7^E M2?Q'A>=_H%# U/ZOS/]#M5KD^Z7.W]_._[N7",!;Q']5R@7:_U7+2AK_LY[Q MOX<5X ?LOUI,[7]J_]-KU?JOKM?^%RL%K2+L?SFU_VL9_]7;?T4IE:/Q+ZGE MDGC_D]K_E5Q;^\W#SA[EV*$M'YH$OJN X;JVV_N/,BU3HS)U6J;QM#.B6)L6 M%R5.,X21MA80G<GB5IUNY.-#M;1Q1GO7_?@F=Q1M0&]$8/LE[<%O_S-ZDJ>] M_^2./3W_#PBD/W =U\OY`6$[;JXWMNR MIN:?!<Z7/1D;#*GR5'I\KWI"#Z" M#&NC8FEKXXMA0.X=8G=%'7*I.V<Y8ZY/(I'&K7LVS;^!_</V?JW7XTTLH\>Q MEE&-R-R2&6EC>)Y(K339090DPV:Z4Y4VQ,**R M_Q^-?;3_7RSQ\Q^*FL;_KL;^3_*_\4B \^61`+[-V B4,")@*_JZ@M `6TG# M`^Y=_RGO:-ZXES:N]O\4M:*%^W]:I:!6^/G_4D%+]7\5E[P#VTVS"F+XC=US M4/)%4-$HRX6*K!9 *52+6E51X5SW+=NRH'$Q@FT)$*_#4^E6PWA(X]R7*<U@ MER0E]RC5JCZ^Z'H,'0&?\?5%#I,8MG#2G4PG';5*%'/_[XO8VL?6P+!UWX>^ MZX%NV\ \S_5\K*3Z0_><#7O,HTXJN_ N[%;']=S/EA,"U=W1I6>=#0+(&%D. M";U+J.O#GN7I6.N-\@160^(<S*<,OLP[9V;^SCJRW7+/X@/#A7[,SBT?/4@^ M3 O'*1HH@LZ'W8EA:1%662YHH!2KBE95M>NPU!B62FUIY6JI<AV6,H=50L09 M+-VD)+J)>2$HW9$4&XYINV<D/%F2Y2V1UQDZ;;Z#/%_2;1XV9TOKK4;M4)*V MHC=D+_U+7[;<'#*='[Q*E#ML3*D$7:J)5P6FY<Y"CQT+2Q,4`A.]Z=DRT^X; M#B<WY>KXI'70%1O#_/;-<?OTZ+_BMM7>K[6N@&VUZUB/`. Z]B5/C-UW;=O] M2LF7'S]^+"UM1%">U+?:;XKUHZ-NJ_&NT8+"M (E>-(];)QTZ^WC1K=Q>$+I M7=O-0RRLO6W )B5][@Y=<VRSS0G2Z^9AK=7\W\95B C(<T5O<EE$$MILD'KG M!YM8&%R.&,4SG+N6N0.9'6JJ/W:,;I#-G!ZW2/U9@.H;9I3<!8X+.V@A=D,D MG)&CP,N^B%&SG J6’[5D1-(?4?M9QDK$X-<3',>RC6*9\XC0LXH.8W!*? M=7I"&H_R^1#BC’M^I4Y&8A?AICKZ0ML)XAWAWD3]#4(RS2’SPV@LKR!CX
M@+<#?O:;M-$?X2P-^I#!4>=WX273_Q7_W8V=WU$F:\6,D;C;P64RCN?%^G"
M/_)\X9\0C[#.4(T)PW
R+S:D#8; D,DI6/5=<+$#P\LPF[G@9:0’V*'L[A# M;PGVHG3G5+4K9MYA^_U_I[.16D+)9AXC..'.,0N;8G)5/S[QB;5=T0RB;9 4 M<*2H,YDLE7S')U06C#T'D!KG,XQRYQR-??V,A:PZ0VHL:FKSE*JJ\ 1E@/XR MO3&C)/*?\)M%?PS>,.*\B.%0DONOLIO R.5("1VPX*N%ZTG@75)&>)ZVEV>M M9U_&S,%U-A3RA!K.2,<-HH3[:#=R/D]K/YN!'S4ZB096GN71"'N6CA.;0C1X MJO8PU.3YWJ+$GT\A%M*QEYWCA;\TP2IYFFEX.4R4^W@YQ#3;<1*&V;B\H\@6 M2&LJ"4KX3OGB\?'AS&8X_!Y*&B?J7(,YBV@-46UX&OZQ+U+2A]9)<C@P.D>$KQ M%S?S%(PY"J$((%3'"3)D<-KJSF4DO5G]X$:&5OL,W>G>F;$+?.;MT)?S&2W9 M*^SBARH^M+T"$B-0V*$9]5'[%'[?@3X5H$X1A+!BR"#U$%'IEECE;!(-:>/K M&<E9-P1
KD)+SD76?CV$VH.86,YTD(MIYN,8)%X0XWK5PV+=XJK)M6_A$(6
MOVX('2
PCX5/” ‘AY>.D,P8<-FS"(,M6?]9E= BSK$:<8GP1L]C^N<7$T!+
M(8=0E!E$90Q@9KT=1X4;:@^MH,J7,7P]Y_X[7?\_Q,M0*'=X(*C3G..N4$2 M=FQBZD3%"UH/R%C''0TAKK +''<T#OS,9CBM4=1\/N;A*&YNA: 3UG9CNM8! M7Z60A4QL_3-M_W*80=9VKUF@)Z/XF)/A7,T;3K*<L\S>F%%:B,>>355BP60> MW6,1KBINX!HN!8UMDH6LRO+FI Z-.!\(K.-F1D:Z9"EH!<X;_;,)Y,#U:3YL M\@*Q[@QHA<8RWJ7,4X3:?<J\W0)G<+JN0S^27&RMCTGN>B]E(KW^5'@S8NHO ME=.<H#8XC0SG?1>07R%X,H&"+K="F9NX3I.U<'X0OT?NQ'1^<I<79!G[@9I% MORT2SR\_G;43E9J?NKSX1M-AQFN!2/ZSOLQT""('J1L"3(W.XZG 97E^OL[[ M-&&/J@F*U2?^D%-A,Z’9"(\60ZQJ]59MZY:C>CE^4^ N)<14BCMA+S"'UJY
MD<2B’V4A!XA\F(BWA-W97+ H"XBY=F’I6C5$K]KLI /V@9:2#]:T)=3YQ!7
MT]86TYZZLNIAS#+Z3\,TZNEIO<'3:_V%S>]BXT!.'SFW\XD:#$M29#C2BCP MI_#JC'J(EQTW-O 06K_4T-_6T$>22PZ'$CZ5"IR9IVS"IF<&?/I>\+@]>9 M MT./$#^W_J6O._ZA5:*= Y'],?_]Q]?N_Z@/*_YC&_ZYK_!]&_L<T_^L:Q_\! MY'],X_]6<J7Y']/XCWG]7VW^1R6>_Y'__E]12\]_K"C^X\^8_TN];?ZOP<S/ M1%^=P4M-9/!2T_R-:0JOOY/]?QCY?]+\'RNYTOP_J?[']'\M^7_4RN3]GUI0 M>?YOM9SF?UW-\]]#RO^C+LG_L^ZT/ELW2J[C>\:B-#SY"+UY&!:*TG4F"[JS M!$"WR/.3YMOY$]C_!Y/_1TGS/Z[._TOS/Z3Z+_2?_N:-.SX&=HW^%U6M$NW_ M%,/SGY7T]U]6<]W)$16?CKR<S98QSYN<@N'!)9$WET1[%3_+\=)RL93IPU>3 M,PY1W2:?FX--2:)P6G^D&PPF[N,W.G!.1[ZP!3I!!-\D@-&XA\Y*5=KHN:X- MWMBAP(SO+R+0VC=IE’+9.%;&-/3[9)[TNW")M2JP<#RJT]&%"=“M]D7W^,D
M]F,D]A>0V(3]I11D.62C!M605:CM1G=(.:J6%M9+<>Z)_2I2W # VUUD95?”
M^]ZXWV=>II!-C@'6[8+/
(8%1[>,]__!0)8"!B^5S1T%‘W@HMP$ABCN4O’+
MVLZK#=P,Q+[“TCLSY#H]^VQ/Z &'<<3(.8)GW<\-$E==A7I&Q6JV*R93;% M9Q4;C-I>Q _O.E#'Z=_D'(F/_W*OC"X201''[K,OYKB)@G_$((2L4%3^1Z6@ M%C_QF,? ,T:7D!$@N[!)U<A:G#.<*AM_T !_6\3E'\2F$!1$HDER(H*F1!LX M16/1:PDZF3:VQ!E<$-D]DL8"%$&.V4%/_B1GRD/PJEN8Q7?PF;U>BXAVX8 M%!>%=Z'I"<//>)P4/UVQ@.=XN-1R(<3YNV)XK\3W;X0?RM!/!HLM&6-H_W+U M,'^/#H%$HY(<D9@>P(X_F:)DC- (Z3H=>8O#X(>*=1(WGZ%AK5:Y'<7AD7?\ MP.Z2449B$TT3)?$3,H8^TGTKN*P^,;D^YUZ=8PV*!LL-+!=Q=Q-PW_J=)4&I MC(-)]T-W1R9SO/':=5]B^2O8Z2MAAZ*B##\/R"$^).L_)&K[R@N0Y3F #5GF M:%B=:(R"JO%KID^Q?S&6_^W$A<['/SPY%$;Z!=Z8\;-#R/X./T!$YX=@>H!( MS(>=Z/Q0#7;TD"^R*#-'TY@_M@.R>J$UT:DZ6DT#&M$@R(=K*+(OPA/?ZU; M3UG_48)@@.NVB19RQ ]\Y^&$#K6),9G7#&?;0I<GCHBHX@OI)7(92;6+1[
MB&.”$S-UT-?@P>K=3+ZBJ%K[_U0JEHLKCO\KI_O]
?^I^Q]SK_F<^$;&
M)3+LM#:(.[X&D!D-#<H[9@2N)XRE0K’]W\FJ<L,4L.’(UG&I>RE<VI-7$EF_
MDU=(0=QPQYQ4/M7Y]>K_P\G_F\9_KF?‘TC^WU+Z_C=]YM>J];]>?%?F
MRJJ2VO^UC/:\O]JFC;-UL)_^F\1^K?7E/]W04C$@HR\2&N3]&[%#69
MLU>Q?DN2D5,B7"79R,.<^3^Z1,._TA:X;F@$)+9K7"C[$(SJ L1$LF&U339
M!W;_YGXFI6^ZD4RK’SOP1’\1^I_5^-8>3@>53BA<^]K2E0B;+Y/G)?)$8
MC&Z!703,X7D=G^%4>9:7MJ0M.&R?-*H\2QF[X&]ZN:GI,=O]"O[8&(#N3Y,+
M5A%!
)+?=J;=H0>/["[:K"P6FRZV1<G,OKK>9Z!4-/";.Z8M6Z!TPY3.J^<&
M@3L$T
+XBZ9+J!T>*%:)L=D](89!%UJECGGEN<Z0RR'<]T>,W ]HL/I49BK M[E"J,(=A3Z#I"'8I990O0-Z>(IT>XSP@VK1=+I))G"Q1U7ON.9*A[O%D.6$: ML# IB:SCC>7F]/]K[]IZTU:"\'/\*_8XJ82/, TA2:54J>* 29&X"4.E/E'* M+>APL6Q(VW_?F=E=8X,)02W1Z3DSBA+'^^UXK[.S]NZW\R4]:D19^X;4:]LH MR02'VC'=26Y&]:G+<.INN]*0ZRYO42T>D$BK.-4Z[F[;>7C)$C_]@5UXM2Z- MD>'C8@55#[F6I(P#S/DZJ[8MHCP2(PADU)OU@F4M'$O&U6&(&270X
(W62P
M1$3Q-IQM+8VDE94J.98>YC2J6KE/0_6G$R@L’!J?.R%PO09R9LL8O^R$; [&
M^]3]BC=C/%&)OT&
!#.O%IA:^G#,LPST4NP!]C@+X6JMJ 67T46Q^“EVW6BV
M/<O6E%<'O&4-WUDGO?>;"RJ[EJY8A;PE:KTN7JN4HUJC8NM2SC(H.K0H_ M.SI.UVOH_@"Y<_K+R=/0\7WP%WKHE[CS9? #QW+JG++%3NC[/S0['^Q.I*=6 M\8I)9;U@MO2[9*V&>K 'DW=> $=)PB3.L.XTL2)HO(K:29KV4\EU+P,L@^
MV.”;9-)1362;U+W+V#1Y8’-6WZWD2N=NRT7>&-R#D;S?MARG5+7<\KN1LB]
M![<;G59Q,^"AWDD/Z):=3XT61DP$!'J!='SU<'13Y2+5;H/5230]:IQ9V3IE
MVZJ6FBVW+(
=5 ZA;CO3<*B#;VZU"GNQ6JZAJ$I"+&N=D)1GXN]^XL’IXTRT
MT!N<34K CKJ)3(5<Y!QO[1OE@>8FZ_M]RV@VB\HDF[FO0U,#W^1@4J%[K>S

MQ6+);7J6<8+=D’+W@Z+C!%:T!RC1-0/U’JX^IL]S"-’\ A7VLU3O<*CAF+
MZ0I;?)X^],:&*9G)MM-Z<-N>H-$F-K!'8Y@M(/XYO8+1Q.'FV$/.
!(F.J^
M*?0;B5"/UHWU-!@Z$-!2RXB>6V<YIH?&_7/-VEAR#:,%S>D-"?_R?F3^0@/ M0;FCPPFH=VM=)W=@EY.%J:_L6DVW./@+5;J&((5P&G^#M,V;);:XEN6^)#R
M9".61# O=W(6DX([J&(N<GP[F’%T(9H@]=JAQNJ9=NWC?T/# !N"3"5,Z
M2Y@ZTS .+KK)B-X(B+\P.^96-%.)V_G^“4LWH\F4’K0.53;63>=PNU&[>
MEGJLLZW’Z’EP"SX):F%Y);1YW_$%=LZP=7=+:U9JUPMYB/@:X39E_P7
MH(<%0^,&GFSFCA@4EA(’+:ZU(PZ%49R4
))\3D(BG;1;9^= B[6N@+>S?”/
M%[8OOL!?(IC%(J8P(I#[$OG$47^1LR%(SM]>KB<R<;9EG+D@X;IYB@PDYQ.
M3<E+O.CW%ZN )A@WBJ%<Y$6F,IZ#^1M8IG%:[LB’PN#>NC5.[SN5:BGV?RQ9
M@ZE"3JE’RR@IX
E3>X8\I,;AOS$=$1F!1J7> +’""=Q1$0V%:4V^ I$4S>:
M#>#MT[CV>9*&T6?Q+ZK[[F0[L7C ^RC/V[O^\NHJ^USC63!X@NO_W\5
M^2/Y/
*’\G^LZ2[P-7?U.?J/-NM,<>XR?<[6$/R6^PA^3_’>PA3![“LL_^
M_T[IRW[_^XP^_G?[/]9_O/]I_M_VO9_W RMX\T!WC>E^\N[S4YW]?7UU?
MT
[?P@7S/[V
I!SWJDYX/>[!K@QG.,9SG”&,YSA#&<XPQG.<(8SG.$,9SC#
M&<YPAC.<X0QG.,9SG"&,YSA#&<XPQG.<(8SG.$,9SC#&<YPAO>>(BLC<WI
M0/0"XW^P_^,H)S^^:/W^3ER?LOSW7!>3_+IP7"KS_XS5$\W_?>&ZQ76G4
M#==I53]W2Y46\4C(4WF9&YR%A86%A86%A86%A86%A86%A86%A87ECY
?C41,
%.@80``
`
end**

Thanks,
but it was not solved those problems.
but may be – i am doing something wrong…
it is in attachment. Could You check it, please?

“Jeff Baker” <jbaker@qnx.com> wrote in message
news:am4qo2$4tn$1@nntp.qnx.com

Here is the workaround mentioned below. Please give this a try and let me
know if it solves your problems.

This issue occurs when the underlying C++ library registers an atexit
handler. Dlclose does not iterate through the atexit list, so when main
exits and it attempts to run the handler for a dll which has been
unloaded
already you get a segment violation. We have a workaround we’ve
developed
internally that I’ll have to dig up. I’ll post it as soon as I find it.


Respectfully Yours
vasa




begin 666 loadtest.tar.gz
M’XL(. 6ACT"^P];7/:2-+Y:E7M?^C8S@8<@Y#$RQV)4P_&),LM,5YC)]G+
MI2@A#487(1%)./;FLK_]Z9Z10 CP2]8&[ZY4B1$SW3T]W3,]+4U/8[NZ&3 _
MD!=WU4H% N52@D^97%/>54E$IFI1Q7M%6(1E!ZMX!K[@>X!//)<-[@
M[KKZ/^EE1_H_;M0.WC3N1_]H5 N%Y?I7RF5RZ’^“V6UHB”\JE:CZ"0ZO_>
MKY.!Y8-I><P(7.\2#-<)=,OQ@<8$?!E8Q@!,-G0=/!T+),Z)RWP[-:Q0++ M.8,>&^C6N3OVP'*@_NP9^ /=8R:XO?\B25_"TE\.WY?S"OPH;M2,8V0E2=H_ M;;8.0'=,.#X]E"1O[," >:PJ;<-0_\3P(R]WL11!?VJ_@^8)O&L?_]R1)-OJ M$7-*WG>19OA-I6^Y'&#;X%M#RT:=8I4O9:P!CKV9X 5^A#(
&@]XXP&[W
M^]BD$X"#-?Y(-Y@DNDPR87W+P8Y@!WASLN$.40[YX2=LE3<Y+<G.,&5;SB<?
MOEC!(,Z=E
$FD8U+Y.><@>."?SGLN3;RYH+’?-<^9RB8(8H?1IY[YNE#,'0;
MZTW;'3$G$VLC
Y’@XGU’CFDJ(.!Z^:EC,\8$’$MX4B<2!WY!@$D,VS.:E MDP%S(*/W^;!V$>$?+@0/!@BR@UV$<EGLXU+^^ZT<],Q@S,IL(Q(]4("
ML;’"V_39I)YT93E68.FV]1LR8([YB$*RGNY93’2(1&$@8U)&P::JD3K477#8
M1:Q R4HU[J)M]Z8QK@3YT02NSIQB=P/9-Y>4FJ^7#ICK’611455 @9"/$ MAB\X9@2RE(G)FBN8ZL9.*.XJ48 /20E_S$J<SQA'8'BZCQ(27J ]I_FVGVM
M_VC_KUK_*V65V_]“N5#1"AK9?XW6_]3^W_^U]5CN68[L#R2)78Q<+X”#5O>@
ML7_Z>D^)2EH’W59S_[AV_&OWJ’;RT]YVHJ"Z??3N0!96<OOHN%UO=#KM8]EW
MIQ7J;(6TQ8R!“TE"DK25ER_^499=.9Q)N3[-/-T;!J,NKE’,.L?Y2_BF:>(”
M,0/EL,!P/4;5"ZE$\U?:.C-[, \BG^N>;(Z’(S\LS!.Y)2R-\OV.;'YZFF= MX#)>+VU=2\"P%A&-]6XQ1X;N^K9[A@!Y90YD6BDMF?^3Q6SE_I^*!F#B_Y=* M"*=HJJ:E\W\5E]5WT-.!7^KMPU?-UU+XN?<9%_6^=8;#06(.^DGHQQGVV&2P MG0E!T O8:KROMTX/&MWV_K\Z\&P/G86\"\?H+@:L<TGCK39"QX667!?F"[A3 M\,N8C5FL]$@/T %Q6CJNSP%!6<.1S>J<FS&ZH"X'\MP1%>'M*^N"F7@?H#=0 M1P_U#+W8"=J$2M/T]6DC\XRWA8>"+#%]N A@7_<M(R*'/6\=O&K57O.J7&L[ M@[;M7XWZ2?>XW3[)1I8P4S\ZS<KDE]J\Y 98ZAR6FFCLG;V;$V8Y9UZBVVH9 M\_7"KUQ4,T%!ZL9HE"@,H;NF;2]I:S%:<Y^WX+O&)Q8@OYUV]VWCN--L'\(> M8 <:[T^.:]W.Z:M7S?<-#DI$ZD='4*]+TF'M36,O,H[;F0Y*!#&STFFG\:K9 M:NQ)4KT>ZP7Z9+,E[<+,US-5BO?Z+"G /KLPV"BP\)%F@6B%"YOL$SYU- \[ M)[56ZZ!YO">;[%QVQL1'V+/C^EM:O@@AJ543H:9SY\W/U*5.6/=YJ!N>Z],D M0T;>$B=<]GLP^WV)WI%]D]&8KL(;?&+*BR_YD>7T:8C&A7+:W>\<=#OMT^-Z M8SD[: C/6,#YF<+,=@<5U_WLC6W&H:1'Z?57>?]#[L+:W_\5RII2(O^_0.M_ M^OYOQ?HG,]*W;+9:_X^&!^J_6"EK%56KT/M?K9B^_UO-U6IV3O;>UHZ;M<.3 MB=7')ZVQYS,R\:F%_!O9?_=^5H!;[/]HFE84[__3_9]UZ/]>5H!K[;^F"/T7 M*@IZ&3_*THYM?\K>?X/37X^+^.R4N@U+7_N]E=)B_?X_^8
6BP64_N_
M!OW?RU/@3?5?!=G_^TPH5-=7_FO3OW[4;>‘O_3RLIZ?/&O5_MV[@3?T
MG/_EM__1?6G_E_J_Z77FN:_;9KFW3[_5:Z(_U/+T?J/\QX?_ I*42N6TOF_ MBDL>^QZ/’$"%Y6?LTW(F9>0^PUH1Q5R/6!V7U-SEO:/,N1R873?Y’,(5(&X
M6!?N2^4H_HUYP"G;5@'TV?G@L(25.#CB\H,+[#R[A3FS""\7LB%K.;_6<IK
M!-5C9Y93?8,@7.#>!1’7H$CSW(]*Z#]WEPKC\C\M%M2)V^#MPAD]U7Y=]
MWY<3HQXMG]A]%<,?^R
"T"[W1 Q7;A /\HAWU>2BR91’.?7B+=JDK.K13#=
MK8SU;W%IC&T
,(UGSV(%0X ;-T1 ")/78_@&C@H’<OMAB%^LHO,]A
7.W-,
MH?7XD’'R;FJQ5V7_E=79_U(IM/^T!T3/
\5BZO^E]O_N[/47%'TRFU7@[^
M]4^-?WK=PO[KNGZ7[W^NMO%58W?WS\5RMD_Y62FMK_55P^0R-
(7E#BB+.
M1_K?(:M%?R0ZB_.CQ
.U]9M>MP479R=PY=&]]+7#^N?G>!WRS^1ZN4:-[S M_=]B24O/?ZSD2N-TOD?F__W<@KD^O.L?/?9?[^3ZVDZ]JWO]F/*/Z
MDX<%D?S'U#P?^>H5F_LB2,2,Y6(T^V<M"3)ZK//D%%VE>S\R8S#@WK>#9E< M<%+@>PY'+#D4,#T58"P[#Y XE["5.)BPE3R9$*_O'S7K,T<7Y@MB1Q?F3EU< M?Q0A>JZ]&>AM#RZ@PY@4,>1L\2@Z!V5'YRIFCSUP[(:T@&1#DI+%K67]B\[0 MX$?[S5'[]/"@&RYP6>D*;I-UT?&;/W)<@K;4'O:)B83]7U/\7VD2_U'A^1\H M%#"U_ROS_W"Z+/+]4N?O;^?_W4L$X"WBORKEOE
:CF-UF3_N]A!?@.^Z\6
M4_N?VO_T6O7\5]=K_XN5@E81]K^<VO^UZ’U]E]12N5(R6U7.+VOY3:Y5<
M6_O-P\X>Y=BA+1:!+ZK@.&ZMMO[KS(M4Z,R=5JF;0SHEB;%A<E3C.$D;86
M$)W)XE:=;N3CP[*T<49U_WX)G<4;4!O1&#[!>W!;_]?‘7MZKA\0
M2’
@.JZ7\P/"=MQ<;VS96TW-?DN=+CHR=AD3I.CTN5[TQ%\!!G61L72UL9G MPX#<6\3NBCKD4G?.<L9<GT0BC5OW;)I_N’[?U2K>;6$:/8RVC&I&Y)3/2
MQO \D5IILH,H28;-=*<J;8B=Q>T,C8ELNMX^</M_MQO
,?M_Y?X
&OMH
[](
M]XJFJ&G[VKL_R3
&X$.%>">#;C(U "2,"MJOP@-L)4T/.#>YS_E’<T;
M]]+&U?Z?HE8HYUNX_Z<6N/]?*BCI
%
%)>
=M.L@E"L7L.2KX(AIEN5"1
MU0(HA6I1JRHJG.N^95L6-"Y&L"T!XG5X
MUJ& ]IG/LRI1GLDJ3D’J5:U<<7
M78^A(^ SOK[(81+#%@ZZD^F@HU:)8NX/7\36/K8&AJW[/O1=#W3;!N9YKN=C
M)=4?NN=LV&,>=5+9A;=AMSJNYWZRG!"H[HXN/>ML$$#&R’)(Z%U"71_V+$

M6F^4)[ :$N=@/F7P9=XY,
-WUI’MEGL65PP7^C$[MWST(+F:%NHI4A1!Y/N
MQ+“T"LL%S10BE5%JZK:=5AJ#$NEMK1RM52Y#DN9PRHAX@R6;E(2W<2X$)3N
M2(H-Q[3=,Q
>+,GRELCK#)TVWT&>+^DV#YNSI?56HW8H25O1&[(7_J4O6VX.
MF<X/7B;'3:F5((NU<2KM-R9Z''CH6E"0J!B=[T+.ZF:?>MB_Q@,P:'18;# MP::<'I^T#KIBLYC?OCYNGQ[]3]RVVONUUA6PK78=ZQ$7,>^Y,FR^ZYMNU\H
M(?/CQX^EI8T(RI/Z5OMUL7YTU&TUWC9:4)A6H%1/NH>-DVZ]?=SH-@Y/
.5K
MNWF(A;4W#=BD1-#=H6N.;;8Y07K5/RUFO]N7(6(@#Q_]":7Q41H#9KR)#19
M#BY’C&(<SEW+W(’,#C75’SM&-\AF3H];9!)8@%,ZS#Y"QP7=M!J[(9(.$I’
M@9=]‘J-F.0$4L/VK8B:``ZI_:3CP&-Q:HB/.NRC6*9\XM LXL.9W!*?=7IJ M&H_R@[BZ(Z <WW:G3D5B%N*G<?M<V@IC(.+=1?X,03'.(O'!:R^L(&/@0]\. M^-FOTD9_A",WZ$,&AR%U?A->//%?_L?9W/419;Y:R!@7!"N@]-[YO$@A_H'G M$/^(>(1UAE.;,"PG^WQ#VF (#)F<@E7?!!<[,+P,,YP+7D9Z,"!V.(L[].9@ M+TJ!3E6[8N0=MM_];SH:J264;.8Q@A/N'+.P*097]<,3GUC;%<T@V@9)35%
MG0;/K6R8.PY@-0XGV’D.^=H[.MG+&35&5)C45.;IU15A2<H_2AZ2T: M)9;_B-\L^F/PAA'G>0R'$M]_D=T$1BY'D] !"[Y8N,8$WB5EB>>I?'DF>_9Y MS!Q<>T,A3ZCAB'3<($K"C[8DY_-4][-9^7%&)]' RK,\&F;/TG%@4S@&3]\> MAI\\VUN4#/1'B(5O[&7G>.$O4K!*GF8?7@X3Y4->#C'-@)R$838N^2BR!=*: M2H*2P%,.>7RD.+,9JM]#2>- G6LP9Q&M(4X;GII_[(LT]:%UDB.#S2E^,N<
M>0K&’(50!!!.QPDR9’#8ZLYE)+W9^<&-#'D&;K3O3-C%_C(VZ$OYS.S9*^P MBQ^J^-#V"DB,0&&'1M0'[6/X?0?Z5(!SBB"$%4,&J8>(2K?$*F>3:$@;7P8X M*B'CCG"2F_""<Y&%KS_@S"%L+$=:.,OI)B-8)-YPQO6KAL4[Q:<FU;^ 0A:_ M;H@Y1& ?"A\1L++QT%G##ALV(1!WMS3_M,JH46<8S7B$N&-GL?T3\G@)8 M##N$H,HB*&,"->GK/"C:4'UL!U6XBN%O/_#;;_C_!UJ 0KO!!4>=YAQS@R3L MV,34B8KGM!Z0L8X['T)<81<X[F@<^)G-<%BCJ/EXS,-1W-P*02>L[<9TK0.^ M2B$+F=CZ9]K^Y3"#K.U>LT!/M/B8D^%<S1M.LIRSS-Z845J(QYY-56+!9![= M8Q&N*F[@&BX%B&V2A:S*\N:D#HTX5P36<3,C(UVR%+0"YXW^V01RX/HT'C9Y M@5AW!K1"8QGO4N9'A-K]D7F[!<[@=%V'?B2YV%H?D]SU7LI$>OVI\&;$U%\J MISE!;7 :&<[[+B"_0O!D@5=;H4R-W&=)FOAO!
_1>[$=‘QR-QAD&?N!,XM^
M;R2><WXZ:B=3:G[H\N(;#8<9KP4B^<_Z,E,51 Y2-P28&IW’4X’+\OQXG?=I
MPAY5$Q2K3_P%@IH(G:MD(CQ9#K&KU5FWKEJ-Z.7YSX
XEQ%2*.V$O,(?7[F1
MQ*(?:B$'B’R8B+>$W=E<L”@+@J+EV0>H:-42OW6RD :&EI(/UK0EU/G$%?3
MUA;3GKH"RZF’,OI/PS3JZ6F]SM-K_87-[V+C0$X?.3?SB1HL5F2(,<GH<"?
MPJLSTT.`+FQ@8?0^J6&K:&/I)<4AU*^%0J<&:>L@F;GAGPZ7O!X;D0;9
MCQ/7[O^I:[J%5HIT#D?RRE\3\KW]5’U#^QS3^=UWZ?QCY’]/\KVO4_P/(
M_YC&ZWD2O,IO$?_-M?D?E7C^QXHJ\C^F\W\U\1]QOQ?ZFWS?PUF?B;Z
MZ@Q>:B*#EYKF;TQ3>/V=[/
#R/^3QO^MY$KS_Z3S/S;UY+A__F2_3[SX4B
M/
]53O-K>;Y[R’E_U&7Y/]9=UJ?K1MES/$]X^:I=>8!\U$SS<.P4)2N,ZG0
MG24ND6>G[]VOIT';O\?3/X?);7_J_/_TOP/Z?P7\Y_^YHT[/@9VS?POJEHE M^OV_8GC^LY+^_LMJKC]P1"5>YM$!@)DRYGF34S \D"3RYI)H+^/G-EY8+I8R M??AR<IXAJMOD8W.P*4D4.NN/=(/!Q'W\2@?.Z<@7MD GB."K!# :]] )J4H; M/=>UP1L[%(3Q[7D$6OLJ32!JF2Q\#>-WNEUR.[I=V(1:-1A8?O7)B&)"Z#;[ M_%N<Q'Z,Q/X"$INPOY2"+(=LU* :L@JUW>@.*4?5TL)Z*<X]L5]%BAL>+N+
MK.Q*>-;]O,RQ2R21U@W2[XO"*,1^&A///]7R" A8#A>T5#1]$’+LI-8(CB
M+A6_J.V\S’ *-R.QOX#$
@R)?M>^P,=G’‘P31@:=+’#1]=38=]0<IFM2H&
M6V93?%:QP:CM1?SPK@-UG/Y-SHSX^"_WTN@B$11Q[#[[?(Z;
-!’"%DA2+P
M/R@%M?B1QS<&GC&ZA(PV85-JD;6XISA4-GXG13\=1&7OQ.;0E 0B2;)B0B0 M$FW@$(U%JB7H")!I;T.4!00W3&:S@(4086134OR+&_&1_BB4YC)>_25L5J.C M';IA4 P4WH6F)PPUXS%1_"3%I[CH5’+A1#G[PKU7HGOWP@_E
&?# Q;HF-H
M_WRUFK]%!SXBK20U$IL’L.-/AB@9(S1"ND['V^(P^%BG<3-9VA8JU5N1U$]
M\HX?V%TRRDAL,M-$2?PTC
&/=-*+JM/3#Z?<R
/L09%@^4&EHL8NPFX;W&
MDJ!4QL&D^Z&[(Y,YWGCENB^P
"7L])6P0U%1AI
]XQ#OD_7O$[5]Y3G(\AS
MABQS-*Q.-$8!U/@UTZ<XOQC+W’B0N?Z#T)A5%]@3=F)P0LK
##PO162&8
M’A82XV$G.BM4@QT]Y(LLRLPQ-.:/[8"L7FA-=J.5M. -!H$^7 -1?9%.([
MW0KX*>O?2Q ,<-TVT4*.^('O/)S0381K/B43\RGFP*7IX[(*.(+S4KD,A/K M%@]61)W@P$P=]#7X_X-'*_7_"ZJJA?&?6J%45'G\5SG=_U^I_S]U_V/N-1\3 M7\FX1(:=U@9QQ]<,J.A07G+C,#UA+%4*([
&UE5;I@"-AS9.BYU+X1+>
)2
M(NMW\A(IB!ONF-.43^?>N?P\G_F\9_KD?#R3
;RE]YN^TVO5<__]>?
M)3BT_ZJ2VO^UZ’-^7\U39OF_ZV$^7_3W
]=C?^IOR"T(=%F3D70IV?8K>
MI:C)G+U2+,YW42IB2H2[/!MQF"/W3Y]P^‘O2"L%>Y#,;H4;91*:05V(D$@V
MK*;)AN_8_L_$S:ST_4]%4<I1_%^AQ,__%15Z_DOM_PKL/YP,+)2N7#=TY8*
MF2R3YR+S11(PN@5V$3"'YW5\BD/E:5[:DK;@L’W2J/,9.R"O^GEIJ;’;/<+
M^&-C+H_3218103Q2W[;F7:''CRRNVBSLEALNM@6)2[[XGJ?@-+.P*_NF+9L M@=(-4^JNGAL$[A!,R^,OFBZA=G@A&J9’)/1&V80=E9YIQ;GNL,L1S.=7O,
MP/6(#J=‘8:ZZ0VG!’(8]@:8CV
7T4+X>7.*='J,\X!HTW:Y2"9QLD15[[GG M2(:ZQQ/CA"F_P@0DLHXWEIO3G>#_V[OVGL:1)/YW_"EZ,@_9D 1">$CD&$V& M! :)EQ)8W>IT\F82!ZQS'F<G#&C%=[^JZFZ[_4@[8!V]ZHT$YSN7W=7/ZJZ
MVK&KJ
D1=>T’NEG+HZ37-ZP=^4[[850
=5FM\[5R85[O(J\4B?04IWJ.
MV[UJ’3_GT3W][OHG;FT1T:WTP5,/?1:.F <8L^3KE:K(NXC>?^ CO;&_7!^ M%MU(CZM>A #T)(?.()8[@R6G$QO1./?((STPJ=AQ]#:G4:<G7XM0@\"'P<*M M<57DO^39QG%5EOC#1DAV,WZJNC]BS5AW-.(?T2[!SJL'1QT='/.##5**$E"] MJ4"^>@;4@<OXXO#P%^/ZXO*JYS@5)RX/9L\-3/=YN_/U^MBI+"9J#3B63!+T MO"Y=JI6C/$09SYM^L%5Q6%7XLV.KY?8NM#Q [UJ#N7_GM68SL!?Z:)=T)O/P M?=R$DZY8GWZ_1^6W0ST3ES/V4GO,%U9/QS/9RYIR_$.E"B28RG(#AAEXS
M,BM-1125OY+:,;^.M8I3L#)(/U3!-K&+49?H65)+EY55>:!S%O=.^DEGM]M!
M’S’X#D8Z_>I;M]-JN[W642>3[4’R1?7W<-LQO’Y=7&&>]3ZY:+!5,9H7Y
MVGPJ.$Y4O2C4VZ!U4DN/%F=%KDZYMD[;E]W.D0RGJ0Q"O7:"R-/9^P>ZBNIT
M,4^@6)6$.$[“2$&;^#E(-5R\S\0/>H.Q20PLF9M85<B’E\W5GAD/5#>5V6S@
M6)>7ATHEEVO?O;(&?JS!H4)+K93_P-VY[+G6"440^K=\P46[6$J=@'L6B6H
MWE?5F]55.R^K\3,8Y$FMUOLG”?>,:;# %5^G’WJ-;4IV\JK5/>Y<]03M-L;&
M\MT;P6X’Y<OY&XYEW&Z/@KP2)15>EGH.Q
1W@=TW3!#0V&RW]#LEKZWWM M\MO%^:_[17GH61@O]JG2FOQ2F_F3$09!^4+!"4BZ=5VE+Z"7TX.IKZIG9WK% MP5^8T@2"[H)#X/D>CFVX++7&=QSQN:!ERV 1U,L7>8HIP+UH8K9J<K/NX\30 M0S/D*G2N>IBK7IIY/]#^``4;@DTFRM)80N[*EO7BH?-'=$= O,/NE'/%RJ)) MUL[KC[!HCGP8/1 .M7:2I?/"06V F9>K'N<LU_]76#EP"GX.M\#N$5JEDP<1 M*;9K5E6+6]&R4F^]D(6(MQ$."MZK@']H8<'6F,&3SEQ2@O(*RJ#&=9:4H3PJ M4U!$.IJ3D+A.>EMGZ4:+LZZ !^/_@!TOJC/Q&_PE9[(XQ)1'SN)^BVWB6%[D M:0C86>O5^L(V/2OCR06=*Y?5&05.DD%0ECZ(IX/!=!'26-?>2,7=6&?W$Q
M_0V=LO7^Z%HV"IM[]!Z__7ZY+1M?#?8DBG$$PCE+)R"I(F3;)-$N_"#1+
M’4=D5V!QB3LPC/ 01T['M&^EN!7-
-?"\8%KV2<O!CGE+FRTWFRF;;[R M_92_[/V?8%CMAS>OTL93]_^W=G;BWW]V&YLR_@L___\F])?T_U%_J?^/Q-T% MWN8^7>7^H[Z1B[EW:T:X>\)[2#WC/:3^Y_ >PLY#F)[2_S_3Y5-._^^]3/]S M_&_6_ZS_6?^S_G\K_1_YD^HKG0%6Z_^MO>UM'?][=V=WE][_;6RQ_Z<WH8)P MKRK"Z^L&=F4XPQG.<(8SG.$,9SC#&<YPAC.<X0QG.,,9SG"&,YSA#&<XPQG. M<(8SG.$,9SC#&<YPAC.<X0QG.,,9SG"&,_SGP"/TVG@9#$4_M/X/WO]XE<B/ MSWK_&STZOAO]>T&^O]N;#8:/[‘6Y#V_[W?ZQQ>G5R<6YU6]17MWW2):<.
M,BHO^P;
^\O_,-AXK3:>Z_;XW]O;^’[O_6]O3WV__W6\S,1OY];?#SYW^E
M_L>7W?T_#>V*/Y'8VN'_;^^"261-V'V!Y,E,3Q71@DMBOXY1J]CPHG9G7
MA@&V&,S%?R?W& 7<^EU’JT._ENB
J6F5,)I0Z(W<P70QP8ACY+5H;>VV/QD&
M7J0_;EW[\_3&'MM325+;!@Y-F9@4+%TNV)MXMU#.>M1K*DD-_ CC&)T?GUZ MBB'F9*LR<SKS)C;Q.9A.,-*=YK9"T=:F0\_!GL@BLFVH(HZJ9E3R,7(HKIJN MP&F6@*!+(UN6PX4-&Z#ZG=D<,YL-V G#CT:@1+&PIR&MDJ!>LR.-34PR597
MU<\X%% ]U8^,O,. E…9’0-B3FN$2[Q^=FA_LB:5"(T%GJT%)(Z558E28FG
M7
R+NB/6!,;EFX[LM6P91S:OVB]ELZ&U%#,YP+R3:ZO_SLN)DL])AV1>A4
M9V30QD=+J=(E<:0#V0OZY4,[Y)E/<#YD17H93(<+F9V,L3BTR=A%W1.“I6]
M8G2,V2D8W0-1;UJ%X[9’834$LFN$)DA,=8CDO’C09U%'I>?A@D*)VGNY7+
M<IK)) R#03”-/,MR-"1!&T4:4=&2$1YE3S+J;(D@QG!6P6>G<50\RPA_C
M,Z
L8:92&94GY$Y!U=?"C’$BGW(V&SZXA\B/X%-?WW=42LI-X4^3&>0[4,
M,FI(]ML1’X<Z8JQ?$?&0FM);K>8;3TG>V!N/IW?YN0(!]BM%B2C9A1)?%?YJ
MB6\NE?6EFJ6@F:=;D&)/7F&-CBZ9DM0>I&<E+E3*XO2F!)-DZPX]TJ>EFDDM
M
.Q6UBP"I:1CA5C);)A47(>SQ)>Q[=6H>JNG@<E@EZ"IT3SE18!;I5HSU
M
=/-V)\8-5#(A&A?B$WAC\0$W6O.![?H8A;E\P>YEE],AN3V68V5X6BV/QQZ
MY.WT)IA^[P?;(B!V)N)4RJ8S//: -3HP5%(!XM@N A:0J]3#
=3G550^A/
MTFP(7=N_J#&!410392<1MK2%% 91Z3VVH%++E+QU<+K!0H-1R&:N;"RB?, MHDT)+VK#P'='M+A>WS!!;J!^C*&<MTDRW&0MDU4VH:'K,I@BO9*!5.Q"/;#4 M>,ERD39BLBJBL&[32@FS&C'?@TR**J#VQ'JQPM/9U7J\89L[Z:;:1M/&_/C! M56V-%I.!L8NF,[31K2<&T^+)0$L\@6=L\<3@7[&$E[2)GVI%IV1!UX#38/2. M@%0R9VD1O]H0QR_5SPIH3(E,5SHUW2',SG51LD<+T> "!MU*3<6C/I$0[S@> M. 6+R#AWH+0VGQAZ:;8T,WSEF%*"A_TL[$FB]K/IV)C<W&@W2&?'=AD*''!+ M9YWH86QWKT[;;KMSU+H^O:J4O7MO$,R\LA[JM&[2)PX,.N7&9ZV2H;'P8ZFZ M(JO:*)N<M]*X"O%TW+VXOC2,=[7Z7!?[Y. \.'$GC$JQ#_Z\K/9=O0<:"E<
M/L9W)]4-3
FK=P<TQ5(YR#1;3;6R=W%I9–U^ (7_?X?NJZ:YZ:3A’?7"\AU
M,4)’.+?E45:>OC%N2T68*?@C0$4L)I%,%DB)0,*4!5M\CWP/^.][_NWWC M^W^;F]N[R?W?QDZ#[O_M<OS7-[K_)T,'N6[[].CDG^XW#)& <5^,E$3'#&;! M(L+_%H:#G.]?%@6OVM-]([9TW:WI>?RE/Y*ZV IA6SK6HR:S7RD"N1,%C8
MM<=8=<H_8F,C&0O6&$Q,3$Q,3$Q,3$Q,3$Q,3$Q,3$Q,3$Q,3$Q,3$Q,3$Q,
/3$Q,?Q;Z’Z;.$@$0 $
`
end

“vasa” <vv40in@newmail.ru> wrote in message news:am4udm$rum$1@inn.qnx.com

Thanks.

A lot of things work in linux that don’t in QNX, because Linux
has COW, so when things go wrong and a process tries to write
to a text or rodata page, then it simply makes a new copy of that page.
pardon, what is COW?

COW is Copy On Write - that means that the OS can share pages between
processes and then wait until someone tries to write to them before copying.
It saves some time in many cases but introduces some indeterminism that is
not acceptable in an RTOS.

cheers,

Kris

i see that my dll-s does not call qnx_dlatexit().
how can i resolve libcpp.so refferences to etexit() symbol to my one?

“Jeff Baker” <jbaker@qnx.com> wrote in message
news:am4qo2$4tn$1@nntp.qnx.com

Here is the workaround mentioned below. Please give this a try and let me
know if it solves your problems.

This issue occurs when the underlying C++ library registers an atexit
handler. Dlclose does not iterate through the atexit list, so when main
exits and it attempts to run the handler for a dll which has been
unloaded
already you get a segment violation. We have a workaround we’ve
developed
internally that I’ll have to dig up. I’ll post it as soon as I find it.

vasa <> vv40in@newmail.ru> > wrote:
Why, i don’t know, but if you scan this group you’ll find that the
c++
+
dlclose → crash is a known issue.
/Johan

Johan, i cannot find any offers in this group.
And as was wrote: IT WORKS ON LINUX !!!
And in qnx6.2 (with libstdc++ !!!)
I’m afraid that the problem is in qnx dynamic loader

A lot of things work in linux that don’t in QNX, because Linux
has COW, so when things go wrong and a process tries to write
to a text or rodata page, then it simply makes a new copy of that
page.

I just tried to reproduce this and couldn’t. Do you have an example,
by any chance?


cburgess@qnx.com

\

Hi!

this problem is resolved!
i built my SO with -O0 option – it is problem.
Need by default or -O1 or -O2
:slight_smile:


Respectfully Yours
vasa

“Kris Warkentin” <kewarken@qnx.com> wrote in message
news:am54rb$gue$1@nntp.qnx.com

“vasa” <> vv40in@newmail.ru> > wrote in message
news:am4udm$rum$> 1@inn.qnx.com> …
Thanks.

A lot of things work in linux that don’t in QNX, because Linux
has COW, so when things go wrong and a process tries to write
to a text or rodata page, then it simply makes a new copy of that
page.
pardon, what is COW?

COW is Copy On Write - that means that the OS can share pages between
processes and then wait until someone tries to write to them before
copying.
It saves some time in many cases but introduces some indeterminism that is
not acceptable in an RTOS.

That is rather simplified view Kris :wink:

COW in pure form is hardly acceptable even in GPOS. It was empirically
demonstrated to actually make things slower when used uninhibited. However
it can make things a lot faster when tuned properly (i.e., only used when
worthy). Such optimisations were made for SVR4. Essentially, COW is very
useful when you’re doing lots of fork-exec type operations. I could dig
numbers for you…

I will also argue that when lots of fork-exec operations are happening
you’re probably not doing realtime work just yet, since you’re getting hit
by latencies of disk access which are several orders of magnitude higher
than latencies introduced by COW. You’re probably starting up your system
(so realtime operation phase has not yet began) or doing compile-type work
(so you’re not concerned about realtime at all). Once application is loaded,
a realtime-concerned developer would do something like msync(MS_COPYALL) the
first thing in the main() and be done with indeterminism. Better yet, there
could be a _CS_DO_COW confstring and corresponding DO_COW envar to allow
transparency and flexibility for behavior of fork(), so one would not need
to invent MS_COPYALL.

That means high-end self-hosted RTOS like QNX can benefit from COW about as
much as GPOS, so long as kernel avoids doing COW for deadline-bound
operations. It would not be too hard to tune memory manager that way,
provided you had useful memory manager in the first place ;p

I’m afraid this subject fits .advocacy group better. Didn’t someone complain
about lack of advocacy lately? Here, take it :wink:

Cheers,
– igor

“Igor Kovalenko” <Igor.Kovalenko@motorola.com> wrote in message
news:am7p0m$1t4$1@inn.qnx.com

That is rather simplified view Kris > :wink:

Of course. I just wanted to give a brief answer with rationale. :wink:

COW in pure form is hardly acceptable even in GPOS. It was empirically
demonstrated to actually make things slower when used uninhibited. However
it can make things a lot faster when tuned properly (i.e., only used when
worthy). Such optimisations were made for SVR4. Essentially, COW is very
useful when you’re doing lots of fork-exec type operations. I could dig
numbers for you…

Didn’t we have this whole debate once before in another thread?

I will also argue that when lots of fork-exec operations are happening
you’re probably not doing realtime work just yet, since you’re getting hit

operations. It would not be too hard to tune memory manager that way,
provided you had useful memory manager in the first place ;p

I think that we resolved in the other thread this same thing: It would be a
nice feature for high performance machines as long as one could turn it off.

I’m afraid this subject fits .advocacy group better. Didn’t someone
complain
about lack of advocacy lately? Here, take it > :wink:

We have here a situation where our product is being used in ways that
perhaps weren’t initially anticipated. Things that are true for small
realtime devices (most of our market up until now) are not necessarily so
for “big, honkin’ SMP routers” so perhaps person’s optimization is another
person’s excess overhead. Look at the issues facing the Linux developers:
some parties want to scale up towards huge 64way servers and others want to
work towards realtime performance in the embedded space. We’re lucky in
some ways because our modularity and configurability helps us but there are
still design tradeoffs to be made between big and small.

cheers,

Kris

but who can suggest me concrete solution of this problem for QNX6.2(nc) ???

Respectfully Yours
vasa