21CTO导读:一份全新报告显示,Windows 11 内置的“天气”应用占用超过 1 GB 的内存。相比之下,在类似条件下,macOS 系统中苹果自带的“天气”应用所占用的内存大约只有其五分之一。
微软一直致力于提升 Windows 11 在内存有限的 PC 电脑上的运行效率,但其一款内置应用似乎与这一目标在背道而驰。
据 Windows Latest 发布的测试结果显示,该操作系统的“天气”应用在执行相对简单的任务时,内存占用量竟然超过 1 GB。
图2 macOS 系统上的 Apple 天气应用占用的内存不到 250 MB
据 Windows Latest 报道,内存消耗过高是因为“天气”并非完全原生的 Windows 应用程序。
这一问题不太可能影响配备 32 GB 或更多内存的高端电脑,但可能会对入门级系统产生明显影响。 在配备 8 GB 甚至 16 GB 内存的计算机上,启动“天气”应用可能会增加非常大的内存压力,导致 Windows 更依赖于页面文件,从而可能使系统响应变慢。
该应用的界面中还包含广告。据 Windows Latest 报道,赞助内容被直接嵌入到预报信息流中,以与天气卡片相似的视觉风格并列显示。 尽管微软从多家供应商处获取气象数据授权——包括 Foreca、欧洲中期天气预报中心(ECMWF)以及其他区域气象服务机构——但在 Windows 内置应用中出现广告的做法仍招致了用户批评。
这一发现也与微软近期为提升 Windows 11 效率所做的努力相悖。
这一切的“罪魁祸首”,大概是微软推行的 WebView2 架构。
现在 Windows 11 里的很多内置应用,本质上并不是真正的桌面原生程序(Native App),而是一个运行在 Edge 浏览器内核里的 Web 页面。外面套了一层 Windows 的壳,里面其实就是一个完整的浏览器。
加载一套包含了 JavaScript 引擎、CSS 解析器以及渲染合成器的完整 Chromium 内核或进程,本身就是内存消耗大户。再加上实时数据更新、后台轮询和UI动画,1GB 的内存开销就这样被堆了出来。
天气应用需要实时数据吗?需要。需要动画吗?也许需要。但它真的需要加载一整套浏览器引擎来显示温度吗?显然不需要。
不可否认,Electron 和 WebView2 等技术的普及,极大地降低了桌面软件的开发门槛。现在的企业不再需要为 C++、WinUI 或 WPF 培养专门的原生开发团队,一个前端工程师就能用 HTML/CSS/JS 一把梭搞定所有平台。
从商业角度看,微软选择的是一条成本最低的开发路径:与其为几十个内置小应用分别配备原生开发团队,不如统一用 Web 技术交由前端团队维护。
但开发者的便利,最终变成了用户的负担。 开发者省下了成本,而用户的 8GB 或 16GB 内存却在任务管理器里被无情蚕食。对于很多普通用户来说,他们不关心微软的开发成本有多高,他们只看到一个简单的天气软件占用了自己极宝贵的系统资源。
今天,整个软件行业都在用 Web 技术堆砌桌面应用。Slack、VS Code、Discord、Spotify……这些我们每天都在用的软件背后,全是类似 Electron 的套壳方案。
但这些应用之所以没有引发如此强烈的反弹,是因为它们提供了极其复杂的业务逻辑、富文本交互或丰富的插件生态——它们的复杂度,“值回” 了几百兆甚至上 G 的内存开销。而一个只看气温的天气应用,显然不具备这种合理性。
这场讨论最终指向了一个尴尬的行业现状:我们给了开发者越来越高效、强大的构建工具,让他们能以极快的速度交付产品;却没有任何人去审查,这些工具生产出来的东西,究竟对不对得起用户的硬件。
作者:场长
来源:
Windows Latest、Wccftech
本篇文章为 @ 场长 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 微信公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。
请扫描二维码,使用微信支付哦。