首页 >> 百科

c盘的assembly可以删除吗(c盘assembly文件夹可以删除吗)

2022-07-11 百科 238 作者:admin

本文最初发表在 Uno 平台博客上。

和去年一样(作者写了 2020 年的发展和 2021 年的预测),本文将首先回顾过去一年的发展,然后预测未来一年的发展方向。

回顾 2021

在过去的一年里,开发速度比我预期的要快得多,尤其是网络浏览器。

浏览器

MVP版本在2017年刚刚发布的时候,和其他浏览器处于同一水平。然后经过多年的发展,它不幸被抛在了后面。

现在是 2021 年,我很高兴看到不断发布支持的更新。这可能是追赶其他厂商的开始。随着 2021 年 12 月 14 日版本 15.2 的发布,2021 年全年更新发布了以下功能:

编译流大内存操作可寻址内存高达 4GB 异常处理响应头支持 COOP 和 COEP 原子指令。重新开放对使用 COOP/COEP 响应标头的站点的共享缓存的支持。

借助共享缓存,可以实现多线程之间的内存共享。不幸的是,由于共享缓存中的当前和安全漏洞,共享缓存被禁用,直到人们找到针对该漏洞的合适解决方案。

桌面应用程序率先将站点隔离作为一种漏洞解决方案,重新启用共享缓存。之后,将 COOP 或 COEP 添加到响应头意味着告诉浏览器创建一个隔离环境,以便安全地重新启用共享缓存。

2020 年,桌面应用程序通过将这些标头添加到响应标头中,首次重新启用了共享缓存。到 2021 年初,桌面应用程序将对共享缓存的支持更新到最新标准。之后,如果要使用共享缓冲区功能,则必须添加这些响应头。

同时,终端也在 2021 年初宣布支持这些响应头,使得在移动终端上使用多线程成为可能。随着最新版本重新打开对共享缓存的支持,除多线程之外的所有现代浏览器。

我希望在 2021 年支持这些响应标头,但遗憾的是没有实现。然而,在 2022 年, 手机很可能会支持这些响应头。

固定宽度 SIMD

SIMD 是指同一条指令同时作用于多个数据节点。这样可以大大提高计算性能。例如,利用CPU的SIMD指令,可以大大提高图像处理能力。

SIMD 有很多种。首先,决定首先支持 128 位固定宽度 SIMD 操作。

并分别在 2021 年 5 月和 2021 年 6 月增加了对固定宽度 SIMD 的支持,但目前还没有。

异常处理

到目前为止,还没有内置的异常处理模块。为了弥补这个空缺的缺陷,应用程序必须添加额外的异常处理代码,使用 . 但是,当这些异常处理逻辑代码内置到模块中时,不仅会增加模块的大小,还会影响性能。因此,除非必要,一般建议不要在模块中使用异常处理。

异常处理于 9 月正式发布,但令我惊讶的是,异常处理也在 12 月实现,并决定在版本 15.2 中正式发布。

目前,它不受 Node.js 支持,仍在进行中。

根据 V8(和 Node.js 引擎)的发行说明,使用异常处理的代码大小比使用的代码大小小 43%,比没有任何异常处理的代码大小大 9%。同时,异常处理。

如果您对 V8 中异常处理的细节感兴趣,可以查看 V8 发行说明:.

模块类型和接口

模块建议是关于在两个或多个模块定义之间建立链接并在运行时为您处理该链接的过程。

类型建议描述了模块如何通过高级数据类型定义相互通信。例如,一个模块可能使用 UTF-8 字符串,而另一个模块可能使用 UTF-16 字符串。通过描述它们的数据类型,模块之间的通信将更容易。

我曾预计这两个提案都将在 2021 年完成。虽然目前已经取得了一些阶段性的成果,但未来仍需努力。

. 网络 6

在过去的一年里。NET 为进一步改进对工具和性能的支持做出了很多努力。11 月 6 日发布的 AOT 编译功能就是其中之一。

