首页 > 其他分享 >【技术研究】并行和并发

【技术研究】并行和并发

时间:2023-09-24 23:45:29浏览次数:29  
标签:中断 并行 技术 并发 线程 进程 TCB CPU

突然由TEB转向并行和并发是因为在研究线程和进程的时候,在研究切换线程的问题的时候,不明白在计算机当中,是怎么样在同样进程的不同线程,不同进程的不同线程当中切换的,特此再学习并行和并发。
我的定义:
并发:一个CPU在面对多个任务的时候,将任务分成多个碎块,给每个碎块一定的时间,然后执行第一个碎片,执行完它的时间后根据一定的调度原则去执行下一个碎块。
并行:多个CPU在面对多个任务,不同的CPU处理不同的任务。
而这两者并非互斥概念,在一台计算机的多核处理器,也就是拥有多个处理单元,每个处理单元都会采用并发策略。

着重学一下并发
主要是解决一下我上面的问题,如何在不同的进程的不同线程当中切换。

  1. 现在执行进程A的线程1,CPU的控制权,包括PC指针,栈指针,程序状态字等,全在这个线程上面。
  2. 在计算机的硬件时钟当中不停地出发时钟中断,每次时钟中断都会将控制权交给操作系统内核的定时器中断处理程序,这是一个特殊的中断处理程序,他负责处理时间相关的操作,比如任务切换和时间片的管理。
  3. 如果查到已经用完了,调度器就会从就绪队列中找到合适的线程来执行。现在选择了进程B
  4. 现在需要进行上下文切换了,先将线程1的上下文先存到这个线程的TCB(线程控制块是存放在内核的数据结构当中的,每个线程都有)中,包括PC指针等寄存器值。
  5. 加载进程B的线程4的上下文信息(也是从TCB当中)。
  6. 更新线程或者进程的状态信息,标记进程B位运行态,线程4正在运行(这里的更新不止是更新当下寄存器的值,也是更新TCB当中的值)
  7. CPU控制给这个线程4,开始执行
  8. 后面重复
    在学习过程当中,遇到了不少问题
    关于当下上下文信息是和TCB和所在栈区有什么关系

    TEB和TCB被存放在哪里

    定时器中断处理程序是如何检查当下时间片用完没

    关于时间片分配和浪费(时间片的分配尽量和时钟中断的频率相匹配)

    关于时钟中断资源造成浪费

标签:中断,并行,技术,并发,线程,进程,TCB,CPU
From: https://www.cnblogs.com/Corax0o0/p/17726953.html

相关文章

  • 面试一轮技术面二轮技术面三轮综合面
    面试一轮技术面二轮技术面三轮综合面之前朋友,同事应届毕业生,本科毕业之前培训了2个月的软件测试,毕业找到了软件测试的工作。7.2k+。ruanTong面完之后就开始整理。1)请你先做一个简单的自我介绍? 2)大概以一个项目经历,来具体展开一下,你在项目中负责哪个模块,怎么做测试设计?你在做......
  • Spartacus 启动时 basesites OCC API 请求的技术细节
    SAPSpartacus是一款开源的电子商务前端框架,旨在提供可扩展、可自定义和可维护的电子商务Web应用程序。在Spartacus应用程序启动时,发起的OCC(OpenCommerceCloud)请求occ/v2/basesites?fields=FULL是一个重要的请求,用于获取有关基本站点(basesites)的信息。本文将详细介绍这个请求的......
  • 网络技术-数据转发过程
    前言TCP/IP协议簇喝底层协议配合,保证了数据能够实现端到端的传输。数据传输过程是一个非常复杂的过程,例如数据在转发的过程中会进行一系列的封装和解封装。对于网络工程师来说,只有深入地了解了数据再各种不同设备上的转发过程,才能对网络进行正确的分析和检测。 网关:网关(Gate......
  • 视野修炼-技术周刊第55期
    笔者在GitHub开了个discussion......
  • 家用冰箱与速冻技术:了解与误区
    在日常生活中,我们经常使用冰箱保存食品,或购买超市的速冻食品。但是,你真的了解这两者之间的区别吗?这篇文章将为你揭示家用冰箱与专业速冻技术之间的神秘面纱。2.家用冰箱的速冻能力虽然家用冰箱具有冷冻功能,但与专业的速冻设备相比,其冷冻速度和效率通常较低。专业速冻:专业......
  • 桃子的保存与冷冻技术
    桃子,作为一种受人们喜爱的水果,其鲜嫩的果肉和甜美的风味总是令人难以忘怀。然而,桃子的保存一直是一个挑战。本文将深入探讨桃子的保存方法,特别是冷冻技术,帮助你更好地享受这一美味。1.桃子的保存挑战桃子因其高水分、糖分和酸度,变得非常容易腐烂。这使得桃子很容易受到微生物、......
  • 数据恢复神器EaseUSDataRecovery数据恢复软件技术终身版免费下载
    EaseUSDataRecovery数据恢复软件免费版是一款优秀的数据恢复工具,可以帮助我们找回因各种原因丢失的数据。如果您正在被数据丢失问题所烦恼,请立刻免费下载数据恢复软件,开始进行数据恢复吧。数据恢复软件终身版本数据恢复软件免费版可以帮助用户找回因删除、格式化、分区丢失、分区损......
  • 12张图一次性搞懂高性能并发容器ConcurrentLinkedQueue
    12张图一次性搞懂高性能并发容器ConcurrentLinkedQueue前言上篇文章聊到并发集合CopyOnWeiteArrayList的实现与特点,其不足之处是不适合写多的场景也不适合并发量大的场景本篇文章来聊聊并发场景下高性能的ConcurrentLinkedQueue阅读本文大概需要10分钟在阅读本文前,需要理解CAS......
  • 易我数据恢复EaseUS Data Recovery Wizard 16.0技术员终身版你的数据恢复神器
    易我数据恢复EaseUSDataRecoveryWizard16.0技术员终身版为全球提供数据恢复方案,用于误删数据数据,电脑误删文件恢复,格式化硬盘数据恢复、手机U盘数据恢复等。RAID磁盘阵列数据恢复,分区丢失及其它未知原因丢失的数据恢复、简单易用轻松搞定数据恢复。EaseUSDataRecoveryWizar......
  • 《Java核心技术卷Ⅰ》
    《Java核心技术卷Ⅰ》阅读笔记,更新中——第一章Java程序设计概述1.1Java白皮书1)简单性2)面向对象3)分布式4)健壮性5)安全性6)体系结构中立7)可移植性8)解释性9)高性能10)多线程11)动态性1.1.1简单性Java可以说是C++的一个纯净版本。Java没有头文件、指针运算、结构、联......