西西河

主题:【原创】Chrome进程管理(1)---启动模式 -- 素里太守

共:💬40 🌺72 新:
全看分页树展 · 主题 跟帖
家园 【原创】Chrome进程管理(3)--- 进程,进程,还

Chrome进程管理(3)--- 进程,进程,还是进程

毛主席教导我们:路线是个纲,纲举目张。CHROME告诉我们:进程是个纲,纲举网(页)张。实际上IE8也教导我们了,可惜IE8那个BETA版不怎么好用。(俺在Windows Server 2008上安装试用的效果不佳。和别的软件混在一起,居然把俺的2008给搞蓝屏了---还是非常稳定的蓝屏。怎么启动都是蓝屏,瞎子害眼 --- 没治了。)

什么是进程与线程?

如果说OS(比如WINDOWS)是个大居民楼的话,进程就是大楼中的单元房,那个线程就是单元房中的睡房。通常情况下,用户启动一个(应用)程序就开启了一个进程,比如启动一个Microsoft Word,这就相当大楼里面的某个单元入住了一个(户)人(家)。传统的浏览器用的是大单元房的概念,一个Firefox就是一个进程,一个页面的TAB(睡房)就对应了一(多)个线程。这样做的好处是省资源。你想,如果一个大单元就一个厨房和厕所,住人的地方(睡房)不就多了吗?缺点吗,没有隐私,也不是很安全,特别是不是一家人住在一个单元内。想想看也是,隔壁睡房的张三带女朋友来幽会,动静闹得大了点,这不是给俺这王老五添堵吗;李四的前男友上门讨债来了,手上还牵了条大狼狗,俺就是呆在自己的小睡房也怕的要死,可惜睡房门口不能装防盗门(单元房门口到是可以装防盗门,整个单元房还可以装安全监控装置)。要是每个单元房都只有一个睡房,一个厨房,和一个厕所那就理想了。不过这样的话,大家都要有多多的米(建筑成本高)。

与大居民楼中的单元房的概念类似,进程是OS(比如WINDOWS)安全设计中最基本的原始单位。一般而言,进程和进程不共享(虚拟)内存,彼此之间互不干扰。

大居民楼里增加单元房的事情不是太好办。如果要加的话通常只能在楼顶上加盖的办法,受地基,结构,供电,给排水系统的限制,能增加的数目非常有限。计算机相对好办些,WINDOWS上进程这个东西理论上可以开很多很多,但受计算机速度和内存容量的限制,这个数目还是有相当的限制。否则,你的计算机不会比老蜗牛快多少。把时间回溯5年,那时的计算机基本上是单CPU,小于1 GB的内存。所以那个时候的应用(程序)大多是单进程的设计(别和俺抬杠服务器的事情)。当然即使现在,应用(程序)依然大多是单进程设计,不为别的原因,多进程的应用(程序)设计起来太复杂,实现的难度大了很多。想想看也是,如果兄弟家,父母家,岳父母家都住在一个大楼的不同单元内一定会增加很多的“沟通成本”;如果沟通不好的话,还会平白无故会生出很多事非。

现在的情况和以前大不相同。现在买个计算机起码都是双(核)CPU, 2 GB的内存。游戏发烧友3,4(核)CPU,4 GB内存的机器都用上了。由于上网浏览成为计算机病毒流行和安全的头号威胁,采用多进程的设计的浏览器就变得既有必要又为可行。

于是乎,GOOGLE宣布张三李四的那些问题解决了:Chrome中张三住的单元(Render Process)就他一人,他幽会的动静大了也吵不到别人;李四的男友可以上门讨债,但是那条大狼狗要寄放在大楼的拴狗房(Plugin Process);慢着,还有关键的一条 --- 进哪个单元前到门房(Browser Process)登记一下,每个单元只能会客一位(次),这样张三的女朋友林小姐和薛小姐也就相安无事了;当然,大狼狗进拴狗房,小京八也进拴狗房,牛进牛棚,叫驴有驴槽。

预告:Chrome进程管理(4)--- 进程的分类,管理,和通信。

关键词(Tags): #PLUGIN#线程#进程#Chrome#Chrome浏览器元宝推荐:铁手,
全看分页树展 · 主题 跟帖


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河