您的位置:首页 > 其它

遗忘的基础概念——并发、并行、进程、线程

2020-02-29 19:51 211 查看

---恢复内容开始---

1、并行与并发(parallelism and concurrency)

并行性和并发性是既相似又有区别的两个概念。

并行性是指两个或多个事件在同一时刻发生。而并发性是指两个或多个事件在同一时间间隔内发生。

 

在多道处理程序环境下,并发性是指在一段时间内宏观上有多个程序在同时执行,但在单处理机系统中,每一时刻却仅能

有一道程序执行,故微观上这些程序只能是分时地交替执行。例如,在1秒钟时间内,0~15ms程序A执行;15~30ms程序B执行;

30~45ms内程序C执行;45~60ms程序D执行,因此可以说,在1秒中时间间隔内,宏观上有四道程序在同时运行,但在微观上,

程序A,B,C,D在分时地交替执行。

 

2、进程与线程

引入进程

  在一个位引入进程的系统中,在属于同一个应用程序的计算程序和I/O程序之间只能是顺序执行,即只有在计算程序执行告一段落后,

才允许I/O程序执行;反之,在程序执行I/O操作时,计算程序也不能执行。但在为计算程序和I/O程序分别建立一个进程(Process)后,

这两个程序便可以并发执行。若对内存中的多个程序都分别建立一个进程,它们就可以并发执行,这样便能极大地提高系统资源利用率,增加

系统的吞吐量。

 

进程的定义

  为了使参与并发执行的每个程序(含数据)都能够独立地运行,在操作系统中必须为之配置一个专门的数据结构,称为进程控制块(Proscess Control Block,PCB)。

系统利用PCB来描述进程的基本情况和活动过程,进而控制和管理进程。这样,由程序段、相关数据段和PCB三部分便构成了进程实体。一般情况下,我们把进程实体

就简称为进程,例如,所谓创建进程,实质上就是创建进程实体的PCB;而撤销进程,实质上是撤销进程的PCB。

 

对于进程的定义,从不同的角度可以有不同的定义,其中较典型的定义有:

1、进程是程序的一次执行

2、进程是一个程序及数据在处理机上顺序执行时所发生的活动。

3、进程是具有独立功能的程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。

 

线程(Threads)

人们在设计多道程序OS时,引入了进程的概念,从而解决了在单处理机环境下程序并发执行问题。

后来人们又提出了比进程更小的基本单位——线程的概念,试图用它来提高程序并发执行的程度。

 

目前我的理解是:线程是比进程更小的运行单位,一个进程可以被划分为多个线程。在一个支持线程

的系统中,线程是处理器的调度对象。线程作为处理器的调度单位,相当于进程中的一个控制点。由于

进程是资源的分配单位,所以一个进程中的线程共享进程的资源。线程之间的通信要比进程之间的通信

方便。

 

 

 

 

 

 

 

 

 

 

 

---恢复内容结束---

转载于:https://www.cnblogs.com/ManOK/p/10896645.html

  • 点赞
  • 收藏
  • 分享
  • 文章举报
dongbi2671 发布了0 篇原创文章 · 获赞 0 · 访问量 183 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