单核cpu多核cpu如何执行多线程

news/2024/11/16 11:57:45/

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

程序和进程

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

进程和线程

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

并行与并发

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

单核多线程

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

多核多线程

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

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

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

规律

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

http://www.ppmy.cn/news/244153.html

相关文章

多进程、多线程、多核CPU——(I)

前言 在介绍多线程时,首先分析进程、以及多道程序设计模型。进程是操作系统中最重要的抽象概念之一,使得在即使只有一个CPU的机器上,也支持(伪)并发,即将一个单独的CPU变成多个虚拟的CPU。 多道程序设计 …

Android 多屏显示

背景: 车载操作系统,现在的折叠屏手机, 已经售货机等,都会需要有多屏异显的功能 具体代码实现 添加显示到第二屏需要的代码 package com.mine.myapplication;import android.app.Presentation; import android.content.Context; import a…

浅谈多核CPU、多线程与并行计算

0.前言 最近发觉自己博客转帖的太多,于是决定自己写一个原创的。笔者用过MPI和C#线程池,参加过比赛,有所感受,将近一年来,对多线程编程兴趣一直不减,一直有所关注,决定写篇文章,算是…

多核cpu与多线程理解

计算机cpu与多线程 进程和线程: 进程包含线程,一个进程中包含多个线程. 线程是cpu调度和分配的基本单位,进程是操作系统进行资源分配(cpu,内存,硬盘io等)的最小单位. 单核cpu: 实现多进程依靠于操作系统的进程调度算法,比如时间片轮转算法,比如有3个正在运行的程序(即三个进程…

多处理器架构

多处理器架构是一种计算机体系结构,它具有多个处理器或中央处理单元(CPU),这些处理器可以同时处理多个任务和数据。多处理器架构可以大大提高计算机的性能和吞吐量,特别是在需要处理大量数据和高度并发的应用程序中。 …

单核处理器、多核处理器、多处理器与多线程编程

一.进程、线程、单核处理器 进程和线程都是操作系统的概念。进程是应用程序的执行实例,每个进程是由私有的虚拟地址空间、代码、数据和其它各种系统资源组成,即进程是操作系统进行资源分配的最小单元。进程在运行过程中创建的资源随着进程的终…

单核处理器、多核处理器、多处理器与多线程编程,cpu调度

进程的概念: 进程是资源(CPU、内存等)分配的基本单位,它是程序执行时的一个实例。程序运行时系统就会创建一个进程,并为它分配资源,然后把该进程放入进程就绪队列,进程调度器选中它的时候就会为…

操作系统与多核处理器

这篇文章解答了我心中的疑问,那就是操作系统会自动调度cpu资源来处理多进程,多线程的并发。 早在上世纪90年代末,就有众多业界人士呼吁用CMP( 单芯片多处理器)技术来替代复杂性较高的 单线程CPU。IBM、惠普、Sun等高端服务器厂商,…