进程的特性:
并发性:可以与其他进程在宏观上同时向前推进
动态性:进程是执行中的程序,动态产生,动态消亡,动态变化
独立性:进程是调度的基本单位
交往性:与其他进程交互
异步性:不统一推进
结构性:每个进程有一个控制块PCB
程序和进程的区别:
程序是静态的,进程是动态的
程序可以在存储介质上长期保存,进程创建存在,撤销消亡
一个程序可对应多个进程,一个进程只能对应一个程序
fork一个子进程,到底发生了什么?
sys_fork(),sys_clone(),sys_vfork()
do_fork():对于这个函数所做的实际上就是对PCB的创建
PCB在内核里就是task_struct结构体
我们身边的进程实例:
火狐浏览器和谷歌浏览器
火狐:每一个标签都是一个线程
谷歌:每一个标签都是一个进程
用pstree命令查看进程树
进程的并发和并行:
并发(concurrently):同一时间间隔内,有先后次序,但是很难感受到
并行(parallelism):同一时刻,真实的同时运行
这次讲座总结太水了…(逃….)