UbixOS
2.0
|
Go to the source code of this file.
Data Structures | |
struct | ubthread |
struct | ubthread_cond |
struct | ubthread_cond_list |
struct | ubthread_list |
struct | ubthread_mutex |
struct | ubthread_mutex_list |
Macros | |
#define | LOCKED 1 |
#define | UNLOCKED 0 |
Typedefs | |
typedef struct ubthread_cond * | ubthread_cond_t |
typedef struct ubthread_mutex * | ubthread_mutex_t |
typedef struct ubthread * | ubthread_t |
Functions | |
int | ubthread_cond_broadcast (ubthread_cond_t *cond) |
int | ubthread_cond_destroy (ubthread_cond_t *cond) |
int | ubthread_cond_init (ubthread_cond_t *cond, const uInt32 attr) |
int | ubthread_cond_signal (ubthread_cond_t *cond) |
int | ubthread_cond_timedwait (ubthread_cond_t *cond, ubthread_mutex_t *mutex, const struct timespec *abstime) |
int | ubthread_cond_wait (ubthread_cond_t *cond, ubthread_mutex_t *mutex) |
int | ubthread_create (struct taskStruct **thread, const uInt32 *attr, void(*tproc)(void), void *arg) |
int | ubthread_mutex_destroy (ubthread_mutex_t *mutex) |
int | ubthread_mutex_init (ubthread_mutex_t *mutex, const uInt32 attr) |
int | ubthread_mutex_lock (ubthread_mutex_t *mutex) |
int | ubthread_mutex_unlock (ubthread_mutex_t *mutex) |
struct taskStruct * | ubthread_self () |
#define LOCKED 1 |
Definition at line 36 of file ubthread.h.
#define UNLOCKED 0 |
Definition at line 37 of file ubthread.h.
typedef struct ubthread_cond* ubthread_cond_t |
Definition at line 40 of file ubthread.h.
typedef struct ubthread_mutex* ubthread_mutex_t |
Definition at line 41 of file ubthread.h.
typedef struct ubthread* ubthread_t |
Definition at line 39 of file ubthread.h.
int ubthread_cond_broadcast | ( | ubthread_cond_t * | cond | ) |
Definition at line 164 of file ubthread.c.
Referenced by sys_sem_signal().
int ubthread_cond_destroy | ( | ubthread_cond_t * | cond | ) |
Definition at line 71 of file ubthread.c.
References kfree().
Referenced by sem_destroy().
int ubthread_cond_init | ( | ubthread_cond_t * | cond, |
const uInt32 | attr | ||
) |
Referenced by sem_init(), and sys_sem_new().
int ubthread_cond_signal | ( | ubthread_cond_t * | cond | ) |
Definition at line 157 of file ubthread.c.
int ubthread_cond_timedwait | ( | ubthread_cond_t * | cond, |
ubthread_mutex_t * | mutex, | ||
const struct timespec * | abstime | ||
) |
Definition at line 129 of file ubthread.c.
References FALSE, ubthread_cond::lock, mutex, sched_yield(), systemVitals, vitalsStruct::sysUptime, ubthread_mutex_lock(), and ubthread_mutex_unlock().
int ubthread_cond_wait | ( | ubthread_cond_t * | cond, |
ubthread_mutex_t * | mutex | ||
) |
Definition at line 148 of file ubthread.c.
References ubthread_cond::lock, mutex, sched_yield(), TRUE, ubthread_mutex_lock(), and ubthread_mutex_unlock().
int ubthread_create | ( | struct taskStruct ** | thread, |
const uInt32 * | attr, | ||
void(*)(void) | tproc, | ||
void * | arg | ||
) |
Definition at line 83 of file ubthread.c.
References execThread().
int ubthread_mutex_destroy | ( | ubthread_mutex_t * | mutex | ) |
Definition at line 77 of file ubthread.c.
References kfree(), and mutex.
Referenced by sem_destroy(), and sys_mutex_free().
int ubthread_mutex_init | ( | ubthread_mutex_t * | mutex, |
const uInt32 | attr | ||
) |
Referenced by sem_init(), sys_mutex_new(), and sys_sem_new().
int ubthread_mutex_lock | ( | ubthread_mutex_t * | mutex | ) |
Definition at line 88 of file ubthread.c.
References _current, taskStruct::id, kpanic(), kprintf(), ubthread_mutex::lock, mutex, ubthread_mutex::pid, and TRUE.
Referenced by sys_arch_sem_wait(), sys_mutex_lock(), sys_sem_signal(), ubthread_cond_timedwait(), and ubthread_cond_wait().
int ubthread_mutex_unlock | ( | ubthread_mutex_t * | mutex | ) |
Definition at line 109 of file ubthread.c.
References _current, taskStruct::id, kpanic(), kprintf(), ubthread_mutex::lock, mutex, ubthread_mutex::pid, and TRUE.
Referenced by sys_mutex_unlock(), sys_sem_signal(), ubthread_cond_timedwait(), and ubthread_cond_wait().
struct taskStruct* ubthread_self | ( | ) |
Definition at line 45 of file ubthread.c.
References _current.