线程切换:不切换映射关系,不切换资源,只切换执行的指令顺序。线程保留了并发的优点,避免了进程切换的代价。
进程切换:指令切换+资源切换(映射表的切换)
线程切换:指令切换,不切换资源
例如一个网页浏览器可以:用一个线程用来接收数据,一个线程来显示文本,一个线程用来处理图片,一个线程用来显示图像。这些线程要共享资源。
用户级线程切换:
如果有两个线程,意味着两个执行序列,用一个栈来执行这两个序列,就导致了混乱,用两个栈执行两个执行序列。
两个线程的样子:两个TCB,两个栈,PC在栈中。
ThreadCreate 的实现就是做出三样东西:分配一段空间作为TCB,分配一段空间作为栈,在栈中填入该线程的起始地址,将栈和TCB关联。线程的切换就是TCB的切换和Yield()函数结束时的弹栈动作的配合。
标签:两个,用户,指令,线程,切换,执行,TCB From: https://www.cnblogs.com/wuyun--wy/p/17020462.html