hi,
as you may be aware, dce threads is posix draft 4 threads and FreeDCE has an emulation library kindly made up-to-date to successfully run even on NPTL on x86 and AMD64, courtesy of loic.
http://cvs.sourceforge.net/viewcvs.py/freedce/dcethreads/
it is my understanding / guess that microsoft, in their adoption of DCE 1.0 some fifteen years ago for NT 3.1, ported DCE threads to Win32 [hence, you have all those lovely TRY CATCH RAISE macros in all the lovely MSVC++ programs, whoopeee]
so i was wondering if someone could point me in the direction of some Wine source code - testing, implementation, macros etc. that would allow me to vaguely confirm whether my suspicions are correct.
the first hypothesis i want to test is this: namely, that Wine applications would run _better_ [read, "more correctly"] by using dcethreads than by using its present implementation of Win32 threads.
the _other_ hypothesis i want to test is this: namely, that FreeDCE applications would be more "palatable" in today's modern environment if compiled with Wine's threading code!
according to loic, who is an expert on the different thread models, the thing is that certain syscalls are not interruptable / cancellable in Posix Draft 4 threads and in NPTL they are.
this CHANGES the behaviour of any programs using the wrong threading library in subtle ways.
thus, certain applications suddenly become unreliable where they were previously fine.
etc.
l.
p.s. i don't claim to know all the answers, nor all the questions.
On Thu, 20 Jan 2005 11:29:23 +0000, Luke Kenneth Casson Leighton wrote:
so i was wondering if someone could point me in the direction of some Wine source code - testing, implementation, macros etc. that would allow me to vaguely confirm whether my suspicions are correct.
If you want to experiment with this stuff the right way to do it is to write patches. The overlap between Samba and Wine is really small so posting stuff about RPC or the SMB protocol here isn't going to get you very far, because we don't care much about that right now.
I'd also note that Wines threading is exceedingly complex. It won't be rewritten anytime soon.
thanks -mike