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

  • 苹果13耳机孔在哪里(iphone13的耳机孔在哪)

    苹果13耳机孔在哪里(iphone13的耳机孔在哪)

  • 荣耀x10不能用4g卡吗(华为荣耀x10为什么不可以用5g)

    荣耀x10不能用4g卡吗(华为荣耀x10为什么不可以用5g)

  • 手机发热是什么原因(手机发热是什么原因怎么处理方法)

    手机发热是什么原因(手机发热是什么原因怎么处理方法)

  • 表格中的文字怎么一行弄成两行(表格中的文字怎么居中对齐)

    表格中的文字怎么一行弄成两行(表格中的文字怎么居中对齐)

  • 华为mate30看视频怎么全屏

    华为mate30看视频怎么全屏

  • 快手直播封禁什么意思(快手显示直播封禁 封多久)

    快手直播封禁什么意思(快手显示直播封禁 封多久)

  • 微信群管理员可以删除别人发的信息吗(微信群管理员可以艾特所有人吗)

    微信群管理员可以删除别人发的信息吗(微信群管理员可以艾特所有人吗)

  • word有免费版本吗(word免费版本怎么下载)

    word有免费版本吗(word免费版本怎么下载)

  • 苹果se2与苹果11的区别(苹果se2与苹果11性价比)

    苹果se2与苹果11的区别(苹果se2与苹果11性价比)

  • 什么叫数据流(什么叫数据流小说)

    什么叫数据流(什么叫数据流小说)

  • qq传视频为什么传不上(qq传视频为什么传不上需要升级)

    qq传视频为什么传不上(qq传视频为什么传不上需要升级)

  • 小米手环充电一直震动(小米手环充电一会就满了)

    小米手环充电一直震动(小米手环充电一会就满了)

  • ipad开不了机是为什么(ipad开不了机为什么)

    ipad开不了机是为什么(ipad开不了机为什么)

  • 小灵通和手机有什么区别(小灵通手机有卡吗)

    小灵通和手机有什么区别(小灵通手机有卡吗)

  • 微信号封几次会永久封(微信号封几次会被冻结)

    微信号封几次会永久封(微信号封几次会被冻结)

  • word2007如何取消行号(word2007如何取消首字母大写)

    word2007如何取消行号(word2007如何取消首字母大写)

  • 华为mate30截图快捷(华为mate30截图怎么截一小块)

    华为mate30截图快捷(华为mate30截图怎么截一小块)

  • 快手怎么弄淘宝店铺(快手怎么添加淘宝)

    快手怎么弄淘宝店铺(快手怎么添加淘宝)

  • 苹果11三款机型有什么区别(苹果11三款机型哪个最值得买)

    苹果11三款机型有什么区别(苹果11三款机型哪个最值得买)

  • imessge信息要话费吗

    imessge信息要话费吗

  • 华为变焦50倍手机是什么型号(华为50倍变焦不清楚)

    华为变焦50倍手机是什么型号(华为50倍变焦不清楚)

  • Word中保存文本的快捷键是(文本文档保存)

    Word中保存文本的快捷键是(文本文档保存)

  • qq传输文件最大多少(qq传输文件最大支持多少)

    qq传输文件最大多少(qq传输文件最大支持多少)

  • 苹果商店地区切换(苹果商店地区切换不成功)

    苹果商店地区切换(苹果商店地区切换不成功)

  • QQ浏览器 for Mac版 3.0体验功能详解 书签同步手机iPad也能看(Qq浏览器里的文档怎么以文件形式发送)

    QQ浏览器 for Mac版 3.0体验功能详解 书签同步手机iPad也能看(Qq浏览器里的文档怎么以文件形式发送)

  • js中几种循环的退出方式(js循环有哪些)

    js中几种循环的退出方式(js循环有哪些)

  • 商贸企业购销混凝土税率怎么选择
  • 缴纳印花税的会计科目
  • 关联方交易金额含税吗
  • 个体工商户怎样纳税
  • 费用挂账的会计分录怎么做
  • 报销单用法
  • 支付宝公户可以转私户吗
  • 公司给的出差津贴
  • 购销合同印花税最新政策2023
  • 购买固定资产进项税率
  • 收到的扶贫工作经费会计分录
  • 商品编码选错税务会直接罚款吗?
  • 蔬菜批发公司销售蔬菜是否免税
  • 劳务税能不能抵扣
  • 企业汇算清缴后税务局会不会查
  • 开通电子税务局需要什么资料
  • 工厂拆迁补偿款60岁前和60岁后有什么标准
  • 策划公司费用怎么算
  • 公司全额承担个税会计分录
  • 利润分配未分配利润期末有余额吗
  • 城镇土地使用税征收范围
  • 下列项目中属于免征增值税的有
  • 长期待摊费用2021
  • linux配置与管理教程
  • mac安装双系统教程
  • 期货交易所返还期货公司利息
  • 发票作废怎么申请退税
  • 金鱼花的养殖方法与注意事项
  • 法人营业执照和非法人营业执照
  • 所得税分配表分录怎么写
  • php管理员和用户登录
  • 普莱斯德
  • SE注意力机制加在什么位置
  • redis两种持久化方式的优缺点
  • springboot自动配置的注解
  • 银行汇票和银行承兑汇票的区别
  • 其他应付款的账户结构
  • 应收款挂账会计分录
  • react高阶组件
  • 如何在控制台打印debug里的数据
  • 预付账款的会计编码是多少?
  • 原始凭证分割单可以入账么
  • 商业承兑汇票的流程
  • 计提和结转的例子
  • 会计科目是怎么来的
  • 管理费用的纳税调整
  • 未投入使用的固定资产折旧计入什么科目
  • 建筑公司工程款税率
  • ukey要交服务费吗
  • 购置一项设备,有两种可供选择
  • 替其他公司支付工资怎么做账
  • 快递公司的主营业务范围
  • 年初建账考虑要点有哪些
  • 一个简单的群规怎么写
  • 虚拟系统win10
  • win8恢复出厂设置方法
  • win8更新一直停着不动
  • ubuntu下source、sh、bash、./执行脚本的区别详细介绍
  • ubuntu系统中文件夹不能改名
  • linux系统怎么安装
  • sgbhp.exe - sgbhp是什么进程 有什么用
  • win10系统打不开应用程序
  • 如何删除win7系统自带游戏软件
  • 黑白棋手机游戏
  • nodejs npm package.json中文文档
  • css划动
  • unity intercom
  • android网络请求时怎么取消
  • centos6安装python
  • unity3d操作
  • ugy与ngy
  • python app爬虫教程
  • 全面解析俄乌武器对比
  • android系统主要特点
  • 税务局报备资产怎么填
  • 江苏省国家税务局电子税务局官网
  • 如何在电子税务局变更财务负责人
  • 药品定价的三种形式
  • 转卖车位土地增值税税率
  • 临沂市2020年居民燃气价格
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设