首页 > 其他分享 >用户级线程和内核级线程

用户级线程和内核级线程

时间:2023-03-03 17:35:16浏览次数:36  
标签:开销 用户 线程 切换 空间 内核

用户级线程的特点:不需要修改内核代码,内核不知道线程的存在,所有的线程管理都由应用程序管理。

用户级线程的优点:所有的线程都在用户空间,所以它在切换线程时不需要从用户态切换到内核态,避免了大的运行模式切换的开销,线程切换额速度会比较快;

用户级线程的缺点:当进程中一个一个线程被阻塞,其他线程也会被阻塞。

 

内核级线程:线程管理是用内核完成。

如果一个进程中的一个线程被阻塞,内核可以调度同一个进程中的另一个线程,在内核眼中,这个线程是一个独立的个体;

内核级线程缺点:切换线程时,先从用户空间切换到内核空间,再从内核空间切换到用户空间,很浪费开销,但和进程间切换比起来,开销要小得多

缺点2:内核地址空间可能无法找到这么多线程控制块,所以又出现混合线程的概念

 

 

什么时混合线程:少数几个内核空间线程大部分都是用户空间线程。

标签:开销,用户,线程,切换,空间,内核
From: https://www.cnblogs.com/RanWhoo/p/17176401.html

相关文章

  • 用PWA提升Web应用的性能和用户体验
       PWA是一种Web应用的新范式,它将Web应用和原生应用的体验结合在一起。PWA可以让Web应用离线缓存、全屏模式、桌面快捷方式等,提供与原生应用类似的用户体验......
  • 该如何正确的中断一个线程的执行?
    摘要:本文以一个案例的形式,来为大家详细介绍下为何中断执行的线程不起作用。本文分享自华为云社区《【高并发】我们该如何正确的中断一个线程的执行??》,作者:冰河。写在前......
  • 不规范使用PageHelper导致线程污染出现报错
    问题复现:在原有项目基础上开发获取最新的第一个模板的接口。接口中只有一个查询sql:selectxfromxwherexlimit1。调试总是报错:org.springframework.jdbc.BadSqlGr......
  • Linux内核面试题汇总
    [暂无答案]1.硬件中断号和Linux内核的IRQ号它们是如何映射的?2.当发生硬件中断之后,ARM64处理器架构做哪些工作?3.为什么说中断上下文不能执行睡眠操作?4.一个硬件中断后,Linux......
  • linux用户权限与组
    less /etc/passwd查看用户文件   passwdtom[用户名]  修改密码 useraddsuguihua[用户名] 新增用户名vim /etc/passwd  将xiaoqiang的x删除之......
  • 全局视角看技术-Java多线程演进史
    作者:京东科技文涛全文较长共6468字,语言通俗易懂,是一篇具有大纲性质的关于多线程的梳理,作者从历史演进的角度讲了多线程相关知识体系,让你知其然知其所以然。前言2022......
  • 一、查看Linux内核版本的命令
    1.cat/proc/version此命令可以查看正在运行的内核版本信息。/proc 目录存储的是当前内核运行状态的一系列特殊文件,包括:内存,CPU内核,已安装文件系统等信息。而正在运行的......
  • PVE版本升级及内核升级方法
    1.版本升级登录管理页面--点击左侧菜单栏的"PVE"节点--点击"更新"菜单--点击"刷新"按钮(实为执行apt-getupdate)---点击"升级"按钮---升级完重启pve2.更新内核更新一下......
  • [转]内网用户通过域名或公网IP访问内部服务器的解决办法
    原文地址:内网用户通过域名或公网IP访问内部服务器的解决办法_内网用户通过域名或公网ip访问内部服务器的解决办法tplink_zycdn的博客-CSDN博客原因-路由回流当用路由器防......
  • linux下进程和线程的区别和联系
    进程用fork()或者vfork()生成(vfork是专门为了加载其他程序的子程序而优化的,随着fork()的优化,vfork已经被优化)fork()生成的子进程与父进程共享代码区内存,对于其他内存fork......