POSIX-compatible tiny multi-threading library for Intel Nios II / Xilinx Zynq-7000
TinyThreads is POSIX threads (pthreads) compatible tiny multi-threading library for 32-bit microcontrollers.
Currently, following processors are supported:
See TinyThreads wiki.
The MIT License
ほとんどの機能は
Most features are provided in
Interface | Name | Conforming to | Remarks |
---|---|---|---|
Type | pthread_t | POSIX.1-2001 | |
Function | pthread_create() | POSIX.1-2001 | |
Function | pthread_exit() | POSIX.1-2001 | |
Function | pthread_join() | POSIX.1-2001 | |
Function | pthread_detach() | POSIX.1-2001 | |
Function | pthread_self() | POSIX.1-2001 | |
Function | pthread_equal() | POSIX.1-2001 | |
Type | pthread_attr_t | POSIX.1-2001 | |
Function | pthread_attr_init() | POSIX.1-2001 | |
Function | pthread_attr_destroy() | POSIX.1-2001 | |
Function | pthread_attr_setdetachstate() | POSIX.1-2001 | |
Function | pthread_attr_getdetachstate() | POSIX.1-2001 | |
Function | pthread_attr_setschedparam() | POSIX.1-2001 | |
Function | pthread_attr_getschedparam() | POSIX.1-2001 | |
Function | pthread_attr_setschedpolicy() | POSIX.1-2001 | |
Function | pthread_attr_getschedpolicy() | POSIX.1-2001 | |
Function | pthread_attr_setstack() | POSIX.1-2001 | |
Function | pthread_attr_getstack() | POSIX.1-2001 | |
Function | pthread_attr_setstacksize() | POSIX.1-2001 | |
Function | pthread_attr_getstacksize() | POSIX.1-2001 | |
Function | sched_get_priority_max() | POSIX.1-2001 | |
Function | sched_get_priority_min() | POSIX.1-2001 | |
Function | shced_yield() | POSIX.1-2001 |
Interface | Name | Conforming to | Remarks |
---|---|---|---|
Type | pthread_mutex_t | POSIX.1-2001 | |
Macro | PTHREAD_MUTEX_INITIALIZER | POSIX.1-2001 | |
Function | pthread_mutex_destroy() | POSIX.1-2001 | |
Function | pthread_mutex_init() | POSIX.1-2001 | |
Function | pthread_mutex_lock() | POSIX.1-2001 | |
Function | pthread_mutex_trylock() | POSIX.1-2001 | |
Function | pthread_mutex_unlock() | POSIX.1-2001 |
Interface | Name | Conforming to | Remarks |
---|---|---|---|
Type | sem_t | POSIX.1-2001 | |
Function | sem_destroy() | POSIX.1-2001 | |
Function | sem_init() | POSIX.1-2001 | |
Function | sem_post() | POSIX.1-2001 | |
Function | sem_wait() | POSIX.1-2001 | |
Function | sem_trywait() | POSIX.1-2001 |
Interface | Name | Conforming to | Remarks |
---|---|---|---|
Type | pthread_cond_t | POSIX.1-2001 | |
Macro | PTHREAD_COND_INITIALIZER | POSIX.1-2001 | |
Function | pthread_cond_destroy() | POSIX.1-2001 | |
Function | pthread_cond_init() | POSIX.1-2001 | |
Function | pthread_cond_broadcast() | POSIX.1-2001 | |
Function | pthread_cond_signal() | POSIX.1-2001 | |
Function | pthread_cond_wait() | POSIX.1-2001 |
Interface | Name | Conforming to | Remarks |
---|---|---|---|
Type | pthread_once_t | POSIX.1-2001 | |
Macro | PTHREAD_ONCE_INIT | POSIX.1-2001 | |
Function | pthread_once() | POSIX.1-2001 |
以下のAPIは、本来pthreadsのカバーする範囲ではありませんが、マルチスレッド環境に対して効率的な実装をTinyThreadsが提供できるものです。
The following APIs are outside of pthreads but TinyThreads can provide a more effective implementation for multi-threading environment.
Interface | Name | Conforming to | Remarks |
---|---|---|---|
Function | sleep() | POSIX.1-2001 | |
Function | usleep() | POSIX.1-2001 |
以下に挙げる機能はTinyThreadsが目指す「小さなマルチスレッド環境」に不要と判断され、
削除された機能です。原則として、将来も対応する予定はありません。
The features below are dropped because they are not useful in “tiny” multi-threading environment.
As a general rule, they have never been supported in the future.