linux开发——进程篇(一)进程入门、程序与进程

linux开发——进程篇(一)进程入门、程序与进程

什么是进程?

就常见的来说,我们会在电脑上用谷歌浏览器、爱奇艺视频等等,这些我们正在使用的软件就可以称为是一个进程。当我们打开任务管理器时,可以看到有很多进程,例如下面打开的google chrome就是一个进程。细心的人会发现这里任务管理器把进程分类了,分为了应用和后台进程,这是因为它们虽然都是进程,但应用进程是我们自己打开的,关闭之后这个进程就不存在了,而后台进程(也叫服务进程)基本上是开机后就启动了,大部分都是操作系统的必要进程,它们默默地在背后执行,我们看不到,所以如果不清楚某个后台进程是干嘛的,不要随意关闭。
linux开发——进程篇(一)进程入门、程序与进程

进程?程序?

有人会问程序和进程有什么区别,这里我稍微解释一下。
1.从概念上说,程序就是我们所写的一些代码文件,当我们运行这些代码文件的时候,这时就产生了一个进程,所以进程是程序的实体。写了代码不运行什么用都没用,仅仅是静态文本,运行后就是一个进程。
2.它们的关系。一个程序可以对应多个进程,而一个进程只能对应一个程序。这要怎么理解呢,比如在电脑上你可以打开多个终端,而每个终端的功能都是一模一样的,也就是每个终端对应的程序是一样的,多个终端就是多个进程,而终端都对应着同一个程序。
3.它们的区别很多,但有密切联系,进程有进程控制块而程序没有,讲白一点就是进程被管控着,而程序没有束缚,这些就要深入操作系统了,说到这想必应该都明白它们的一些区别了。
linux开发——进程篇(一)进程入门、程序与进程
讲了一大堆,用一句话概括,进程是就是一个正在执行的程序,了解了什么是进程后,下一篇我们开始说说linux下的进程控制,如何创建进程,关闭进程等。