delete task only when it's not in running.

This commit is contained in:
TXuian
2024-04-26 17:39:23 +08:00
parent 03039cbdab
commit a7cbb0d041
15 changed files with 175 additions and 160 deletions

View File

@@ -50,4 +50,5 @@ static inline struct CPU* cur_cpu(void)
struct spinlock whole_kernel_lock;
void xizi_enter_kernel();
void xizi_leave_kernel();
void xizi_leave_kernel();
bool xizi_is_in_kernel();

View File

@@ -93,4 +93,6 @@ int sys_state(sys_state_option option, sys_state_info* info);
int sys_mmap(uintptr_t vaddr, uintptr_t paddr, int len, int is_dev);
int sys_register_irq(int irq_num, int irq_opcode);
int sys_unbind_irq_all(struct TaskMicroDescriptor* task);
int sys_unbind_irq(struct TaskMicroDescriptor* task, int irq_num);
#endif

View File

@@ -64,6 +64,8 @@ struct Thread {
struct TaskMicroDescriptor {
/* task debug resources */
int pid;
bool bind_irq;
bool dead;
char name[TASK_NAME_MAX_LEN];
/// @todo support return value