如何 0 成本启动全员 AI 技能提升?戳> 了解详情
写点什么

Internet Explorer 9 预览:新特性与分析

  • 2010-04-27
  • 本文字数:4459 字

    阅读完需:约 15 分钟

近日,微软发布了 Internet Explorer 9 的一个预览版,值得关注的是该预览版的性能得到了改进,同时还采取了一些标准,如 SVG、CSS 以及 HTML 5 等等。

性能

性能比较结果表明 IE9 预览版的 JavaScript 引擎要快于Firefox 和IE8,但仍落后于Safari 和Chrome

IE8 3825.53
Opera 10.10 2491.93
IE9 PDC 2009 Demo 834.00
Firefox 3.6 699.80
Firefox 3.7 Alpha2 Pre-Release 610.20
IE9 Mix 2010 Platform Preview 1.9.7745.6019 598.80
Safari 4.0.5 (531.22.7) 407.93
Chrome 4.0.249.89 373.87
Chrome 5.0.342.2 (dev) 293.47
Opera 10.5 285.20

全新的 JavaScript 引擎

当下的人们期望 JavaScript 引擎能越来越快,为了满足这种日益增长的需求,IE团队开发了一个全新的JavaScript 引擎,代号为Chakra

IE9 平台预览版包含了我们所开发的全新 JavaScript 引擎(代号为 Chakra)的首个版本,它从根本上改变了 Internet Explorer 9 中的 JavaScript 性能。Chakra 包含了一个全新的 JavaScript 编译器,可以将 JavaScript 源代码编译成高质量的本地机器码;还有一个全新的解释器,能够在传统的网页上执行脚本;此外还对 JavaScript 运行时和程序库进行了改进。

IE9 中的 Chakra 还具有很多极具价值的特性,如:

  • 后台编译
  • 类型优化
  • 快速的解释器
  • 优化的程序库

硬件加速

借助于 Internet Explorer 平台预览版,Web 开发者可以充分利用硬件来渲染图形与文本

Internet Explorer 平台预览版使用到了 Windows 应用编程接口(API)中的 DirectX,这使得 Web 开发者如虎添翼。首先通过 Direct2D 和 DirectWrite 将所有的图形和文本渲染从 CPU 迁移到了显卡中。借助于图形硬件加速,那些需要绘制大量图形的站点不但可以降低 CPU 的占用率,还能加快图形的渲染速度。此外,你可以继续按照既有的方式设计站点,同时自动享受到这些变化所带来的好处。

AMD 曾公开“称赞”微软在 IE9 中充分利用硬件的做法,这会给 AMD 带来如下实惠:

  • 微软使用 Direct2D 和 DirectWrite 取代了 GDI 来增强 MSHTML 渲染层。Direct2D 可以实现 GPU 加速的 2D 图形与文本渲染,还支持子像素(sub-pixel,屏幕上的像素是由几种色彩构成的,通常是红、绿、蓝,也就是所谓的三原色。有时,一些显示器具有三种以上的色彩,比如红、绿、蓝、黄或是红、绿、蓝、白等。这些像素组件通常叫做子像素,但由于光学的模糊效果以及人眼神经的空间融合,最终看到的只是一种颜色——译者注)定位。此外还使用 GPU 进行图形的缩放(位图对应为纹理),这非常适合于图片的缩放和移动。这种 GPU 支持可以提升页面的可读性、更精准地定位文本与图片、改进平滑滚动和缩放。
  • 与旧版的 Internet Explorer 相比,JavaScript 性能得到了显著的提升;与其他浏览器相比,即便没有超过他们也有得一拼。过去,IE 中的 JavaScript 是解释执行的,并不会编译为本地的处理器指令。现在的 JavaScript 引擎包含了一个 JIT 编译器,它会发出 x86 指令并在运行前编译代码,这极大地提升了性能。JIT 编译器会根据处理器生成指令并充分利用所处的平台。
  • IE9 比其前辈更兼容于标准,新增了对 HTML5 元素的支持,如 <video> 和 <canvas>,此外还支持 CSS3 和 SVG。可以借助于 Direct2D 在 GPU 上加速 <canvas> 元素,<canvas> 元素可以通过硬件加速渲染环境进行应用开发、改进视觉显示效果、降低 CPU 使用率以及提高电源使用率。

