请参看文献:线程调度,这样就能明白为什么需要有TCB,栈等;
创建线程时,需要初始化的参数:
void ThreadCreate(A){
TCB *tcb=malloc(); //申请一段内存作为TCB
* stack=malloc(); //申请一段内存作为栈
* stack = A; //100 ,执行程序的初始地址
tcb.esp=stack; //将TCB与栈关联
}
请参看文献:线程调度,这样就能明白为什么需要有TCB,栈等;
创建线程时,需要初始化的参数:
void ThreadCreate(A){
TCB *tcb=malloc(); //申请一段内存作为TCB
* stack=malloc(); //申请一段内存作为栈
* stack = A; //100 ,执行程序的初始地址
tcb.esp=stack; //将TCB与栈关联
}