前言
本系列博客主要记录有关嵌入式方面的面试重点知识,本系列已经更新的篇目有如下:
【本篇】1.1进程线程的基本概念
内容如有错误请在私信或者评论区及时指正,谢谢~
1.1 进程线程的基本概念
1.1.1 什么是进程,线程,彼此有什么区别
进程:进程是对正在运行中的程序的一个抽象,是系统进行资源分配和调度的基本单位。
线程:线程是操作系统能够进行运算调度的最小单位,其是进程中的一个执行任务(控制单元),负责当前进程中程序的执行。
一个进程至少拥有一个线程,进程也可以拥有多个线程,这些线程共享同一块内存,线程之间可以共享对象、资源,如果有冲突或需要协同,还可以随时沟通以解决冲突或保持同步。对于单线程,可以理解为对于所有的任务必须依次交替运行完成,而对于多线程,可以理解为你是一家企业的老板,你吩咐与线程数量相同的工人去同时干各个线程的内容。
当然这里的同时,指的是宏观上的同时,微观上其实是不同时的,只是在执行任务调度的时间很短,看不出来差距所以认为是同时的。实际上,并不是线程越多,进程的工作效率越高,这是因为在一个进程内,不管你创建了多少线程,它们总是被限定在一颗CPU
内,或者多核CPU
的一个核内。
区别:
-
本质区别