|
| static OS_Ulong | os_time_get (void) |
| |
| static OS_Uint | os_thread_create (OS_Thread *t, const char *name, void(*entry)(OS_Ulong), OS_Ulong input, uint8_t *stack, OS_Ulong stack_size, OS_Uint priority, OS_Uint preempt, OS_Ulong slice, OS_Uint auto_start) |
| |
| static OS_Uint | os_thread_create_pinned (OS_Thread *t, const char *name, void(*entry)(OS_Ulong), OS_Ulong input, uint8_t *stack, OS_Ulong stack_size, OS_Uint priority, OS_Uint preempt, OS_Ulong slice, OS_Uint auto_start, int core_id) |
| |
| static int | os_get_current_core_id (void) |
| |
| static OS_Uint | os_thread_resume (OS_Thread *t) |
| |
| static OS_Uint | os_thread_suspend (OS_Thread *t) |
| |
| static OS_Uint | os_thread_delete (OS_Thread *t) |
| |
| static OS_Uint | os_thread_terminate (OS_Thread *t) |
| |
| static OS_Uint | os_thread_info_get (OS_Thread *t, OS_Uint *state) |
| |
| static OS_Uint | os_thread_sleep (OS_Ulong ticks) |
| |
| static OS_Uint | os_thread_yield (void) |
| |
| static int | os_kernel_is_running (void) |
| |
| static OS_Uint | os_thread_is_current (const OS_Thread *t) |
| |
| static int | os_thread_is_live (const OS_Thread *t) |
| |
| static void | os_thread_clear (OS_Thread *t) |
| |
| static int | os_mutex_is_live (const OS_Mutex *m) |
| |
| static int | os_thread_state_is_suspended (OS_Uint state) |
| |
| static OS_Uint | os_mutex_create (OS_Mutex *m, const char *name, OS_Uint inherit) |
| |
| static OS_Uint | os_mutex_get (OS_Mutex *m, OS_Ulong wait) |
| |
| static OS_Uint | os_mutex_put (OS_Mutex *m) |
| |
| static OS_Uint | os_mutex_delete (OS_Mutex *m) |
| |
| static OS_Uint | os_recursive_mutex_create (OS_Mutex *m, const char *name) |
| |
| static OS_Uint | os_recursive_mutex_get (OS_Mutex *m, OS_Ulong wait) |
| |
| static OS_Uint | os_recursive_mutex_put (OS_Mutex *m) |
| |
| static OS_Uint | os_recursive_mutex_delete (OS_Mutex *m) |
| |
| static OS_Uint | os_semaphore_create (OS_Semaphore *s, const char *name, OS_Uint initial) |
| |
| static OS_Uint | os_semaphore_delete (OS_Semaphore *s) |
| |
| static OS_Uint | os_semaphore_put (OS_Semaphore *s) |
| |
| static OS_Uint | os_semaphore_get (OS_Semaphore *s, OS_Ulong wait) |
| |
| static OS_Uint | os_semaphore_info_get (OS_Semaphore *s, OS_Ulong *count) |
| |
| static OS_Uint | os_queue_create (OS_Queue *q, const char *name, OS_Uint item_words, void *store, OS_Ulong length) |
| |
| static OS_Uint | os_queue_delete (OS_Queue *q) |
| |
| static OS_Uint | os_queue_send (OS_Queue *q, void *msg, OS_Ulong wait) |
| |
| static OS_Uint | os_queue_receive (OS_Queue *q, void *msg, OS_Ulong wait) |
| |
| static OS_Uint | os_event_group_create (OS_EventGroup *g, const char *name) |
| |
| static OS_Uint | os_event_group_delete (OS_EventGroup *g) |
| |
| static OS_Uint | os_event_group_set (OS_EventGroup *g, OS_Ulong flags) |
| |
| static OS_Uint | os_event_group_clear (OS_EventGroup *g, OS_Ulong flags) |
| |
| static OS_Uint | os_event_group_get (OS_EventGroup *g, OS_Ulong flags, OS_Uint option, OS_Ulong *actual, OS_Ulong wait) |
| |
| static OS_Uint | os_timer_create (OS_Timer *t, const char *name, void(*cb)(OS_Ulong), OS_Ulong id, OS_Ulong initial, OS_Ulong reload, OS_Uint auto_act) |
| |
| static OS_Uint | os_timer_delete (OS_Timer *t) |
| |
| static OS_Uint | os_timer_activate (OS_Timer *t) |
| |
| static OS_Uint | os_timer_deactivate (OS_Timer *t) |
| |
| static OS_Uint | os_stream_buffer_create (OS_StreamBuffer *b, size_t capacity, size_t trigger) |
| |
| static OS_Uint | os_stream_buffer_delete (OS_StreamBuffer *b) |
| |
| static OS_Uint | os_stream_buffer_send (OS_StreamBuffer *b, const void *data, size_t len, OS_Ulong wait) |
| |
| static OS_Uint | os_stream_buffer_receive (OS_StreamBuffer *b, void *data, size_t len, OS_Ulong wait) |
| |
| static void | os_critical_enter (void) |
| |
| static void | os_critical_exit (void) |
| |
No-scheduler backend for the generic OS abstraction.
Included only by OsAbstraction.h when no RTOS is selected. Do not include this header directly.
Used by bare-metal images and by host unit tests, where the caller drives work cooperatively instead of relying on a scheduler. Object creation succeeds so construction paths stay linear; anything that would require a scheduler to make progress (receiving from an empty queue, a stream-buffer read) reports failure rather than pretending to have data.
- See also
- os/README.md