I am about to port a few thread based Win32 apps from NT/2000 to Linux/AIX.
I am wondering what threading library I should utilize. Are POSIX threads
available on both ? Is this the way to go ?
It's hard to give you good advice without knowing more about the
AIX has POSIX threads (providing it's not too old a version).Quote:> I am about to port a few thread based Win32 apps from NT/2000 to Linux/AIX.
> I am wondering what threading library I should utilize. Are POSIX threads
> available on both ? Is this the way to go ?
- WTA member - <URL:http://www.transhumanism.org/>
>> I am about to port a few thread based Win32 apps from NT/2000 to Linux/AIX.
>> I am wondering what threading library I should utilize. Are POSIX threads
>> available on both ? Is this the way to go ?
> POSIX threads are available on both, but you're porting in the wrong
> direction for that to help you much. It really depends how cleanly coded
> the Win32 apps are. Ideally, you'd just replace the Win32-based
> synchronization classes with corresponding POSIX classes. If instead raw
> synchronization functions are scattered through the code, however,
> you'll have a really tough time.
> It's hard to give you good advice without knowing more about the
For about two months, I've been busy working away at the possibility of a
native NT microkernel version of a Linux server. It's definitely doable. I'm
collecting information at the moment. I was sort of hoping until I had some
code (typical bizarre project style), but since Interix have beat the OSS
community to the punch, I may as well announce it now.
I'm looking at making the linux server (subsystem) at least passingly
similar to the current 2.2 tree, so that changes could be merged in there
closer . The goal obviously is to run native Linux x86 and Alpha binaries
(depending on platform) without recompilation.
My current idea is for a %windir%\linux\... tree that contains a vmlinux.exe
and the standard linux file system standard and enough stuff to launch bash.
Once launched, the server launches linux images as normal. A
modification/complete re-write of umsdos would provide the file system (or
maybe just use ext2fs until this is a bit more of a reality). By making a
directX fbconsole layer, we could re-use the frame buffer console code as it
exists today. X would come (much) later, but again via the use of the XAA
layer in XFree86 4.0 (I know it doesn't yet exist, but I helped write the
early 3.9 stuff, so I know it does exist :-)
The native NT api is exceptionally well hidden and undocumented, but
NT/W2k's microkernel is as least as good as Mach in all respects (and memory
and thread management, it's significantly better), so a mklinux server port
wouldn't take more than a year with dedicated people.
If anyone's interested please drop me a line. You'd need to have a compiler
and a passing knowledge of Windows NT/2000 to be useful at this stage. I'm
going to use Visual C++ until I can prove to myself that cygnus's (or other)
gcc under WIn32 can do the job. The reason for this is the header files,
which are vital to Win32 development.