备案图标怎么放在网站中,wordpress 开关 边栏 选择 模板,广州站电话,烟台网站建设哪家服务好首先#xff0c;要先了解几个概念#xff1a; 1、线程是CPU调度和分配的基本单位。 2、进程是操作系统进行资源分配#xff08;包括cpu、内存、磁盘IO等#xff09;的最小单位 。 3、一个进程可以包括多个线程。 4、CPU的时间片是由计算机的操作系统OS里的调度器分配的. …首先要先了解几个概念 1、线程是CPU调度和分配的基本单位。 2、进程是操作系统进行资源分配包括cpu、内存、磁盘IO等的最小单位 。 3、一个进程可以包括多个线程。 4、CPU的时间片是由计算机的操作系统OS里的调度器分配的. 当多个线程需要执行时OS里的调度器会将CPU的执行时间划分为多个小的时间片并依次分配给每个线程。 5、操作系统内存管理模块管理物理内存、虚拟内存相关的事务。
并行和并发
并发:在同一个核心的CPU中同一个时刻只能有一条指令执行但多个线程上下文的指令被快速轮换执行使得在宏观上具有多个进程同时执行的效果 并行:是指在同一个时刻多个核心上不同的线程指令同时执行。 单核cpu多线程有必要吗
通常一个任务不光 cpu 上要花时间 io 上也要花时间例如去数据库查数据去抓网页读写文件等。 一个进程在等 io 的时候 cpu 是闲置的另一个进程正好可以利用 cpu 进行计算。 多几个进程一起跑可以把 io 和 cpu 都跑满了。 也就是说,充分发挥单核CPU的性能就要创建足够多线程来填满单核CPU上的时间片。但并非线程越多越好由于线程之间存在竞争、上下文切换时的开销。
时间片
时间片代表了CPU分配给每个线程的最小时间单位。在多任务的OS中当多个线程或进程需要执行时计算机的操作系统OS里的调度器会将CPU的执行时间划分为多个小的时间片并依次分配给每个线程或进程。 时间片的长度由系统内核、调度算法来决定的可以是几毫秒或几十毫秒的量级。 上下文切换
切换过程
1.A线程的时间片用完后,操作系统会剥夺该线程的CPU执行权,CPU会将A线程此刻用的数据存到寄存器中,将执行到哪一步的信息存到程序计数器中.
2.这时,轮到B线程开始执行了, CPU去处理B线程, 当B线程的时间片用完后,又会和线程A一样被暂时封存起来.
3.线程A解封,CPU又开始执行线程A.
时间片上下文切换的优缺点
优点:
1.充分利用cpu的效率
2.不同线程进行时间片轮转调度实现了多个任务的并发执行效果。
缺点:
增加线程上下文切换给cpu带来的额外的性能开销。