NVIDIA 对此的反应与 AMD 如出一辙:

今天,伴随着Internet Explorer 9 的横空出世,微软开启了可视化计算的新时代。Internet Explorer 9 包含了一个全新的JavaScript 引擎,支持HTML5 和硬件加速的图形与文本。Internet Explorer 9 是首个利用了现代硬件的浏览器,这极大地提升了整个浏览器的图形渲染速度与性能,它具有如下几个之最:首次提供了硬件加速的可缩放矢量图形(SVG);首度借助于从CPU 向GPU 迁移所带来的好处来增强JavaScript 引擎的性能;首度通过GPU 来增强HTML5。

值得注意的是,早在此之前就已经有Beta/ 非官方版本的浏览器曾支持过GPU 加速

SVG 支持

可缩放矢量图形(SVG)格式正成为 IE9 上的一等公民。 SVG 将成为微软新的战略选择,微软也将通过其支持下一代 Web 应用中的矢量图形:

我们期望有众多用户和开发者支持的 SVG 能成为 Web 不可或缺的一部分。相对于光栅图片来说,SVG 具有很多优势。借助于硬件加速图形,我们完全可以迈进交互式、图形驱动的 Web 世界了。

就不同厂商实现之间的互操作性这个问题,微软表示将与 SVG 工作组协作以保证其实现能与其他厂商的实现互操作

虽然 SVG 规范的首个版本早在几年前就已经处在“推荐”状态,但规范本身依然存在一些未解决的问题。这导致目前各大主流浏览器中的 SVG 实现在范围和行为上差异较大。我们的目标定位在互操作性上,借此简化开发者的工作。对于我们所实现的那部分规范来说,我们会严格遵守规范的要求。有时,我们的决定会受到其他浏览器的行为和 SVG 的未来发展方向所影响。

借助于现在发布的预览版,开发者可以将 SVG 插入到 HTML 中并创建可缩放的图形:

<!DOCTYPE html>
<p style="font-family:Georgia;font-size:9pt;">You can insert vector images using inline HTML...
<BR>
<svg width="200" height="100">

    <circle cx="50" cy="50" r="45" fill-opacity=".5" fill="red"/>

    <circle cx="100" cy="50" r="45" fill-opacity=".5" fill="yellow"/>

    <circle cx="75" cy="100" r="45" fill-opacity=".5" fill="blue"/>

    <text x="40" y="70" fill="white">Colors!!</text>
</svg>
</p>

目前 IE9支持如下SVG 特性

  • 基本形状:矩形、圆、椭圆、直线、折线以及多边形
  • 坐标系统、变换以及单元
  • 文档结构、元数据以及可扩展功能
  • 路径,包括path元素的所有功能和d属性

HTML5

IE9 实现了 HTML 5 规范的部分特性,微软表示随着规范的日趋完善,实现的特性也会越来越多:

微软早在 Internet Explorer 8 中就已经开始支持 HTML5 规范草案的部分特性了。这包括 DOM 存储跨文档消息 Ajax 导航(借助于 window . location . hash 值)以及在线离线的事件处理器。Internet Explorer 平台预览版通过支持HTML5 的一些API 以及修改了解析HTML 的方式来强化这一点。

CSS

相较于兼容 CSS2.1 规范的 IE8 来说,IE9 预览版改进了对 CSS 的支持,它增加了对 CSS3 中众多组件的支持,其余组件仍在计划当中。

目前,IE9 所支持的 CSS3 新特性有:

  • 借助于border-radius属性实现的圆角矩形
  • RGBA 色彩模型
  • opacity属性
  • CSS3 选择器

遗失的重要特性

