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

  • 快手如何删除关注的人(快手如何删除关注的人全部)

    快手如何删除关注的人(快手如何删除关注的人全部)

  • 锁屏音乐播放器怎么关闭的呢(锁屏音乐播放器 不见了)

    锁屏音乐播放器怎么关闭的呢(锁屏音乐播放器 不见了)

  • 星标好友发朋友圈会提醒吗(星标好友发朋友圈头像会有红点)

    星标好友发朋友圈会提醒吗(星标好友发朋友圈头像会有红点)

  • 文字编码属于表示媒体吗(文字编码属于表示媒体)

    文字编码属于表示媒体吗(文字编码属于表示媒体)

  • 文件含有违规内容怎么下载(文件含有违规内容 已自动拦截)

    文件含有违规内容怎么下载(文件含有违规内容 已自动拦截)

  • 拼多多没有自然流量的原因(拼多多没有自然流量怎么提升)

    拼多多没有自然流量的原因(拼多多没有自然流量怎么提升)

  • 华为p40pro是100倍变焦吗(华为p40pro是50倍还是100倍)

    华为p40pro是100倍变焦吗(华为p40pro是50倍还是100倍)

  • 魅族17几点发布(魅族17好久发布)

    魅族17几点发布(魅族17好久发布)

  • 手机号码空号了,交话费可以激活吗(手机号码空号了微信密码忘了怎么找回)

    手机号码空号了,交话费可以激活吗(手机号码空号了微信密码忘了怎么找回)

  • 网络上可以共享的资源有(网络上可以共享的包括)

    网络上可以共享的资源有(网络上可以共享的包括)

  • 支付宝的免密支付在哪里设置(如何解除免密支付?)

    支付宝的免密支付在哪里设置(如何解除免密支付?)

  • 录音笔和手机录音有什么区别(录音笔和手机录音那个在法厅效果最佳)

    录音笔和手机录音有什么区别(录音笔和手机录音那个在法厅效果最佳)

  • iphone11无法连接appstore(iPhone11无法连接5Gwifi)

    iphone11无法连接appstore(iPhone11无法连接5Gwifi)

  • 扣扣预设上限怎么解除(qq显示预设数已达上限登不上qq 怎么办)

    扣扣预设上限怎么解除(qq显示预设数已达上限登不上qq 怎么办)

  • 转转怎样解除实人认证(如何解除转转实名认证)

    转转怎样解除实人认证(如何解除转转实名认证)

  • mate20辅助圆点在哪设置(mate20pro辅助圆点)

    mate20辅助圆点在哪设置(mate20pro辅助圆点)

  • 淘宝apass是什么意思(淘宝api是什么意思)

    淘宝apass是什么意思(淘宝api是什么意思)

  • 抖音怎么评论发表情包(抖音怎么评论发图片不是表情包)

    抖音怎么评论发表情包(抖音怎么评论发图片不是表情包)

  • 支付宝怎么领新人红包99元(支付宝怎么领新人红包)

    支付宝怎么领新人红包99元(支付宝怎么领新人红包)

  • pr背景音乐如何变小声(pr背景音乐如何调小)

    pr背景音乐如何变小声(pr背景音乐如何调小)

  • 华为手机屏蔽骚扰电话怎么设置(华为手机屏蔽骚扰电话可以收到短信么)

    华为手机屏蔽骚扰电话怎么设置(华为手机屏蔽骚扰电话可以收到短信么)

  • iphone的隐私相册在哪里(苹果 相册 隐私)

    iphone的隐私相册在哪里(苹果 相册 隐私)

  • cad坐标标注插件(CAD坐标标注插件)

    cad坐标标注插件(CAD坐标标注插件)

  • 一种使用Java的快速将Web中表格转换成Excel的方法(在java中有一种叫做)

    一种使用Java的快速将Web中表格转换成Excel的方法(在java中有一种叫做)

  • 怎么移除css的hover事件(css去掉项目符号)

    怎么移除css的hover事件(css去掉项目符号)

  • 非金银首饰以旧换新增值税
  • 一般纳税人购销印花税减半吗
  • 工会经费每月必须60块钱
  • 公司往来借款在现金流量表哪里填写
  • 测试费用
  • 如何使用发票对冲个人所得税
  • 对公走账是什么意思
  • 非贸税务备案
  • 代扣代缴城建税可以享受六税两费
  • 购进货物用于免征增值税项目
  • 企业分期付款购车分录怎么写
  • 存货在财务报表中存在的财务操纵
  • 为员工买的人寿保险怎么做账
  • 资产负债表和利润表和现金流量表的关系
  • 合伙企业缴纳税款时间
  • 超出发票使用范围
  • 销售返利的税务政策
  • 固定资产原值是含税还是不含税
  • 营改增后餐饮业税种
  • 金税盘上传参数测试连接失败
  • 加工贸易的方式
  • 未开票收入可以不开票吗
  • 冲回坏账准备是什么意思
  • 生产型企业进口退税政策
  • 银行手续费会开发票吗
  • 公司收到项目的现金
  • 研发销售型企业
  • 怎么把qq垃圾全部清除
  • 用php制作日历2020日历表
  • 生产物料报废
  • 代理进口的增值税如何入账
  • 集团关联企业间关联交易对账单
  • php执行sh脚本
  • 房地产企业营改增是哪一年
  • 买入返售金融资产和卖出回购金融资产
  • php获取并显示用户的用户名
  • 农民工工资专用账户
  • element级联选择器动态获取数据
  • 玩转mongodb4.0从入门到实践
  • SQL Sever 2005 Express 安装失败解决办法
  • 资本公积的会计处理方法
  • 出售可供出售金融资产
  • 经营性现金净流量公式
  • 账本登错账怎么修改
  • 因自然灾害发生固定资产净损失
  • 收银系统入库入错了怎么办
  • 其他应收款贷方余额怎么调整
  • 小规模纳税人减按1%账务处理
  • 国际航班怎么报销
  • 酒店购买的餐具可以退吗
  • 企业搬迁补偿款免税的法律依据是什么
  • 编制记账凭证的依据
  • 购入固定资产入账会计处理
  • mysql多表连接的方式
  • Mysql中FIND_IN_SET()和IN区别简析
  • SQLServer CONVERT 函数测试结果
  • ubuntu注册用户
  • page文档的排版技巧
  • 如何清理注册表文件
  • win10开始菜单怎么居中
  • mac win10 wifi
  • windows8图片
  • windows8停止
  • linux系统的安装配置
  • Intermediate Unity 3D for iOS: Part 1/3
  • Tutorial 8:Scaling Transformation
  • bootstrap怎么用
  • div如何排版
  • 微信小程序支付的钱怎么退款
  • Node.js中的包管理工具是什么
  • jQuery实现textarea自动增长宽高的方法
  • javascript入门教学
  • 全面解析日本失去的十年
  • jQuery插件开发
  • Python中的除号
  • 上海退休核定表两种算法
  • 网上新办税务操作流程
  • 国家税务认证平台是什么
  • 税务局窗口人员工作内容
  • 环保标识码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设