加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

进程和线程

发布时间:2020-12-14 02:31:48 所属栏目:Windows 来源:网络整理
导读:1、操作系统中线程和进程的概念: 进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程。 ? ? ? 比如在Windows系统中,一个运行的exe就是一个进程。 ? ? ? 动态性:进程的实质是程序的一次执行过程,进程是

1、操作系统中线程和进程的概念:

进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程。
? ? ? 比如在Windows系统中,一个运行的exe就是一个进程。
? ? ? 动态性:进程的实质是程序的一次执行过程,进程是动态产生,动态消亡的
? ? ? 并发性:任何进程都可以同其他进程一起并发执行
? ? ? 独立性:进程是一个能独立运行的基本单位,同时也是系统分配资源和调度的独立单位
? ? ? 异步性:每个进程都以相互独、不可预知的速度向前推进?
? ? ? 结构特征:进程由程序、数据和进程控制块三部分组成。
线程是指进程中的一个执行流程,一个进程中可以运行多个线程。
? ? ? 比如java.exe进程中可以运行很多线程。线程总是属于某个进程,进程中的多个线程共享进程的内存。

. ?进程和线程的关系

(1)一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程。线程是操作系统可识别的最小执行和调度单位。

(2)资源分配给进程,同一进程的所有线程共享该进程的所有资源。 同一进程中的多个线程共享代码段(代码和常量),数据段(全局变量和静态变量),扩展段(堆存储)。但是每个线程拥有自己的栈段,栈段又叫运行时段,用来存放所有局部变量和临时变量。

(3)处理机分给线程,即真正在处理机上运行的是线程。

(4)线程在执行过程中,需要协作同步。不同进程的线程间要利用消息通信的办法实现同步。

?
在分时系统中,进程中的每个线程都拥有一个时间片,时间片结束时保存 CPU 及寄存器中的线程上下文并交出 CPU,完成一次线程间切换。当然,当进程的 CPU 时间使用结束时,所有的线程必然被阻塞。
?
1、并行(parallellism)和并发(concurrency)

解释一:并行指应用能够同时执行不同的任务,并发指应用能够交替执行不同的任务。

解释二:并行是指同一时刻同时做多件事情,并发是指同一时间间隔内做多件事情。

解释三:并行是在不同实体上的多个事件,并发是在同一实体上的多个事件。

解释四:在一台处理器上“同时”处理多个任务,在多台处理器上同时处理多个任务。如hadoop分布式集群

我的理解:

理解一:一边吃饭一边看电视,是并行。看一眼电视,再看一眼书,是并发。

理解二:QQ和微信同时运行,是并行。在微信上和多个人聊天,是并发。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读