void init_pcb(pcb_t* p, void* entry, char* name, u32_t pid, u32_t priority) { p->entry = entry; t_memcpy(p->name, name, t_strlen(name)); p->pid = pid; p->ticks = priority; p->priority = priority; p->stack_top = p->stack + user_stack_size; p->regs.cs = ring3_code_selector; p->regs.ss = ring3_data_selector; p->regs.esp = (u32_t)(void*)p->stack_top; p->regs.eflags = 0x202; p->regs.cs = ring3_code_selector; p->regs.eip = (u32_t)entry; p->regs.ds = ring3_data_selector; p->regs.es = ring3_data_selector; p->regs.fs = ring3_data_selector; p->regs.gs = ring3_data_selector; }
int main(void) { printf("\n===== START TEST =====\n"); t_bzero(); t_strcat(); t_isalnum(); t_isascii(); t_isprint(); t_tolower(); t_toupper(); t_puts(); t_strlen(); t_memset(); t_memcpy(); t_strdup(); t_cat(); t_bonus(); printf("\n===== END OF TEST =====\n"); return (0); }
static int sepcmp(T_CHAR* src,T_CHAR* val) { UINT l=t_strlen(val); return !t_strnicmp(src,val,l) && separator(src[l]); }