posix threads
Насколько я знаю, в Linux 2.4 для этого есть библиотека какая-то, а в 2.5 это в kernel запихали. Но не в теме. Google более точно скажет.
Да я что-то пытался поискать... как-то не густо 

Разница Posix threads и Solaris threads есть. Об этом можно судить хотя бы по вызову ф-и создания thread’a
Posix <pthread.h> :
В Linux нужно при линковке подключать –lpthread. В Cygwin – не нужно !
Solaris <thread.h> :
Подключить -lthread
Posix <pthread.h> :
int pthread_create(pthread_t *tid, const pthread_attr_t *tattr,
void*(*start_routinevoid * void *arg);
В Linux нужно при линковке подключать –lpthread. В Cygwin – не нужно !
Solaris <thread.h> :
int thr_create(void *stack_base, size_t stack_size,
void *(*start_routine) (void * void *arg, long flags, thread_t *new_thread);
Подключить -lthread
Ну я так понял, что то, что ты назвал Solaris threads не есть реализация posix threads в Solaris. Т.е. ты хочешь сказать, что её там нет... просто я где-то видел инфу, что в последней версии есть поддержка POSIX.1c или как-то там оно ещё пишется.
http://www.gnu.org/software/pth/ -может поможет ?
хотя я в этом деле не специалист
хотя я в этом деле не специалист
linuxthreads стандарту не очень следует, особенно сильно отличается семантика обработки сигналов
это связано с тем, что треды реализуются отдельными процессами, со своими PID, атрибутами безопасности и пр.
В 2.5 (и в некоторых vendor kernels, например в RedHat 9) есть более новая реализация (NPTL требующая новой glibc, утверждается, что она гораздо совместимее, и многие другие проблемы устранены.
это связано с тем, что треды реализуются отдельными процессами, со своими PID, атрибутами безопасности и пр.
В 2.5 (и в некоторых vendor kernels, например в RedHat 9) есть более новая реализация (NPTL требующая новой glibc, утверждается, что она гораздо совместимее, и многие другие проблемы устранены.
Я это смотрел тоже. pth - это что-то отдельное (portable threads реализуется там всё руками без использования ядра на сколько я понял. Возможно есть смысл воспользоваться этим. Тогда вопрос - пытался ли кто-нибудь скомпилировать это дело на Solaris'е?
Вот что они сами написали: "Pth was successfully tested on FreeBSD, NetBSD, OpenBSD, BSDI, GNU/Linux, Solaris, HPUX, Tru64 (OSF/1 AIX, IRIX, UnixWare, SCO OpenServer, SINIX, ReliantUNIX, ISC, AmigaOS, Rhapsody (MacOS X FTX, AUX and Win32/Cygwin. And it should should automatically adjust itself to remaining Unix platforms, too."
Придётся из заюзать, т.к., видимо, особых альтернатив нету...
Придётся из заюзать, т.к., видимо, особых альтернатив нету...
Оставить комментарий
tokuchu
Кто знает как с поддержкой этого в Linux и Solaris. В Linux на сколько я знаю есть linux threads, которые это дело реализуют. На сколько они соответствуют стандарту? И есть ли их реализация в Solaris'е и соответственно тоже на сколько стандартная? Т.е. будут ли проблемы с переносом сырцов? Кто-нибудь может мне на этот вопрос ответить?