进程:
是具有一定独立功能的程序关于某个数据集合上的一次运行活动.
是系统进行资源`分配和调度`的一个独立单位.
地址空间:处理器位数有关,32位则为4G.(40位为1T)
线程:
是进程的一个实体.
是CPU调度和分派的基本单位.
私有的包括: 程序计数器,一组寄存器和栈.
`共享所属进程的资源.`
区别与联系:
联系:
进程至少有一个线程,可拥有多个.
区别:
进程间不共享地址空间,独立性高.
同一进程里,一个线程崩溃,其他线程也会崩溃.
线程并发性高,切换开销小;共享资源.
ps:本质区别:是否共享地址空间.(进程不共享,线程共享进程的地址空间.)
线程的引入:
进程和线程的并发层次不同:进程属于在处理器这一层上提供的抽象;线程则属于在进程这个层次上再提供了一层并发的抽象。如果我们进入计算机体系结构里,就会发现,流水线提供的也是一种并发,不过是指令级的并发。这样,流水线、线程、进程就从低到高在三个层次上提供我们所迫切需要的并发!