首页 > 试题广场 >

Thread (线程) can be implemented

[单选题]

Thread (线程) can be implemented in .

  • Kernel Space
  • User Space
  • Kernel Space or User Space
  • None of the above

线程实现的两种方式——用户空间和内核中

在用户空间中实现线程

内核对线程包一无所知,从内核角度考虑,就是按正常的方式 管理,即单线程进程(存在运行时系统)

在内核中实现线程

在某个线程希望创建一个新线程或撤销一个已有线程时,它进行一个系统调用,这个系统调用通过对线程表的更新完成线程创建和撤销工作。

混合实现

在此模型中,每个内核级线程有一个可以轮流使用的用户级线程集合。

发表于 2017-05-17 01:13:11 回复(0)
线程的实现分为用户级线程和内核支持线程
发表于 2018-01-04 16:55:52 回复(0)
线程分为内核支持线程/用户支持线程
前者优点:内核调动多线程并行执行,提升运行效率
                   高效调度和切换线程的运行,提高CPU利用率
                    数据结构和堆栈较小,线程切换快,切换开销小
                    内核同时多线程,成倍提升执行速度和效率
前者缺点:核心态到用户态度转换,系统开销大

后者优点:线程切换无需转换到内核空间,节省模式切换带来的开销
                  调度算法进程专用
                   线程实现和OS无关
后者缺点:权限不足,系统调用会阻塞用户线程
                  用户级多线程无法利用处理机做多重处理
发表于 2021-01-09 09:52:55 回复(0)