位置: 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电脑色彩设置)

  • 钉钉直播自动对焦在哪里关(钉钉直播自动对焦)

    钉钉直播自动对焦在哪里关(钉钉直播自动对焦)

  • 华为荣耀20s尺寸多大(华为荣耀20s是几寸手机)

    华为荣耀20s尺寸多大(华为荣耀20s是几寸手机)

  • 苹果短信标志有个叹号(苹果短信标志有几种)

    苹果短信标志有个叹号(苹果短信标志有几种)

  • 剪映如何镜像翻转(剪映 镜像翻转)

    剪映如何镜像翻转(剪映 镜像翻转)

  • 什么样的wifi密码万能钥匙破不了(什么样的wifi密码不容易被破解)

    什么样的wifi密码万能钥匙破不了(什么样的wifi密码不容易被破解)

  • word双击打不开origin(word双击打不开chemdraw)

    word双击打不开origin(word双击打不开chemdraw)

  • 华为手机录像模糊是什么原因(华为手机录像模糊不清怎么回事)

    华为手机录像模糊是什么原因(华为手机录像模糊不清怎么回事)

  • 腾讯会议怎么换扬声器(腾讯会议怎么换号登录)

    腾讯会议怎么换扬声器(腾讯会议怎么换号登录)

  • 微信电话的静音是静自己这边的吗(微信电话的静音是关闭麦克风吗)

    微信电话的静音是静自己这边的吗(微信电话的静音是关闭麦克风吗)

  • 笔记本换固态硬盘会不会快一点(笔记本换固态硬盘需要断电吗)

    笔记本换固态硬盘会不会快一点(笔记本换固态硬盘需要断电吗)

  • qq删除好友是双删吗(qq删除好友双向删除功能什么时候开始的)

    qq删除好友是双删吗(qq删除好友双向删除功能什么时候开始的)

  • 美版att支持电信吗(美版att支持移动吗)

    美版att支持电信吗(美版att支持移动吗)

  • 手机被摔了好多次有影响吗(手机被摔了好多次会不会爆炸)

    手机被摔了好多次有影响吗(手机被摔了好多次会不会爆炸)

  • 租的充电宝可以在别的地方还吗(租的充电宝可以充两个手机吗)

    租的充电宝可以在别的地方还吗(租的充电宝可以充两个手机吗)

  • 安全登录提醒什么意思(安全登录验证怎么取消)

    安全登录提醒什么意思(安全登录验证怎么取消)

  • qq面对面建群怎么进(qq面对面建群怎么建)

    qq面对面建群怎么进(qq面对面建群怎么建)

  • 华为手机hd关闭好不好(华为手机hd关闭代码)

    华为手机hd关闭好不好(华为手机hd关闭代码)

  • md513ch/a是ipad几代(md513j/a是ipad几)

    md513ch/a是ipad几代(md513j/a是ipad几)

  • 随机误差和系统误差的区别(随机误差和系统误差有何区别)

    随机误差和系统误差的区别(随机误差和系统误差有何区别)

  • iphone7是a几处理器(苹果7是a10处理器吗)

    iphone7是a几处理器(苹果7是a10处理器吗)

  • 移动双v会员怎么取消(移动双v会员怎么领取)

    移动双v会员怎么取消(移动双v会员怎么领取)

  • 怎么把时间和天气设置到桌面(怎么把时间和天气设置到主屏幕上)

    怎么把时间和天气设置到桌面(怎么把时间和天气设置到主屏幕上)

  • 关闭迅游自动续费(讯游怎么关闭自动续费)

    关闭迅游自动续费(讯游怎么关闭自动续费)

  • 华为智慧视觉怎么关闭(华为智慧视觉怎么唤醒)

    华为智慧视觉怎么关闭(华为智慧视觉怎么唤醒)

  •  闲鱼中3小时公益是什么(闲鱼三个小时确认收货)

    闲鱼中3小时公益是什么(闲鱼三个小时确认收货)

  • bsdtar命令  读取和写入磁带存档文件(btrfs 读取)

    bsdtar命令 读取和写入磁带存档文件(btrfs 读取)

  • 织梦增加tag属性分类及调用(织梦添加文章如何修改高级参数)

    织梦增加tag属性分类及调用(织梦添加文章如何修改高级参数)

  • 股权转让和变更法人一样吗?
  • 上下班出了事故算不算工伤
  • 个人独资企业是有限责任还是无限责任
  • 甲供材入账
  • 小规模开票多少不用交税
  • 现金折扣冲减收入吗
  • 汇算清缴时有哪些需要调整的项目
  • 自然人独资是小规模纳税人吗
  • 个税申报专项扣除怎么填
  • 管理费用怎么结转成本
  • 企业转让固定资产要交什么税
  • 机动车发票怎么入账
  • 建筑业工程项目登记是哪方提交
  • 应税职工福利费在应纳税所得额里面吗
  • 增值税怎样报税
  • 金税三期社保费管理客户端v1.0.088(生产环境)
  • 餐饮业购买餐桌椅会计分录
  • 工程预付款的规定
  • 销售返利如何做分录
  • 店内上保险退保
  • 农村合作社纳税零申报
  • 小规模付增值税怎么做账
  • 收到发票最晚什么时候付款
  • 库存股股本属于什么科目,借贷方向
  • 键盘剪切板怎么打开
  • 华硕win10笔记本如何恢复出厂设置
  • 增值税发票红字发票怎么开具
  • 进项税大于销项税怎么结转
  • php字符串赋值
  • phppost提交json
  • php 配置
  • 税收筹划的原则包括
  • php5 mysql教程
  • 一个非常有用的工具用英语怎么说
  • php echo js
  • 工程服务费会计怎么做账
  • h5页面跳转小程序不显示按钮
  • 推荐国内免费使用的电影
  • set命令用法
  • 应交税费的主要成本
  • 原始凭证必要时可以涂改
  • 费用类和成本类有哪些
  • viite
  • 5 分钟速通 SVG
  • 批处理命令在windows操作中的典型应用
  • php网站访问量大怎么优化
  • 用于研发的材料做成产品出售后怎么做账
  • 残疾人就业保障金申报时间
  • 以件数为印花税计税的有哪些
  • 报销为什么不能打给投保人
  • 固定资产折旧会计凭证
  • 私车公用产生的费用算不算在公务用车运行维护费中
  • 逾期的押金收入
  • 开发成本存货怎么算
  • 暂估入库发票差异调整
  • 土地出让金抵减增值税
  • 成本核算方法有哪几种
  • 施工企业内部管理制度
  • 商业企业购入商品
  • mysql使用命令
  • XP系统无法安装软件
  • windows7的内存基本要求
  • xp系统蓝屏解决
  • win10周年版
  • win8.1无法进入系统
  • 如何在win7上打开win10软件
  • cocos2dx运行原理
  • unity3d c语言
  • 自定义仪表盘的价值
  • bat批处理视频教程
  • 提高css文件可维性的方法
  • 优化lr
  • 资源加载中是什么原因
  • python 连接符
  • 用javascript
  • 国税总局关于总局的文件
  • 江西省医保卡缴费
  • 怎么注册山东省采购网
  • 1国家税务总局
  • 消费税税目税率表2019
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设