feat: added reaper and suicide support
This commit is contained in:
@@ -11,6 +11,7 @@
|
||||
// function
|
||||
#define att_noreturn __attribute((noreturn))
|
||||
#define att_cdecl __attribute((cdecl))
|
||||
#define att_unused __attribute((unused))
|
||||
// structure
|
||||
#define att_packed __attribute((packed))
|
||||
// field
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
#define SYSCALL_YIELD_JOB 0x02
|
||||
#define SYSCALL_YIELD_IRQ 0x03
|
||||
#define SYSCALL_SUSPEND 0x04
|
||||
#define SYSCALL_KILL_SELF 0x05
|
||||
|
||||
void att_noreturn syscall_start_scheduler();
|
||||
|
||||
@@ -21,4 +22,6 @@ void syscall_yield_irq(uint16_t irq);
|
||||
|
||||
void syscall_job_suspend();
|
||||
|
||||
void syscall_kill_self();
|
||||
|
||||
#endif //NEW_KERNEL_SYSCALL_H
|
||||
|
||||
@@ -19,13 +19,13 @@ void task_start_first();
|
||||
|
||||
void task_switch_next();
|
||||
|
||||
uint32_t task_spawn(task_entrypoint, void *entry_data);
|
||||
pid_t task_spawn(task_entrypoint, void *entry_data);
|
||||
|
||||
void task_end(uint32_t tid);
|
||||
void task_end(pid_t tid);
|
||||
|
||||
void task_suspend();
|
||||
|
||||
uint32_t task_get_current_tid();
|
||||
pid_t task_get_current_tid();
|
||||
|
||||
void task_signal(uint32_t tid);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user