程序与进程的区别

刚开始学习计算机操作系统,对程序和进程的概念有所模糊,更别说他们的区别,我通过查阅资料和询问进行了一下总结,希望对大家有所帮助,如果有错误,也希望大家批评指正。


1.动态性:程序是静态的,是一组有序指令的集合;而进程是动态的,是程序在数据集上的一次执行,“它由创建而产生,由调度而执行,由撤销而消亡”,有一定的生命期。

2.并发性:程序没有并发性,程序(没有建立PCB)是不能并发执行的;而进程具有并发性,体现在多个进程实体同存在于内存中,且能在一段时间内同时运行。

3.资源分配:进程是计算机分配资源的基本单位,而程序不是。

4.对应关系:进程和程序不是一一对应的。一个程序可对应多个进程,例如:C语言程序调试时,有时多个调试窗口可以同时存在,对应了多个进程,或者是多次打开同一浏览器;一个进程也可以执行一个或多个程序,例如:一个DLL文件可被多个程序运用,比如DirectX9的动态链接库,许多游戏有了它才能运行。

猜你喜欢

转载自blog.csdn.net/csdn950212/article/details/51356079