seegongsik
操作系统

怎么工作 操作系统里进程是什么

双击应用图标,程序就“运行”起来了。可运行到底是怎么回事?那是一个静静躺着的文件,变成活生生运转的东西的瞬间。

01

程序和运行是两回事

先把两样东西分清。一样是程序,也就是静静躺在存储设备里的文件。
另一样是程序运行起来的状态,正活生生地干着活。
这就像写着做法的纸,和真正在做菜之间的区别。

程序(代码)

在存储里静静待着的文件。就像写着菜谱的一张纸。

还没动

进程(运行中)

那个程序实际在跑的状态。照着纸正在做菜呢。

此刻活着在干活

看似一样、其实不同的两样东西并排放着。

运行中的程序,叫作进程。
同样的菜谱,开始做菜才会冒热气、飘香味;程序也一样,运行起来才真正开始干活。

02

一运行,进程就诞生了

双击应用的那一刻,操作系统就动起来了:把存储设备里的代码读进内存,然后叫醒它:“好,开始吧。”
这个被叫醒的状态就是进程。在下面亲手运行一下看看。

记事本.app
在存储里睡着
运行→
记事本
还没醒

点“运行”,进程就从沉睡的文件里醒过来。

文件还原样留着。是一份副本被读进内存,变成了进程。
所以同一个应用关了再开,原来的文件也不会变。

03

进程有自己的地盘

进程诞生后,操作系统会给它地方:“你用这些内存格子。”
就是前面在计算机结构里看过的、带地址的那种内存。每个进程都有一块只属于自己的工作空间。

记事本进程
自己的内存空间
音乐进程
自己的内存空间
各有各的空间,所以一个程序卡死,别的程序也没事。

每个进程都有一块自己的内存空间。

地盘各是各的,所以互不干扰。一个应用突然卡住,别的应用照样没事。
这是操作系统把你的和我的分开,免得混在一起。

04

同一个应用可以开好几个

有个有意思的地方:程序只有一个,进程却可以有好几个。
开三个浏览器窗口,就是同一个程序生出了三个进程。
多开几个窗口,自己确认一下。

窗口 1
#201
现在 1 个进程

每开一个窗口,就多一个进程。

就像用一张菜谱同时在好几口锅里做菜,同一个程序也能跑好几个进程,
各自在自己的空间里分头干活。

05

操作系统用名单管理所有进程

操作系统手里有一份名单,记着眼下在跑的所有进程:叫什么名字、干了多少活、用了多少内存。
电脑变慢时,在“任务管理器”里看到的,正是这份名单。

#101浏览器
运行中
#102音乐
运行中
#103消息
运行中
#104记事本
运行中

操作系统给每个进程编上号(PID),分别管理。

每个进程都在自己的空间里活生生地运转,操作系统用名单把它们一一照看好。
可是部件只有一个,这么多进程怎么能同时运行呢?下一课就来揭开这个秘密。

一句话总结程序是静静躺着的文件,进程是它运行起来、活生生运转的状态。每个进程都有自己的内存空间,所以一个停了,其他的照样没事。
← 操作系统
如果有帮助,请支持我们