专栏中心

EEPW首页 > 专栏 > 面试时,程序、进程、线程的区别这样回答必得满分

面试时,程序、进程、线程的区别这样回答必得满分

发布人:嵌入式Linux 时间:2023-01-10 来源:工程师 发布文章
概念

程序:若干指令及变量的集合,指的是我们编辑的静态的代码。

进程:正在运行中的程序称之为进程。

线程:进程中的一个执行单元称之为线程

进程和程序的区别

进程与应用程序的区别在于应用程序作为一个静态文件存储在计算机系统的硬盘等存储空间中,而进程则是处于动态条件下由操作系统维护的资源管理实体。可以从以下几个方面进行区别:

  • 进程是动态的,而程序是静态的。

  • 进程有一定的生命周期,而程序是指令的集合,是“死”的。

  • 进程和程序的关系就像戏剧和剧本之间的关系。

进程和线程的区别

线程就是轻量级进程,他们之间的关系如下:

  • 一个线程只能属于一个进程,而一个进程可以有多个线程。

  • 进程间资源相互独立,上下文切换效率低。

  • 资源直接分配给进程,同一进程的所有线程共享该进程的所有资源,所以线程上下文切换效率高。

总结

内核对进程和线程的调度是一样(都要分配时间片)。进程间资源相互独立,上下文切换效率低,但是稳定、安全。线程共享进程的所有资源,上下文切换效率高,但不安全(因为共享,所以不安全)。如果你需要稳定,进程是更好的选择。如果要速度,线程可能更好。


专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词: 程序 进程 线程

相关推荐

写代码不写注释?!无注释主义了解一下~

2018-09-17

U盘1114的电路图和程序

资源下载 2007-12-24

一位程序猿的经历与现实:我只想要一个仓库!

嵌入式系统 2016-12-01

从HelloWorld说程序运行机制

2023-06-27

海可枯石可烂,程序存储的空间也会变

嵌入式系统 2019-11-08

程序的书写规则(程序的编码规范)

程序示例

jackwang 2002-05-15

编写可移植C/C++程序的要点

2023-09-26

DSP C2000程序员高手进阶 PDF 版

资源下载 2007-12-29

SD卡读写程序

改变文件和程序的关联方法

PIC系列单片机接口子程序集

点阵字体

【E课堂】线程,进程,程序的区别

嵌入式系统 2018-03-09

图解|一个进程最多可以创建多少个线程?

2023-12-21

Linux进程的睡眠和唤醒

2023-12-26
更多 培训课堂
更多 焦点
更多 视频

技术专区