进程、线程的概念、区别和联系;并发、并行概念、区别和联系

进程、线程的概念、区别和联系;并发、并行概念、区别和联系程序和进程:几乎所有的操作系统都支持同时运行多个任务,一个任务通常就是指一个程序。程序和进程的主要区别:程序是一个静态的指令集合,进程则是正在系

欢迎大家来到IT世界,在知识的湖畔探索吧!

程序和进程(Process):

几乎所有的操作系统都支持同时运行多个任务,一个任务通常就是指一个程序。程序和进程的主要区别:程序是一个静态的指令集合,进程则是正在系统中活动的指令集合。换句话说,运行中的程序就是进程。

进程具有三个重要的性质:独立性、动态性、并发性

  • 独立性:经常在操作系统中独立存在,拥有独立的资源和私有的地址空间。没有经过进程自身允许,其它用户进程不能直接访问进程的地址空间。
  • 动态性:进程是运行中的程序,具有自己的生命周期和各种不同状态。
  • 并发性:多个进程可以在单个处理器上并发执行,互不影响。所谓并发(concurrency)指的是同一时刻只能执行一条指令,但多个进程可以快速的切换执行,使得宏观上具有多个进程同时执行的效果,这种交错执行称为上下文切换。并行(parallel)则指同一时刻有多条指令在多个处理器上同时执行

大部分操作系统都支持并发运行,一个CPU一个时间点只能运行一个进程,CPU一直不断的在进程之间轮换执行,由于CPU的计算速度很快,所以会给用户同时运行多个进程的错觉,如:听歌的同时在上网。进程过多后,就会明显感觉到执行速度的降低。

线程(Thread)和进程:

线程时进程的执行单元,又叫做轻量级进程(Lightweight Process)。线程在进程中的地位就像进程在操作系统中的地位一样。一个进程可以有多个线程,但一个线程只能有一个父进程。当进程被初始化后,就会创建一个主线程,通常大多数程序只要求有一个主线程,但也可以创建多个,线程之间是相互独立的。此外,线程作为进程的一部分,可以拥有自己的堆栈、程序计数器(标记下一步开始执行的位置)、局部变量,但不占有系统资源。进程内的多个线程共有进程的系统资源。线程共享的资源包括:进程代码段、进程的公有数据等,线程的调度和管理由进程本身负责。

归纳起来:一个操作系统可以同时执行多个任务,每个任务就是进程。进程可以同时执行多个任务,每个任务就是线程。

多线程由于可以共享内存、文件句柄、其它进程应有的状态、线程间隔离程度比进程小等优点,使得相对于多进程而言,程序的运行效率、资源的占用程度、并发的性能较好,因此多线程编程具有很大的优势,在实际编程中应用广泛。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/30182.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信