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

  • 决胜2016年:腾讯视频“四大秘密武器”玩转花式营销(决胜现场)

    决胜2016年:腾讯视频“四大秘密武器”玩转花式营销(决胜现场)

  • 惠普519打印机怎么连接wifi(惠普519打印机怎么清洗打印头)

    惠普519打印机怎么连接wifi(惠普519打印机怎么清洗打印头)

  • 华为nova7pro有几个颜色呢(华为Nova7pro有几寸)

    华为nova7pro有几个颜色呢(华为Nova7pro有几寸)

  • 华为nova7可以指关节截屏吗(华为nova7可以屏幕指纹解锁吗)

    华为nova7可以指关节截屏吗(华为nova7可以屏幕指纹解锁吗)

  • 朋友圈图片怎么配自己喜欢的音乐(朋友圈图片怎么转发)

    朋友圈图片怎么配自己喜欢的音乐(朋友圈图片怎么转发)

  • 微信怎么查看好友添加时间(微信怎么查看好友的来电铃声)

    微信怎么查看好友添加时间(微信怎么查看好友的来电铃声)

  • 小米8屏幕几秒就变暗(小米8屏幕几秒就黑屏)

    小米8屏幕几秒就变暗(小米8屏幕几秒就黑屏)

  • 苹果x按压壁纸动不了(iphone x按压功能设置)

    苹果x按压壁纸动不了(iphone x按压功能设置)

  • 华为设置的电话黑名单怎么拉出来(华为设置的电话铃声)

    华为设置的电话黑名单怎么拉出来(华为设置的电话铃声)

  • 指针和数组的区别(指针和数组的区别在哪)

    指针和数组的区别(指针和数组的区别在哪)

  • ipadmini5长宽多少厘米(ipadmini5 长宽)

    ipadmini5长宽多少厘米(ipadmini5 长宽)

  • 苹果11剩余多少电量充电(苹果11剩余多少电量充电最好)

    苹果11剩余多少电量充电(苹果11剩余多少电量充电最好)

  • 手机信号上面显示的E是什么意思(手机信号上面显示4g+是什么意思)

    手机信号上面显示的E是什么意思(手机信号上面显示4g+是什么意思)

  • 笔记本触摸板怎么用滑轮(笔记本触摸板怎么拖动文件)

    笔记本触摸板怎么用滑轮(笔记本触摸板怎么拖动文件)

  • itunes商店未使用是什么意思(apple id 在itunes商店未使用过)

    itunes商店未使用是什么意思(apple id 在itunes商店未使用过)

  • 美图手机t8像素多少(美图t8s手机像素)

    美图手机t8像素多少(美图t8s手机像素)

  • 手机流量超了怎么办(手机流量超了怎么扣费)

    手机流量超了怎么办(手机流量超了怎么扣费)

  • 苹果手机怎么下载连信(苹果手机怎么下载软件)

    苹果手机怎么下载连信(苹果手机怎么下载软件)

  • procreate手机能用吗(手机可以用procreate)

    procreate手机能用吗(手机可以用procreate)

  • 抖音半屏怎么拍(抖音半屏怎么拍视频)

    抖音半屏怎么拍(抖音半屏怎么拍视频)

  • 秀米怎么发送给微信好友(秀米怎么发送给别人的秀米账号)

    秀米怎么发送给微信好友(秀米怎么发送给别人的秀米账号)

  • realmex语音唤醒(realmex语音唤醒功能)

    realmex语音唤醒(realmex语音唤醒功能)

  • 快手怎么ktv模式直播(快手ktv怎么唱歌)

    快手怎么ktv模式直播(快手ktv怎么唱歌)

  • 基于Vue+Python的应用搭建——前端[1](pycharm vue)

    基于Vue+Python的应用搭建——前端[1](pycharm vue)

  • 收到投资款要交企业所得税吗为什么
  • 加油站购进成品油怎么做账
  • 无合同销售收入怎么算
  • 财产租赁合同金额含税吗
  • 销项负数发票能用吗
  • 资产处置收益是什么意思
  • 赠送固定资产会计处理
  • 跨境电商有进口吗
  • 工程款抵房款账务怎么做
  • 计算客户的应收账款成本
  • 计提存货跌价准备计算公式
  • 建筑业的发票
  • 三证合一后企业还有什么证照
  • 工资薪金支出税收金额怎么算
  • 房产税税率2023税率表
  • 仓库间的调拨流程
  • 期末结转生产成本会计分录
  • 固定资产销售账务处理的例题
  • 705元大写金额怎么写的
  • 小规模企业所得税按季度还是按年
  • 筹建期间的开办费包括哪些
  • 已认证抵扣的进项税额转出做账的会计处理
  • 购买所有物品都是可以退货吗
  • 房地产企业能申请破产吗
  • 补交之前年度税款怎么调账
  • 冲销去年多计提所得税怎么做
  • array php
  • 跨区域预缴增值税是当月还是次月
  • 什么是成本会计
  • 【深度学习】pix2pix GAN理论及代码实现与理解
  • vue3.0 vite
  • php execute函数
  • 社会团体会员费做分录
  • 小规模纳税人抵税是普票还是专票
  • 非财政补助结转是什么类科目
  • python函数如何返回列表
  • 销售费用包括哪些明细科目
  • 小规模销项税分录
  • 资产处置损益是当期损益吗
  • 房屋租赁的发票能抵扣吗
  • 租赁吊车服务的利润大概有多少
  • Mysql数据库分库分表语句
  • 个税申报填错了就这样报了怎么办
  • 应交税费余额是什么意思
  • 月末一般要结转哪些会计科目
  • 增值税进项发票抵扣期限是多少天?
  • 长期待摊费用待摊费用
  • 公司送礼怎么记账
  • 其他应收款为负数正常吗
  • 企业间借款利息开票税收分类编码
  • 跨月的发票开错了该怎么办?
  • bulk insert formatfile
  • Ubuntu16.04 server下配置MySQL,并开启远程连接的方法
  • 没有本地策略的网站
  • win8开始界面
  • zhp.exe是什么进程
  • linux px
  • linux vs windows
  • npfmntor.exe - npfmntor是什么进程 有什么用
  • mce文件是什么软件
  • win8.1 操作中心
  • win10资源管理器启动不了
  • glibc2.14安装
  • win7系统安装office2019
  • Win10 Build 14279正式推送 更新后QQ可能会崩溃
  • 如何优化资本结构
  • border:none与border:0使用区别
  • 1.常用
  • linux 进程监控
  • 批处理字符串截取
  • java轻松学
  • 请不要重复犯我在学习Python和Linux系统上的错误
  • js cookie用法
  • android下的单元测试要配置以下说法不正确的是
  • jQuery ajax调用后台aspx后台文件的两种常见方法(不是ashx)
  • 成品油和非成品油的税务知识
  • 新车购置税最低多少钱
  • 江苏预包装食品备案网上流程
  • 四川省地方税务局公告2018年第1号
  • pppoe账号密码改了连不上网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设