操作系统-进程和线程-定义、引入目的、特征、区别与比较

操作系统-进程和线程-定义、引入目的、特征、区别与比较

操作系统-进程和线程-定义、引入目的、特征、区别与比较

原创

于 2020-11-24 21:27:20 发布

·

2.6k 阅读

·

2

·

11

·

CC 4.0 BY-SA版权

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

操作系统

专栏收录该内容

3 篇文章

订阅专栏

本文探讨了进程的定义、引入目的及其特征,强调了进程和线程的动态性、并发性和独立性。同时,对比了线程与进程在调度、资源拥有、独立性、系统开销和多处理机支持等方面的差异,揭示了为何引入线程以提高并发性和资源利用率。

摘要生成于

C知道

,由 DeepSeek-R1 满血版支持,

前往体验 >

1.进程的定义:

进程是进程实体的运行过程,是对运行时程序的封装,是系统进行资源分配和调度的一个独立单位。

2.引入进程的目的 / 为什么要有进程:

为了使进程实体能和其它进程实体并发执行,以提高资源利用率和系统吞吐量。

3.进程的特征:

①动态性 ②并发性 ③独立性 ④异步性

4.线程的定义:

线程是进程的子任务,是CPU调度和分派的基本单位。

5.引入线程的目的 / 为什么要有线程:

为了减少程序在并发执行时所付出的时空开销,使OS具有更好的并发性。

6.线程与进程的比较 / 线程与进程的区别

①调度的基本单位:

进程是资源分配的最小单位,线程是CPU调度的最小单位。当线程切换时,仅需保存和设置少量寄存器内容,切换代价远低于进程。在同一进程中,线程的切换不会引起进程的切换,但从一个进程中的线程切换到另一个进程中的线程时,必然会引起进程的切换。

②并发性(比较):

不仅进程之间可以并发执行,而且在一个进程中的多个线程之间亦可并发执行,不同进程中的线程也能并发执行,这使得OS具有更好的并发性,从而能更加有效地提高系统资源的利用率和系统的吞吐量。(如有的应用程序需要执行多个相似的任务,如果仍采用传统的单线程的进程来执行该任务,则每次只能为一个客户服务,但如果在一个进程中可以设置多个线程,将其中的一个专用于监听客户的请求,则每当有一个客户请求时,便立即创建一个线程来处理该客户的请求。)

③拥有资源:

进程可以拥有资源,并作为系统中拥有资源的一个基本单位。然而,线程本身并不拥有系统资源,而是仅有一点必不可少的、能保证独立运行的资源,除此之外,还允许多个线程共享该进程所拥有的资源。(每个线程中都应具有 一个用于控制线程运行的线程控制块TCB、用于指示被执行指令序列的程序计数器、保留局部变量、少数状态参数和返回地址等的一组寄存器和堆栈。)

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

④独立性:

在同一进程中的不同线程之间的独立性要比不同进程之间的独立性低得多。进程间不会相互影响;线程一个线程挂掉将导致整个进程挂掉。

⑤系统开销:

由于在创建或撤销进程时,系统都要为之分配或回收其它资源,如内存空间和I/O设备等。因此,操作系统所付出的开销将显著地大于在创建或撤销线程时的开销。类以地,在进行进程切换时,涉及到整个当前进程CPU环境的保存以及新被调度运行的进程的CPU环境的设置。而线程切换只须保存和设置少量寄存器的内容,并不涉及存储器管理方面的操作。可见,进程规换的开销也远大于线程切换的开销。

⑥支持多处理机系统:

进程适应于多核、多机分布;线程适用于多核。对于单线程进程,不管有多少处理机,该进程只能运行在一个处理机上。对于多线程进程,就可以将一个进程中的多个线程分配到多个处理机上,使它们并行执行,加速了进程的完成。

⑦通信

由于同一进程中的多个线程有相同的地址空间,致使它门之间的同步和通信的实现也变得比较容易。进程间通信IPC,线程可以直接读于进程数据段(如全局变量)来进行通信——需要进程同步和互斥手段的辅助,以保证数据的一致性。在有的系统中,线程的切换、同步和通信都无须操作系统内核的干预。

⑧其他

一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程。线程依赖于进程而存在。

进程编程调试简单可靠性高,但是创建销毁开销大;线程正相反,开销小,切换速度快,但是编程调试相对复杂。

相关推荐

《九重紫》一共多少集完结?
www365betcom手机版

《九重紫》一共多少集完结?

⌛ 06-30 👁️ 6003
[扫盲活动~桌游本体]国产桌游《风声》介绍与规则
365bet提现多久到账

[扫盲活动~桌游本体]国产桌游《风声》介绍与规则

⌛ 06-28 👁️ 8953
戴尔笔记本电脑蓝牙怎么打开
www365betcom手机版

戴尔笔记本电脑蓝牙怎么打开

⌛ 07-10 👁️ 6003