Webkit(长话短说)
2001年苹果从KDE开源分裂出来,新名Webkit.
2005年苹果将Webkit开源。
2013年谷歌又从Webkit分裂出来,新名Blink.Webkit自此剔除了Chromium Port。Blink自此只保留了Chromium Port.
Blink想干啥?
1. 跨进程的iframe
2. 改webkit接口,不单独为IOS服务
3.DOM JS不分家
狭义Webkit:只是WebCore(各种Parser,Render)和JSCore之上的Webkit接口
广义Webkit:整个项目
WebkitPort: 印象中WebCore和狭义Webkit都会延伸Port.
Webkit2: 跨进程模型(与Chromium为2套不同)。UI进程和渲染进程分离。
Chroumium架构
APP:Chroumim浏览器(闭源) ContentShell(开) Anroid WebView(开,适配原webView)
Content: 接口+模块 (H5支持)
Blink+V8+沙箱+GPU
跨进程好处:稳定一崩溃全体不崩溃 安全 插件独立进程
Chromium:
UI,Render,插件,GPU可单独进程 任务管理器可见,打开不同网页有的网页会启用GPU进程等
进程模型可选,单进程,一tab一个(默认),一个域一个等
UI,GPU,Render进程主要是通过内含的IO线程来联系。
Webkit资源的缓存:
允许cache的场合,先看资源缓存池有没有,有的话http消息中,加入ifmodifiedsince时间标志,资源未更新的场合则不下载。(利用的是http协议中的规则)