进程、线程

  • 进程:就是一定功能的程序段在某个数据段上的一次运行活动,每个进程有一个PCB进程控制块,进程实体由程序段、数据段和PCB进程控制块组成。
  • 为什么要引入进程?
    如果没有进程概念的系统执行IO程序和计算程序,那么必须顺序执行,CPU,IO设备等资源会浪费。为IO程序和计算程序分别分配各自独立资源,分别建立进程,这样可以并发执行,就可以同时使用IO设备和CPU,提高系统吞吐量。进程是在操作系统中独立运行并且是资源分配的基本单位。一个进程中拥有的数据和资源只属于它自己。
  • 为什么要引入线程?
    一个进程里拥有多个线程,线程是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。***进程创建、撤销、切换需要耗费更多的时间空间开销,影响程序的并发效率。***所以引入更小的线程,作为CPU调度和分派的基本单位,同时共享进程资源,提高操作系统并发性。(***线程创建、撤销、切换耗费的时空开销小于进程!!!***)

区别:

  1. 进程是资源分配的基本单位,进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程共享父进程的大部分资源。比如在Java运行时内存区域中,并发执行的线程共享堆和方法区。但线程之间没有完全独立的地址空间,一个线程死掉就等于整个进程死掉,所以多进程的程序要比多线程的程序健壮。
  2. 线程是CPU调度和分派的基本单位。线程划分尺度小于进程,线程之间共享资源,切换线程的时空开销比进程小,所以使用线程提高系统并发性。
  3. 一般应用程序都是以进程为单位,多个线程并不会被操作系统看成是多个应用程序。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值