进程、线程、程序的区别

一、程序、进程、线程的概念

程序:一组计算机能识别和执行的指令、它是一些保存在磁盘上的指令的有序集合

进程:进程是一个独立的可调度的任务,进程是一个抽象的实体,当系统在执行某个程序时,分配和释放的各种资源,进程是资源分配的总称。

线程:共享同一个进程地址空间的多个任务叫线程

二、程序、进程、线程的区别

进程与程序的区别:

程序是静态的,没有任何执行概念,进程是一个动态的概念,它是程序执行的过程,包括创建,调度和消亡

进程是程序执行和资源分配的最小单位

进程包括 正文段、用户数据段、系统数据段,程序属于正文段和用户数据段,系统数据段用来有效的存放程序运行的环境

系统数据段包括 PCB(进程控制块)、相关寄存器

进程不仅包括程序的指令和数据,而且包括程序计数器值、CPU的所有寄存器值以及存储临时数据堆栈

程序类似剧本,存放在纸上,通过某种语言记录一场戏的整个流程、灯光、道具等 静态的

程序:                存放在磁盘,二进制有序指令、可执行、静态的

进程类似于根据剧本演出

进程:程序运行后的一种体现、动态、要占用资源

进程与线程的区别:

 每一个进程都有自己独立的地址空间,任务切换时频繁切换地址空间耗时,由于进程的地址空间是私有的,因此在进程间的上下切换时,系统开销比较大,为了提高系统的性能,许多操作系统规范里引入了轻量级进程的概念,也被成为线程。

每个进程有一个独立的虚拟4g地址空间而同一个进程中的多个线程共享进程的地址空间

线程统一参与CPU的调用,即线程间的执行顺序不确定,线程共享进程的资源

程序、进程、线程之间的关系:

程序:大的车间          进程:车间内的一个组        线程:相当于每个执行人员

车间生产产品,车间内的小组实现产品的功能,执行人员单独或共同实现功能。

一个程序可能有多个进程不同的进程实现不同的功能,一个进程可以包含多个线程,线程是进程内的基本调度单位。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值