花了很多时间来整理这方面的相关内容,参考博客:多CPU,多核,多进程,多线程

程序和进程

  • 程序: 为完成特定任务,用某种语言编写的一组指令集合,即一段静态的代码
  • 进程:程序的一次执行过程,或是正在运行的一个程序,是一个动态的过程,比如电脑上的各种运行中的软件

进程和线程

  • 进程可进一步细化为线程,是一个程序内部的一条执行路径,比如杀毒软件中的体检,杀毒,清理等都是一个进程中的多个线程
  • 一个进程同一时间并行多个线程,多线程是程序有多个线程在同时执行,就表示支持多线程
  • 线程是CPU调度和分配的基本单位(可以理解为CPU只能看到线程)
  • 进程是操作系统进行资源分配(包括cpu、内存、磁盘IO等)的最小单位
  • java默认有2个线程:main和GC

并行与并发

  • 并行: 指在同一时刻,有多条指令(线程)在多个处理器(cpu上多个核)上同时执行,并行在多处理器系统中存在
  • 并发: 指在同一时刻只能有一条指令执行,但多个进程指令被快速的轮换执行,使得在宏观上具有多个进程同时执行的效果,但在微观上并不是同时执行的,只是把时间分成若干段,使多个进程快速交替的执行,并发可以在单处理器和多处理器系统中都存在

单核多线程

单核多线程指的是单核CPU轮流执行多个线程,通过给每个线程分配CPU时间片来实现,只是因为这个时间片非常短(几十毫秒),所以在用户角度上感觉是多个线程同时执行。

多核多线程

可以把多线程分配给不同的核心处理,其他的线程依旧等待,相当于多个线程并行的在执行

CPU的多核和应用程序的多线程的关系

多核就是系统同时可以运行多个线程,比如双核可以同时执行两个线程。单核儿只能一次执行一个线程

规律

  • 单CPU中进程只能是并发,多CPU计算机中进程可以并行也可以并发。
  • 单CPU单核中线程只能并发,单CPU多核中线程可以并行也可以并发。
  • 无论是并发还是并行,使用者来看,看到的是多进程,多线程。

单核cpu多核cpu如何执行多线程相关推荐

  1. 线程VS进程,多线程VS多进程,并行VS并发,单核cpuVS多核cpu

    目录 概论 进程VS线程 并发VS并行 多线程VS多进程 总结 概论 程序是为完成特定任务.用某种语言编写的组指令的集合.即指一段静态的代码,静态对象. 进程是程序的次执行过程, 或是正在运行的 一个 ...

  2. 多CPU 多核CPU | 多进程 多线程 | 并行 并发

    文章目录 区分 多CPU && 多核CPU CPU缓存 并行 && 并发 多CPU && 多核CPU | 多进程 && 多线程 | 并行 ...

  3. 多核处理器_AMD锐龙翻身!单核、多核CPU跑分均名列榜首

    原标题:AMD锐龙翻身!单核.多核CPU跑分均名列榜首 近两年来,CINBENCH这款软件的跑分成绩越来越受到关注.日前,开发商Maxon发布了最新的CINBENCH R23测试软件,带来不少改进.最 ...

  4. 如何区分单核与多核cpu及理解并行与并发

    一.单核cpu和多核cpu的区分: 1.单核cpu: 实际上是一种假的多线程,因为在同一时间单元内 ,只能执行一个线程任务,只不过在非常短时间内迅速切换执行不同线程,让人误认为是在同时执行多个线程 2 ...

  5. 内核/逻辑处理器/线程/多线程/多CPU/多核CPU

    文章目录 1. 逻辑CPU 2. 线程数和逻辑CPU个数,内核个数 3.线程/进程/多核CPU 1. 逻辑CPU 先查看电脑cpu信息,可以看到,是8个逻辑cpu 2. 线程数和逻辑CPU个数,内核个 ...

  6. 计算机专业需要单核还是多核,CPU主频指的是单核还是多核,多核计算机是指计算机有多个CPU-...

    小伙伴周末的留言里有几个人一直问买什么CPU合适. 如果仅仅是单纯看钱,那小编的回答肯定是在你经济承受范围内最贵的那个最合适. 不过呢,因为大家的需求各不相同,CPU可真不是靠钱衡量就可以的,今天小编 ...

  7. 计算机专业需要单核还是多核,CPU主频和核数哪个重要?买CPU是选多核还是高主频?...

    架构.核心.主频作为决定电脑CPU性能的核心三要素,在同代相同架构环境下,如果不考虑预算,自然是选择CPU核心和主频越高的越好.但在有限的预算下,是追求多核心还是高主频呢?今天"电脑百事网& ...

  8. 多线程与单核cpu,多核cpu概念

    1.多线程在单核和多核CPU上的执行效率问题的讨论  a1: 多线程在单cpu中其实也是顺序执行的,不过系统可以帮你切换那个执行而已,其实并没有快(反而慢)  多个cpu的话就可以在两个cpu中同时执 ...

  9. 对多线程程序,单核cpu与多核cpu如何工作相关的探讨

    对多线程程序,单核cpu与多核cpu如何工作相关的探讨 我们程序员在编码的时候,涉及到技术方案时,往往会忽略掉代码对性能方面的影响,或者没有足够的敏感度来帮助自己判断自己的技术方案对系统性能造成的影响 ...

最新文章

  1. 深入理解Python中的生成器
  2. C#多线程与UI响应 防止界面假死不响应(子线程创建的窗体获取消息响应用Application.DoEvent )
  3. JAVA编程思想读书笔记(三)--RTTI
  4. 加密解密概述及openssl应用及其创建CA和签发证书的实现
  5. 调用图片文件夹中的任意图片随机显示_【分享】文字、表格、公式图片识别神器V0.8...
  6. 案例 体检套餐管理系统 需求一览 c# 1614099219
  7. CentOS7下LVS+Keepalived实现高性能高可用负载均衡
  8. 开启灯光就是近光吗_科目三考前必看!夜间灯光语音模拟+超全项目操作
  9. android java资源包下载网站
  10. ImageLoader的简单分析(二)
  11. 怎样成为一名优秀的运维工程师
  12. 《一天搞懂深度学习》--李宏毅
  13. sqluldr2用法
  14. python qt5 安装
  15. 目标检测里,视频与图像有何区别?
  16. linkerd1.6 local安装方式文档
  17. Linux驱动学习12(初步认识内存管理)
  18. POLYWORKS案例:MTU航空发动机 - 最前沿的机翼检测技术
  19. vue在浏览器端报错:Module not found: Error: Can't resolve 'common/js/util' in 'E:\vue-exercise\sell\src'
  20. Python实现86五笔反查代码

热门文章

  1. 思科ccna认证工程师必看路由协议IGRP和EIGRP详解
  2. Qt运行程序弹出异常窗口解释
  3. WebKit 打电话失败的问题
  4. scrapy_AttributeError: 'generator' object has no attribute 'meta'''_'generator' 'dont_filter'
  5. unreal4 源码引言
  6. 将【axmol】引擎的OpenAL实现在iOS平台替换openal-soft详细过程
  7. 大数据分析深度学习在自然语言处理NLP中的应用
  8. 数据防泄密方案与需求匹配程度分析
  9. C#实现上位机与PLC通信
  10. PPT锁定了,不能编辑是什么原因