进程&线程

进程

进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配调度基本单位,是操作系统结构的基础,一般由程序、数据集合和进程控制块组成。
程序:用于描述进程要完成的功能,是控制进程执行的指令集,是存储在计算中没有生命实体的一段代码,属于死物,当它占用了CPU资源时则从就绪状态进入执行状态;
数据集合:是程序在执行时所需要的数据和工作区;
程序控制块:包含进程的描述信息和控制信息,是进程存在的唯一标志。

进程to线程

在早期的操系统中没有线程的概念,进程拥有资源和独立运行的最小单位,也是程序执行的最小单位。但是每个进程独占一块内存,使各个进程之间的内存地址相互隔离导致CPU切换进程的开销较大,无法满足越来越复杂的程序要求。所以就有了线程。

线程

线程是程序执行中一个单一的顺序控制流程,是程序执行流的最小单位,是处理器调度和分派的基本单位。一个进程可以有若干个线程,各个线程之间共享程序的内存空间。

进程和线程的区别

1、线程是程序执行的最小单位,而进程是操作系统分配资源的最小单位。
2、一个进程由一个或多个线程组成,线程是一个进程中代码的不同执行路线。
3、进程之间相互独立,但是同一进程下的各个线程共享程序的内存空间及进程级资源,一个进程内的线程在其他进程是不可见的!
4、线程是为了节约CPU切换进程的开销而发明的,因此使用线程进行上下文切换比进程上下文切换要快的多。
5、线程廉价,线程启动和退出都比较快,对系统资源的冲击也比较小,而且线程彼此分享了大部分核心对象的拥有权。多重进程则不可预期且测试困难(个人理解:彼此内存不容易共享,因而导致测试困难)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值