28-Mar-2024 15:45 GMT.
UNDER CONSTRUCTION
[News] POSIX threads ported to 68k AmigaANN.lu
Posted on 28-Jan-2004 22:27 GMT by whoosh28 comments
View flat
View list
straight clean port of Ralf S Engelschall's pth-1.4.0 a non pre-emptive implementation of POSIX threads to 68k Amiga. This is 2 gcc linker libraries to enable porting + writing of threaded programs to 68k Amiga. http://www.whoosh777.pwp.blueyonder.co.uk/pthreads.html To see a threaded program run on 68k Amiga download and run "the 5 philosophers":

http://www.whoosh777.pwp.blueyonder.co.uk/test_philo (requires just ixemul.library),

:this example program uses libpth.a,

The port itself is 2 gcc linker libraries: libpthread.a and libpth.a,

Last December I ported rpm4.0 with databases disconnected as database support required libpthread.a . So now I should be able to generate a full port of rpm4.0 (or higher) to 68k,

(its not at the top of my to-do list)

This port took only one day to do, an attempt at a totally different pre-emptive implementation of libpthread.a took well over a week before I gave up.

Anyway the consequence of this port of pth-1.4.0 is that it will enable porting of threaded programs. Probably noixemul progs will also be ok.

Even though it is only 1 days work I thought it was worth an announce as people always say the classic Amiga cant thread, well it can thread!

The most difficult thing was locating pth-1.4.0 as I didnt know it existed till I found it, I was only searching for libpthread.a

No idea if the example program will run on PPC or Amithlon, email me if you try it on such.

The advantage of being non-pre-emptive is that it is much more portable and clean. And if it implements POSIX threading (nightmare specification) it implements POSIX threading! (non-pre-emption notwithstanding) The source + necessary fixes to quite bugged configure are on http://www.whoosh777.pwp.blueyonder.co.uk/pthreads.html

List of all comments to this article
Sorted by date, most recent at bottom
Comment 1Golem29-Jan-2004 00:47 GMT
Comment 2Anonymous29-Jan-2004 08:28 GMT
Comment 3Anonymous29-Jan-2004 08:35 GMT
Comment 4Kjetil29-Jan-2004 10:44 GMT
Comment 5Thematic29-Jan-2004 11:50 GMT
Comment 6whoosh29-Jan-2004 16:53 GMT
Comment 7whoosh29-Jan-2004 18:39 GMT
Comment 8Fabio AlemagnaRegistered user29-Jan-2004 19:51 GMT
Comment 9MarkTime29-Jan-2004 21:49 GMT
Comment 10whoosh30-Jan-2004 01:23 GMT
Comment 11Sigbjørn Skjæret30-Jan-2004 01:49 GMT
Comment 12Oppressor30-Jan-2004 01:56 GMT
Comment 13Golem30-Jan-2004 04:45 GMT
Comment 14Anonymous30-Jan-2004 09:10 GMT
Comment 15Anonymous30-Jan-2004 12:47 GMT
Comment 16whoosh30-Jan-2004 21:23 GMT
Comment 17Sigbjørn Skjæret31-Jan-2004 00:05 GMT
Comment 18Oppressor31-Jan-2004 03:56 GMT
Comment 19Kolbjørn Barmen31-Jan-2004 16:49 GMT
Comment 20whoosh01-Feb-2004 20:33 GMT
POSIX threads ported to 68k Amiga : Comment 21 of 28ANN.lu
Posted by Sigbjørn Skjæret on 01-Feb-2004 23:30 GMT
In reply to Comment 20 (whoosh):
"@Sigbjørn said: (I've figured out how to write your name, it requires alt-o!)"

Congratulations, that's better than most... ;)

"I think it would have been worth you announcing that threads were possible on 68k, to me at least this fact is newsworthy."

It didn't occur to me that it would be newsworthy as there already was a port in the gg archives...

"Pth seems so robustly written that I can believe that it wont!"

Well, just because there is a check in configure doesn't mean the result is used .. usually authors just grab the full generic configure that checks for a ton of useless things (and often several times). :P

"Question: with something like bzip2, where would I put libbz2.a for eg a 68020 fpu compile? would it be: gg:lib/libm020/libm881/libbz2.a?"

Yes, though you should build for all cpu targets and put them where appropriate (yes, I know, it can be tiresome ;) ) .. also you should perhaps use usr:lib instead (or gg:m68k-amigaos/lib if you have multiple target compilers)...

"I dont know if gcc's 68000 no fpu compile will detect and make use of a FPU if present??"

No it will not, but both libnix and ixemul will use the mathXXXX.libraries for their math functions...


- CISC
Jump...
#22 whoosh
TopPrevious commentNext commentbottom
List of all comments to this article (continued)
Comment 22whoosh02-Feb-2004 20:18 GMT
Comment 23Sigbjørn Skjæret02-Feb-2004 20:39 GMT
Comment 24whoosh02-Feb-2004 20:59 GMT
Comment 25whoosh02-Feb-2004 21:32 GMT
Comment 26whoosh04-Feb-2004 18:08 GMT
Comment 27whoosh04-Feb-2004 20:50 GMT
Comment 28whoosh05-Feb-2004 17:36 GMT
Back to Top