#include "autoconf.h"
#include "hal/cpu/register.h"
#include "procc/process.h"
#include <spinlock.h>
Go to the source code of this file.
◆ THREAD_GET_GEN
| #define THREAD_GET_GEN |
( |
| tid | ) |
|
◆ THREAD_GET_ID
| #define THREAD_GET_ID |
( |
| tid | ) |
|
◆ THREAD_MAKE_ID
| #define THREAD_MAKE_ID |
( |
| id, |
|
|
| gen ) |
◆ thread_bucket_t
◆ anonymous enum
| Enumerator |
|---|
| THREAD_USER | |
| THREAD_PREEMPT_ENABLE | |
Definition at line 11 of file thread.h.
◆ anonymous enum
| Enumerator |
|---|
| THREAD_STATE_CREATE | |
| THREAD_STATE_READY | |
| THREAD_STATE_RUNNING | |
| THREAD_STATE_BLOCKED | |
| THREAD_STATE_TERMINATED | |
| THREAD_STATE_HAL | |
Definition at line 16 of file thread.h.
◆ __attribute__()
| struct thread __attribute__ |
( |
(aligned(64)) | | ) |
|
Definition at line 1 of file core.h.
◆ create_thread()
Definition at line 41 of file thread.c.
References core_affinity, thread::core_affinity, thread::entry_addr, flags, thread::flags, thread::id, kalloc(), thread::kernel_rsp, thread::kernel_stack_base, thread::kernel_stack_top, LOG2_DEBUG, memset(), page, thread::page, priority, thread::priority, serial2_printf(), stack, thread::stack, thread::state, thrAcquireNewSlot(), thrCreateInstance(), THREAD_STATE_CREATE, and vxUpdateThreadSlot().
Referenced by execve(), and INIT().
◆ vxThreadExit()
| void vxThreadExit |
( |
void | | ) |
|
◆ __attribute__
◆ _pad
◆ clear_child_tid
◆ core_affinity
◆ current_core_id
◆ entry_addr
◆ flags
◆ fs_base
◆ gs_base
◆ has_update_run_time
◆ id
◆ in_kernel_sleep
◆ kernel_rsp
◆ kernel_stack_base
◆ kernel_stack_top
◆ last_run_time
◆ page
◆ priority
◆ process
◆ reg
◆ stack
◆ state
◆ uuid
◆ wake_pending