阅读:4758回复:16
Firefox源码过于庞大 不瘦身将无法编译PGO版
Mozilla Firefox团队最近发现了一个非常棘手的问题,那就是Firefox由于代码过于臃肿无法可靠地被编译,因为linker的运行超出了虚拟地址空间。
问题的根源是Firefox是一款只能工作在32位系统下的程序,而无法访问3GB以上的物理内存。 这已经不是Mozilla第一次遇到这种问题,数年前2GB的虚拟地址空间限制就让他们犯难,而这次就不能用物理地址扩展的方法来实现,因此解决方案只有两个,要么优化代码甚至减少组件(目前正在这么做,Graphite, SPDY, libreg等新功能正在被暂时移除),要么转换到64位架构和机器进行编译,这样就可以访问4GB以上的地址空间。 同时Mozilla也正在考虑分拆libxul部分,对其中的核心代码进行分组,例如Direct3D之上的WebGL、媒体库等组件可以分开编译。 Graphite, SPDY, libreg是甚麼功能?? libxul又是哪部份- -? |
|
1楼#
发布于:2011-12-14 17:38
Re: Firefox源码过于庞大 不瘦身将无法编译
https://bugzilla.mozilla.org/show_bug.cgi?id=709193这个解决了,但是讨论帖太长我实在没有耐心在平安夜看这个。 最后到底是用64位的,还是用VS2010,还是精简了代码? |
|
|
2楼#
发布于:2011-12-14 17:38
Re: Firefox源码过于庞大 不瘦身将无法编译
https://bugzilla.mozilla.org/show_bug.cgi?id=709193这个解决了,但是讨论帖太长我实在没有耐心在平安夜看这个。 最后到底是用64位的,还是用VS2010,还是精简了代码? |
|
|
3楼#
发布于:2011-12-14 17:38
|
|
4楼#
发布于:2011-12-14 17:38
Re: Firefox源码过于庞大 不瘦身将无法编译
我转chrome了,因为几乎火狐所有好用的扩展chrome都有了,真心不想火狐变成这个样子。 |
|
5楼#
发布于:2011-12-14 17:38
Re: Firefox源码过于庞大 不瘦身将无法编译
编译要多少时间 |
|
6楼#
发布于:2011-12-14 17:38
Re: Firefox源码过于庞大 不瘦身将无法编译
不用担心的。 |
|
7楼#
发布于:2011-12-14 17:38
Re: Firefox源码过于庞大 不瘦身将无法编译
精简无谓功能正当时 |
|
8楼#
发布于:2011-12-14 17:38
Re: Firefox源码过于庞大 不瘦身将无法编译
大道有狐:300多MB的源代码有多少是官版编译时需要的?全部么?回到原帖 没觉得大,跨平台项目只要到一定规模的都可以到这一规模 跨平台编译在其中一个平台编译时只需要其中的平台专有和标准代码,针对Windows,估计也就用到50%的代码 Qt源码压缩成zip都超过200M了,不过Qt的好处在于它的界面分模块比较细,有core,有gui,不像Firefox把所有的都整到xul里面 虽说dll越少能够加速启动,可是现在连WebGL模块都俩dll了,我觉得完全可以把第三方的整合在一起,起个类似叫3rd.dll的名称 因为Firefox里模块不是MPL授权就是BSD授权,所以改名字整合也是可以的。 |
|
9楼#
发布于:2011-12-14 17:38
Re: Firefox源码过于庞大 不瘦身将无法编译
的确该革新了..支持火狐... |
|
10楼#
发布于:2011-12-14 17:38
Re: Firefox源码过于庞大 不瘦身将无法编译
300多MB的源代码有多少是官版编译时需要的?全部么? |
|
|
11楼#
发布于:2011-12-14 17:38
Re: Firefox源码过于庞大 不瘦身将无法编译
不懂。怎么听上去和Nokia的塞班系统一样,当时的分析就是塞班系统过于臃肿,已经没救了。难道Firefox会走上这条路? |
|
12楼#
发布于:2011-12-14 17:38
Re: Firefox源码过于庞大 不瘦身将无法编译
论坛抽风,发重复了 |
|
|
13楼#
发布于:2011-12-14 17:38
Re: Firefox源码过于庞大 不瘦身将无法编译
fang5566:SPDY 是相对于 http 另外开发的传输协议。论坛有讨论,请自行搜索。 这个的确很久了,现在ecmascript5的通过性测试Firefox没有优势之余,还是明显最慢的,比ie9还慢,比chrome同是开发版慢几倍。而HTML5早就不是遥遥无期了。 firefox臃肿,很多代码太古老是不争的事实 |
|
|
14楼#
发布于:2011-12-14 17:38
Re: Firefox源码过于庞大 不瘦身将无法编译
题目改一下吧,改为无法PGO编译现在非PGO编译的obj总和还是小很多的,远远达不到限制 WebGL现在已经是独立组件了,可取的是把媒体在分离出来,或是把xul的功能一分为二 |
|
上一页
下一页