开发一款浏览器内核需要学习哪些方面的知识

发布于2022-08-04 09:02:45
2个回答
admin
网友回答2022-08-04
到底是开发浏览器,还是开发浏览器内核

如果是前者,那么 C# 一般就是用 Webbrowser 或继承重写它,了不起再多个 Webkit,剩下的都是功能上的问题了。

如果是后者,放弃 C# 乃至 .NET 框架吧!浏览器内核和系统内核一样,需要用 C/C++ 来开发。目前世界上只有4种主流的内核,Trident(IE)、Gecko(Firefox)、KHTML、WebKit(Chrome),还有些小众的,比如Presto(Opera)之类的,就不罗列了,但是很遗憾的是,即使是“小众”国内也没有一款(我指的是可以真正投入使用的,你可能会说 UC 那个所谓的“自主研发”内核,它是参照 WebKit 和 KHTML 两个开源项目该改写的,并非真正的“自主”)!

如果是真的是内核开发,那涵盖的知识领域范围太广了,大概的知识:
● 精通 C/C++。
● 对HTML、CSS、XML有深刻的理解,因为要根据这些内容生成网页结构。
● 对程序绘图、数字成像要有极高的造诣,能根据HTML、CSS、IMAGE生成相应页面。
● 精通HTTP、HTTPS、FTP等协议。
● 掌握W3C规范。
● 能对javascript虚拟运行环境解释。

所以,全世界真正有能力开发内核就那么几家大公司,而且都不是一个人完成的,国内的浏览器公司全都是在用人家的内核加以封装。
admin
网友回答2022-08-04
windows系统他们现在所用内核都是底层网络协议tcp/ip,sokect,一般都是用的微软的ie内核,(微软也开放了源码)如果是linux,或者安卓系统的,那都是linux开源内核
所需掌握,网络协议,c++,java,sokect套接字的编程,会点汇编更好等等

回到
顶部