进程与程序及进程和线程的区别
2016-06-11 22:05
411 查看
进程和程序的区别
进程和程序是两个密切相关但又不同的概念。进程和程序有着明显的区别,程序与进程之间的区别主要包含以下几个方面。
1、进程更能真实地描述并发,而程序不能;
2、进程是由进程控制块、程序段、数据段三部分组成;
3、进程具有创建其他进程的功能,而程序没有。
4、同一程序同时运行于若干个数据集合上,它将属于若干个不同的进程,也就是说同一程序可以对应多个进程。
5、在传统的操作系统中,程序并不能独立运行,作为资源分配和独立运行的基本单元都是进程。
6、进程有生命周期,有诞生有消亡,短暂的;而程序是相对长久的。
进程和线程的区别
通常在一个进程中可以包含若干个线程,它们可以利用进程所拥有的资源,在引入线程的操作系统中,通常都是把进程作为分配资源的基本单位,而把线程作为独立运行和独立调度的基本单位,由于线程比进程更小,基本上不拥有系统资源,故对它的调度所付出的开销就会小得多,能更高效的提高系统内多个程序间并发执行的程度。
进程和线程的主要差别在于它们是不同的操作系统资源管理方式。进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路径。线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉,所以多进程的程序要比多线程的程序健壮,但在进程切换时,耗费资源较大,效率要差一些。但对于一些要求同时进行并且又要共享某些变量的并发操作,只能用线程,不能用进程。
进程和程序是两个密切相关但又不同的概念。进程和程序有着明显的区别,程序与进程之间的区别主要包含以下几个方面。
1、进程更能真实地描述并发,而程序不能;
2、进程是由进程控制块、程序段、数据段三部分组成;
3、进程具有创建其他进程的功能,而程序没有。
4、同一程序同时运行于若干个数据集合上,它将属于若干个不同的进程,也就是说同一程序可以对应多个进程。
5、在传统的操作系统中,程序并不能独立运行,作为资源分配和独立运行的基本单元都是进程。
6、进程有生命周期,有诞生有消亡,短暂的;而程序是相对长久的。
进程和线程的区别
通常在一个进程中可以包含若干个线程,它们可以利用进程所拥有的资源,在引入线程的操作系统中,通常都是把进程作为分配资源的基本单位,而把线程作为独立运行和独立调度的基本单位,由于线程比进程更小,基本上不拥有系统资源,故对它的调度所付出的开销就会小得多,能更高效的提高系统内多个程序间并发执行的程度。
进程和线程的主要差别在于它们是不同的操作系统资源管理方式。进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路径。线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉,所以多进程的程序要比多线程的程序健壮,但在进程切换时,耗费资源较大,效率要差一些。但对于一些要求同时进行并且又要共享某些变量的并发操作,只能用线程,不能用进程。
相关文章推荐
- scala学习二:scala进阶
- DHCP之总结
- 4A - Watermelon
- 关于ThinkPHP学习总结-1
- c语言学习笔记24之内存
- JavaSE复习_6 枚举类
- mac
- Flask中'endpoint'(端点)的理解
- 关于java中的局部变量、成员变量、静态变量
- mssql查询所有上下级
- Android之GLES2.0控制立方体旋转测试代码
- Zookeeper03 - Zookeeper之ACL
- Node.js之Express三
- java几点容易混淆的概念
- 桥接模式
- ubuntu 安装 scrapy (及常用包)
- 21.python中的闭包和装饰器
- 1.2 为Eclipse绑定Tomcat
- Spring Mvc那点事---(16)Spring Mvc之JSTL标签
- 1004 四子连棋