值得注意的是,IE9 尚未实现 HTML5 中的部分特性,而 Firefox 和 Chrome 已实现的某些特性也不在 IE9 中,比如说:

  • Canvas 元素
  • Web Workers
  • Open web font 支持
  • Ogg Theora for video(目前只支持 H.264 video codec)

发布声明明确表示 IE9 不支持 Windows XP,用户需要安装 Windows Vista 或 Windows 7。

查看英文原文: Internet Explorer 9 Preview: New Features and Analysis

2010-04-27 00:123182
用户头像

发布了 88 篇内容, 共 272.1 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

Java——I/O II

武师叔

6月月更

天翼云探索云原生、边缘计算融合新思路

天翼云开发者社区

天翼云数字政府智慧数据中台通过认证

天翼云开发者社区

定金预售的规则思路详解

CRMEB

加密市场进入寒冬,是“天灾”还是“人祸”?

股市老人

2022年盲盒软件开发商业模式深度解析

开源直播系统源码

软件开发 盲盒开发 盲盒软件

攻防演练 | 基于ATT&CK的威胁狩猎实践案例

青藤云安全

网络安全 攻防演练 威胁狩猎

初识ElasticSearch

阿Q说代码

搜索引擎 lucene ES 选举 脑裂

CAT敏捷团队教练工作坊 (Coaching Agile Teams) | 8月20日开课

ShineScrum

教练 敏捷教练 高管教练 专业教练 ACC

web前端开发培训 | React面向组件编程

@零度

前端开发 React

企业官网如何提高客户转化率

源字节1号

轻松上手Fluentd,结合 Rainbond 插件市场,日志收集更快捷

北京好雨科技有限公司

Kubernetes EFK Fluentd rainbond

6月《中国数据库行业分析报告》发布!智能风起,列存更生

墨天轮

数据库 TiDB 国产数据库 列式存储

MAUI使用Masa blazor组件库

沙漠尽头的狼

重磅直播|BizDevOps:数字化转型浪潮下的技术破局之路

阿里云云效

阿里云 DevOps 研发效能 BizDevOps 场数字化转型

假如,程序员面试的时候说真话

AlwaysBeta

程序员 面试

本周四晚19:00战码先锋第7期直播丨三方应用开发者如何为开源做贡献

OpenHarmony开发者

OpenHarmony

NFT交易平台数字藏品系统开发技术

薇電13242772558

NFT 数字藏品

云上人和物联科技加入龙蜥社区,携手打造软硬件服务生态

OpenAnolis小助手

开源 生态 龙蜥社区 CLA 云上人和物联科技

Java——流输入输出

武师叔

6月月更

得物技术复杂 C 端项目的重构实践

得物技术

前端 大前端 重构 框架 社区

SAP Marketing Cloud 功能概述(二)

汪子熙

云计算 SaaS SAP 6月月更 Marketing Cloud

大数据培训 | 电商用户行为分析之商业指标统计分析

@零度

大数据开发

力扣每日一练之双指针2Day9

京与旧铺

6月月更

java培训机构 | Java设计模式之适配器模式

@零度

设计模式 JAVA开发

美团基于 Flink 的实时数仓平台建设新进展

Apache Flink

大数据 flink 流计算 实时计算 实时数仓

TiFlash 函数下推必知必会丨十分钟成为 TiFlash Contributor

PingCAP

#TiDB

北京大数据培训 | 电商用户行为分析之实时流量统计

@零度

大数据开发

【OpenI开源项目推荐-GammaGL】支持国内外主流深度学习框架的图神经网络算法库

OpenI启智社区

人工智能 算法 图神经网络

社恐?自我介绍时大脑一片空白?

阿Q说代码

个人成长 社恐 职场破冰 入职公司

DevSecOps: CI/CD 流水线安全的最佳实践

SEAL安全

CI/CD DevSecOps

Internet Explorer 9预览:新特性与分析_微软_Dio Synodinos_InfoQ精选文章