Chrome中的多个进程ID

时间:2014-07-21 12:49:23

标签: linux google-chrome firefox debian pid

当我检查chrome的pid时,我获得了多个pid,但是在firefox的情况下,我只得到单个进程ID。为什么chrome浏览器使用多个进程ID?

2 个答案:

答案 0 :(得分:2)

Firefox和Chrome在内部运作方式上存在根本差异。正如你所说,Firefox有一个进程ID - 因为它是一个进程。但Chrome不是。

Chrome使用Multi-Process Architecture。这会将每个网站(选项卡等)彼此隔离,以便在发生故障时它们不会相互影响,或核心chrome进程。所以,如果在Firefox上你有一个页面死了,它可能会导致firefox作为一个整体放弃和崩溃。但是,在chrome上,更有可能只有特定的选项卡会崩溃,其余的选项卡和程序将作为一个整体打开并运行。

请注意,这种架构更难实现,需要更多内存。然而,它更加稳定。

其他阅读材料:

http://en.wikipedia.org/wiki/Process_isolation#Web_browsers

http://www.chromium.org/developers/design-documents/process-models

答案 1 :(得分:1)

我对此并不是百分之百确定,但从逻辑上看这是我提出的最合理的答案: 计算机资源的流程非常紧张。谷歌可能已经选择将工作划分为流程而不是线程,就像Firefox最有可能做的那样。这只是Mozilla和Google的实施考虑因素。 请参阅:http://www.differencebetween.net/miscellaneous/difference-between-thread-and-process/

编辑: 如果您想要更全面的解释,我建议您查看两个程序的文档: http://www.chromium.org/Home https://developer.mozilla.org/en-US/docs/Web

同时查看此论坛讨论:http://forums.mozillazine.org/viewtopic.php?p=702985