位置: IT常识 - 正文

线程是什么(os线程是什么)

编辑:rootadmin

推荐整理分享线程是什么(os线程是什么),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:线程是什么的基本单位,os线程是什么,java线程是什么,英特尔八核16线程是什么,键盘线程是什么,java线程是什么,线程是什么的基本单位,线程是什么意思,内容如对您有帮助,希望把文章链接给更多的朋友!

《进程是什么》一节讲到,为了提高 CPU 的利用率,便于分配和回收计算机软、硬件资源,多任务操作系统引入了“进程”这个概念。

多任务操作系统中,执行的每个任务(程序)都是一个进程。借助进程调度程序,操作系统可以同时执行多个进程(又称并发执行),每个进程使用的计算机资源都由操作系统负责分配和回收。因此,您可以这样理解进程,它是多任务操作系统分配和回收计算机资源的基本单位。

注意,虽然多任务操作系统支持多个进程并发执行,但实际场景中,某些并发执行的任务并不适合用多进程的方式实现。例如实现一个可接收多个用户访问请求的 Web 服务器,为了避免用户等待的时间过长,Web 服务器需要并发地处理不同用户发来的请求。

这种情况下,如果以多进程的方式实现该服务器,即为每个用户单独建立一个进程,会产生以下问题:

每创建一个进程,都需要占用较多的内存空间。随着访问服务器的用户数量越多,创建的进程数量就越多,可用的内存空间就越少;进程的上下文切换是一个复杂的过程,需要消耗大量的系统资源。

因此,创建的进程越多,系统所做的进程上下文切换的次数就越多,消耗的资源就越多,最终导致服务器可以处理的用户请求数量越少。

为了更高效率地解决此类问题,操作系统在“进程”的基础上,又引入了“线程”这个概念。

什么是线程

线程是进程的一部分,又称轻量级进程,它可以执行所属进程中的部分或者全部代码。

进程是操作系统分配和回收计算机资源的基本单位,而真正负责执行程序的是进程中的线程。一个进程至少拥有 1 个线程(又称单线程进程),也可以拥有多个线程,每个线程负责执行不同的任务(又称为多线程进程)。

线程是什么(os线程是什么)

进程中的每个线程,都拥有自己的程序计数器、寄存器、和堆栈,它们的功能分别是:

程序计数器(Counter):跟踪要执行的下一条指令;寄存器(Register):临时存储当前执行的指令需要使用的数据;堆栈(Stack):简称栈,可以存储函数相互调用的过程以及期间用到的数据(例如形式参数、局部变量等)。

下图为您展示了单线程进程和多线程进程的内部结构:

图 1 线程的内部结构

其中,Data 表示进程的数据区,Files 表示已打开的一些文件资源,它们为整个进程所有,即所有线程共享这些资源。

和每个进程都对应有一个进程控制块(PCB)类似,每个线程也对应有自己的线程控制块(简称 TCB)。TCB 中记录的线程状态数据要比 PCB 少得多。因此创建一个线程消耗的系统资源更少,线程上下文切换的效率更高。

线程的类型

线程的类型有 2 种,分别为用户级线程和系统级线程。

1) 用户级线程

所谓用户级线程,即由用户自己建立的线程,此类线程的管理工作全部由用户自己完成,操作系统只负责管理进程。

为了便于用户管理和使用线程,操作系统提供有一个供用户使用的线程库,借助它,用户可以轻松实现对线程的创建、调度和销毁操作。此外,线程库还提供有线程间通信,线程上下文切换等功能。

注意,用户级线程的上下文切换,仅限于进行线程间的调度,而不会影响 CPU 调度(进程调度)。

2) 系统级线程

系统级线程指的是由操作系统负责管理的线程。操作系统会提供给用户一个调用接口(API),从而使用户可以创建、执行以及销毁线程。

