先了解并行和并发的概念
并行:多CPU下的程序才可以并行
并发:调度器切换CPU给不同进程使用由于切换速度非常快,于是在使用者看来程序是在同时运行,这就是并发,而实际上CPU在同一时刻只在运行一个进程。
有几个概念:
1、进程是程序的一次执行。
2、进程是资源分配的基本单位(调度单位)。
3、一个进程可以包括多个线程。
4、在单CPU计算机中,有一个资源是无法被多个程序并行使用的:CPU。
5、操作系统调度器:拆分CPU为一段段时间的运行片,轮流分配给不同的程序。
6、操作系统内存管理模块:管理物理内存、虚拟内存相关的事务。
再了解进程和线程的概念
进程是操作系统进行资源分配(包括cpu、内存、磁盘IO等)的最小单位
线程是CPU调度和分配的基本单位
CPU只能看到线程,因为CPU拿到的就是进程,只能看到当前进程内的线程,其他进程是看不到的。
来个总结:
1、单CPU中进程只能是并发,多CPU计算机中进程可以并行。
2、单CPU单核中线程只能并发,单CPU多核中线程可以并行。