通常,编译。NET 代码分两步。首先将原生代码编译成IL( IL(.NET框架),然后在部署的目标机器上,剩下的编译由目标机器的即时编译完成。这个过程其实就是有点类似于工作机制。

当这种编译机制的代码在客户端浏览器中运行时,代码是。NET 本身,应用程序代码是一个 IL 文件。这种按需编译并执行IL文件的方法在性能上不如直接执行编译文件的方法。

在 AOT 编译模式下,全部应用。NET 代码将被编译成 . 虽然这种方法会增加文件大小,但可以获得更好的性能。但是,大文件可能会导致应用程序第一次加载时间过长。

考虑到 IL 和 AOT 的优缺点,面向配置的 AOT 编译可能是最好的选择。这样,我们就可以通过 AOT 编译常用代码,其余的通过 IL 编译。

此外,我们的 Uno 平台还引入了一项称为 XAML 资源修剪的功能。它会删除未使用的代码以及 AOT 编译。在测试中,发现通过这种方式可以减少 50% 的应用程序代码。

字节码联合

Byte 最初是一个由 Intel、Red Hat 和 . 它的目标是利用 WASI 和 WASI 等标准来构建一个安全平台,该平台可以在任何平台、设备或操作系统上运行不受信任的代码。

WASI(系统接口)是如何在浏览器以外的场景中安全一致地使用的标准。如果你想了解更多,Lin Clark 写了一篇很好的文章来解释它:WASI - :/.

联盟从一开始就希望有更多的组织加入,因此组织的内部结构必须进行相应的调整,以适应组织未来的发展壮大。基金会成立后,红帽退出,微软加入并帮助其他创始人将该组织合并为非营利组织。2021 年,该联盟扩大,现在包括微软、谷歌、Arm、基金会、加州大学圣地亚哥分校和加州大学圣地亚哥分校。

除了支持 WASI,该财团也是 Lucet、WAMR 和 Enarx 等项目的来源。如果您对字节码联盟感兴趣,可以点击链接获取更多信息:/。

应用领域

每年,我们都会看到越来越多的商业产品增加了对它的支持。比如2020年,Zoom、Meet、Earth、浏览器都加入了其他计算产品的竞争。此外,还有 eBay 条码扫描器、Web 应用程序和 Unity 游戏引擎。

2021年也不例外。以下是使用的一些新字段:

要使用的 + 应用程序开发工具包。在网页上发布的简化版本。微软的飞行模拟器有一个基于插件的系统。

随着功能和工具的改进,以及越来越多的商业产品的使用,我们开始在框架和常规 Web 中看到应用程序。虽然应用领域和产品还很少,但它的持续增长令人振奋。

2021 年对你来说是伟大的一年,那么我们对 2022 年有什么期待呢?

2022年预测

我认为 2022 年将发生的事情是,几乎在每个领域,功能都将得到进一步增强和完善。其中,我最期待异常处理。

异常处理

异常处理是许多编程语言的基本特性,因此它位于待办事项列表的顶部。,而 Edge 已经有了这个功能,Node.js 也在积极开发中。

因为低性能版本仍然可用,当你的模块需要异常处理时,如果可以使用性能更好的异常处理,则升级,否则返回使用异常处理的版本。

共享缓冲区

如前所述,几乎所有现代桌面和移动浏览器,包括桌面,现在都支持 COOP/COEP 响应标头。这些响应头允许浏览器安全地启用共享缓存,允许您的模块使用多线程。

在现代浏览器中,只有移动端不支持这些响应头,但移动端计划在 2022 年 2 月发布的 97 版本中支持这些响应头。

固定宽度 SIMD

我预测这个功能将在今年的版本中实现。

我的理由是增加了对 2021 年的支持,固定宽度的 SIMD 规范现已标准化,并且 Xcode(Apple 的操作系统开发环境)已经支持 SIMD。

尾声

为了支持这一点,一些编程语言不得不使用尾调用。虽然许多事情可以有替代路径,但这个过程很慢。此外,尾调用在编译优化和过程控制中发挥着积极作用。该提案已经进行了一段时间,但在第 4 阶段之前,至少有两个供应商(或)必须实施该功能。此功能已在发布标签中实现,但直到第 4 阶段才打算正式发布。所以我们仍然必须等待至少一个供应商来实现此功能。

不是厂商不想实现这个功能,而是他们都在忙着自己认为更重要的事情。所以人们都在努力提高这个功能在各个厂商眼中的重要性和优先级。

支持多个内存

建议是具有多个存储模块的模块。

额外内存的一种使用场景是当一个模块使用一个内存区域作为自己的内部数据区域,并将另一个内存区域转移给一些需要写入数据的模块。这样可以防止模块内部的数据被外部模块错误写入。同时,这种方法还可以很好地隔离敏感数据和共享数据,起到一定的安全作用。

另一个多内存使用场景是,在多线程中,可以让这些线程拥有一个共享内存区域,同时将其他模块数据保存到另一个内存区域。

如果对多个内存区域的使用场景感兴趣,可以查看 ()的介绍,了解更多使用场景。

这个提案现在已经到了第三阶段,有很多引人注目的应用场景。所以特别希望今年能正式发布。

WASI(网络组装系统接口)

正如本文前面提到的,我预计模块链接和接口类型这两个提案将在 2021 年完成。可惜它们仍在进行中,不会像我预期的那样在 2021 年完成。

这些建议不仅是创建组件模型的一部分,而且是创建组件模型的基本功能。根据这个WASI帮助文档的描述,组件模型类似于操作系统的进程模型,用于定义进程如何启动以及如何相互通信。WASI在这里的作用类似于操作系统的API层。

因此,在 2022 年,WASI 的组件模型和接口类型提案将继续演进。如果您对 WASI 的提案感兴趣,可以通过 WASI 提案列表()了解更多信息。

概括

在过去的一年中,在性能改进方面,我们看到了共享缓冲区、固定宽度 SIMD 和异常处理等功能。同时,。NET6​​ 改进了对两者的支持。NET 和 Uno 平台通过添加 AOT 进一步提高了性能。

2021 年的一大惊喜。他们做了很多工作来赶上其他浏览器的支持。

2021年,我们会看到更多的商用产品加入使用的行列,也开始在公共互联网上使用。

因此,2022 年将是又一个发展的好年头,因为那些目前不支持的功能很可能会在 2022 年正式发布并投入生产。

本身有很多有趣的功能提案,字节码联盟将继续帮助浏览器的实现和功能升级。

如果您对该功能支持的开发路径感兴趣,可以看看下面的网站。第一列显示功能列表:功能路线图 (/)。

感谢特邀嘉宾,《in》的作者和资深软件开发人员,写了一篇关于当前和未来状态的综合文章。

关于我们

最火推荐

小编推荐

联系我们


Copyright 8S新商盟 Rights Reserved.
联系YY号:2949821684
邮箱:chenjing919994@sohu.com
备案号:浙ICP备2023016511号-1