操作系统在负责管理进程调度的同时,还负责管理系统级线程的调度工作。对于同一进程中的多个线程,操作系统可以将其调度到一个 CPU 上并发执行,也可以将其调度到多个 CPU 上并发执行。

对于多用户级线程的进程来说,操作系统只会为该进程分配一个 CPU。

系统级线程上下文切换的效率不如用户级线程,但仍比进程上下文切换的效率高。

本文链接地址:https://www.jiuchutong.com/zhishi/277452.html 转载请保留说明!

上一篇:Win10无法访问局域网电脑怎么办(Win10无法访问局域网计算机)

下一篇:Mac怎么提高色彩对比度?Mac提高色彩对比度教程(mac电脑色彩设置)

  • 淘宝新店的营销策略(淘宝新店营销话术)

    淘宝新店的营销策略(淘宝新店营销话术)

  • windows是什么意思(windows是什么意思电脑)

    windows是什么意思(windows是什么意思电脑)

  • 10010查流量发什么数字(10010流量查询电话)

    10010查流量发什么数字(10010流量查询电话)

  • 华为荣耀20Pro屏幕点不动(华为荣耀20pro屏幕尺寸)

    华为荣耀20Pro屏幕点不动(华为荣耀20pro屏幕尺寸)

  • 主屏幕与锁定屏幕耗电大怎么解决(主屏幕与锁定屏幕)

    主屏幕与锁定屏幕耗电大怎么解决(主屏幕与锁定屏幕)

  • 邮件是什么类型的数据(邮件是什么类型的)

    邮件是什么类型的数据(邮件是什么类型的)

  • 10000毫安充电宝能充几次(10000毫安充电宝多久充满)

    10000毫安充电宝能充几次(10000毫安充电宝多久充满)

  • ctrl+S什么意思

    ctrl+S什么意思

  • 荣耀9x带不带遥控器功能(华为荣耀9x有没有智能遥控器)

    荣耀9x带不带遥控器功能(华为荣耀9x有没有智能遥控器)

  • 在携程网上订的火车票怎么取(在携程网上订的票怎么查询)

    在携程网上订的火车票怎么取(在携程网上订的票怎么查询)

  • 如何恢复录屏声音(怎样恢复录屏好的视频声音)

    如何恢复录屏声音(怎样恢复录屏好的视频声音)

  • iphone11支持微信分身吗(苹果11是否支持微信)

    iphone11支持微信分身吗(苹果11是否支持微信)

  • 抖音可以指定某人看吗(抖音可以指定某人可见吗)

    抖音可以指定某人看吗(抖音可以指定某人可见吗)

  • ps怎么去杂边(ps怎么去掉杂质)

    ps怎么去杂边(ps怎么去掉杂质)

  • 苹果手机电话拦截在哪(苹果手机电话拦截怎么取消)

    苹果手机电话拦截在哪(苹果手机电话拦截怎么取消)

  • vivo隔空投送在哪(vivo隔空投送照片在哪里设置)

    vivo隔空投送在哪(vivo隔空投送照片在哪里设置)

  • 手机卡怎么升级4g(手机卡怎么升级5g)

    手机卡怎么升级4g(手机卡怎么升级5g)

  • vue字幕字体怎么调(vue字幕)

    vue字幕字体怎么调(vue字幕)

  • 华为nove5i支持红外线吗(华为nove5有红外线吗?)

    华为nove5i支持红外线吗(华为nove5有红外线吗?)

  • 无线网需认证什么意思(无线网需要认证是什么)

    无线网需认证什么意思(无线网需要认证是什么)

  • 小米蓝牙怎么串联(小米蓝牙怎么串联手机)

    小米蓝牙怎么串联(小米蓝牙怎么串联手机)

  • 云黑名单可以解除吗(是云黑名单的一员)

    云黑名单可以解除吗(是云黑名单的一员)

  • 小度在家可以投屏吗(小度在家可以投影吗)

    小度在家可以投屏吗(小度在家可以投影吗)

  • 华为抬手亮屏设置(华为手机如何开启抬手亮屏)

    华为抬手亮屏设置(华为手机如何开启抬手亮屏)

  • 阿里旺旺如何退出登录(阿里旺旺怎么申请退款)

    阿里旺旺如何退出登录(阿里旺旺怎么申请退款)

  • 怎么复原微信聊天内容(怎么复原微信聊天记录)

    怎么复原微信聊天内容(怎么复原微信聊天记录)

  • phpcms如何修改版权(phpstudy修改php版本)

    phpcms如何修改版权(phpstudy修改php版本)

  • 个人所得税减除费用5000是什么意思
  • 税负率的计算公式举例说明
  • 现金流量表填报说明
  • 付款申请单是原单据吗
  • 减免企业所得税怎么算
  • 佣金可以入账吗
  • 商贸公司收到的邮票怎么做账
  • 随意变更会计处理方法违背了
  • 股权转让有哪些方式
  • 公司投资控股其他公司如何做账务处理
  • 个体工商户怎么分配股份
  • 以前年度损益调整属于哪类科目
  • 未分配利润转出会计分录
  • 包装物一次摊销的会计分录
  • 公司报销学费属于 薪酬还是福利呢
  • 我的初级备考经验怎么写
  • 股东房产用于公司经营的是否交房产税
  • 普通发票和增值税专用发票有什么异同
  • 社保和医保是分开到账吗
  • 进口增值税13可以抵扣多少
  • 企业所得税免税政策
  • 进口增值税发票可以抵扣吗
  • 餐饮费开专票
  • 如何修改windows11开机密码
  • 初级会计中应收账款贴现
  • PHP:spl_autoload_functions()的用法_spl函数
  • 国内保理业务是担保类中间业务吗
  • 产供销一体化什么意思
  • 为什么会产生应收账款
  • 漏洞 标准
  • 为什么筹建期间的开办费不属于资产
  • 未分配利润怎么清零
  • tensorboard作用
  • thinkphp接收ajax数据
  • vue更改数据
  • vgextend命令作用及含义
  • 增值税报税后多久缴纳期限
  • 中央空调的维护和保养
  • 固定资产清理借方增加还是减少
  • 退回上年度企业所得税小规模怎么做分录
  • 预付工程款如何结算
  • 超市的购物卡以什么为准
  • java泛型的定义和使用
  • 合营企业和联营企业构成关联方吗
  • 一般纳税人预收租金增值税
  • 在建工程账务处理会计分录
  • 汇算清缴银行手续费扣除比例是多少
  • 购买电脑一次性计入费用吗合理吗
  • 违约金 专票
  • 政府预算会计要素包括
  • 工程项目成本核算
  • 个人转租房需要注意什么
  • 企业领用产品的会计分录
  • 退回增值税发票怎么做处理
  • 定期存款放入哪个会计科目
  • 预缴的附加税月末结转吗
  • 认购股份的形式主要有
  • 收付转三种凭证的限制类型不同所以限制科目也不同
  • 收到同业清算互联前置如何入账
  • mssql查找备注(text,ntext)类型字段为空的方法
  • 双系统怎么设置引导启动项
  • linux的用户
  • 邮件远程控制
  • f11一键恢复系统详解
  • pe硬盘安装win7系统教程
  • linux u盘 readonly
  • win8系统关机键找不见
  • linux常见服务
  • win8怎么设置桌面背景
  • linux显示所有内容
  • win8怎么开机不用密码
  • 常用的js框架有哪些
  • linux 监视器
  • javascript中获取字符串长度
  • 编写高性能代码时以下哪种技术可用于减少内存访问延迟
  • macbookair安卓系统怎么切换到苹果
  • python中元祖的用法
  • 贸易型企业进项发票
  • 税务筹划和纳税申报哪个更容易学
  • 国家税务总局每家公司都可以注册吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设