一.程序与进程
1.程序:完成特定任务的一系列指令集合
(1)单道程序:CPU一次只能运行一个程序
(2)进程程序:正在运行的程序
(3)多道程序设计:基础->时钟中断 分时系统:每次执行程序的一部分
2.进程:
(1)从用户角度看,进程是程序的一次动态执行过程 ;分时系统:时间片轮转
(2)从操作系统角度:进程是操作系统分配资源的基本单位,也是最小单位 ;每个进程都有自己的状态和独立的地址空间
进程需要有相关的数据结构来管理,描述进程用PCB(PCB:进程控制块,LINUX操作系统下的PCB是task_struct),操作系统(OS)通过PCB来感知一个进程的存在
3.程序:数据+代码
进程:数据+代码+堆栈+PCB(粘合作用)
4.进程和程序的区别
(1)进程是动态的,程序是静态的
(2)进程生命周期短暂,程序永久
(3)进程有重要的数据结构PCB,程序没有
(4)一个进程对应一个程序,一个程序对应多个进程
5.进程三态:
6.LINUX操作系统下的几种状态
二.fork---创建进程
1.创建进程(父子进程代码共享)
可得结果为
2.查看进程--ps