V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
h82258652
V2EX  ›  Windows

为什么 MS 不继续发展 AOW,而是弄 WSA?

  •  
  •   h82258652 · 2021-10-23 12:51:21 +08:00 · 4810 次点击
    这是一个创建于 1156 天前的主题,其中的信息可能已经有所发展或是发生改变。
    AOW 是以前 Windows 10 Mobile 那个,运行时转译字节码,然后部分功能例如文件存储、摄像头调用桥接到 Windows 10 Mobile 系统上。当时用 Lumia 535 有幸试过一下,1G ram 的机子运行比较简单的 apk,跑起来还算挺流畅的。
    现在 Windows 11 这个 WSA 就是个虚拟机,也就将虚拟机里面的消息通知接入到了 Win11 系统。用公司的电脑体验了一下,启动虚拟机就占了 900 多 M 的内存了。

    比起虚拟机的方案,AOW 的方案不是更佳么?虽然工作量应该要多不少,但是技术上当时也验证过了,搞不懂为什么 MS 不继续发展 AOW 。
    16 条回复    2021-10-23 21:14:05 +08:00
    ShadowPower
        1
    ShadowPower  
       2021-10-23 13:11:00 +08:00   ❤️ 10
    AOW 在 WP 凉了以后变成了 WSL,在做 WSL 的过程中,微软发现这玩意要想达到完全兼容 Linux,成本实在太高。
    而使用虚拟机的话,可以直接使用真正的 Linux 内核,大幅降低了成本。
    虽然理想很美好,但是还是要向现实妥协的……
    ch2
        2
    ch2  
       2021-10-23 13:16:59 +08:00
    WSL1 想保证兼容性太难了,开坑容易填坑难
    ikas
        3
    ikas  
       2021-10-23 13:17:33 +08:00
    虚拟化方案对比直接使用 nt 实现 linux 毕竟工作量与兼容性都好太多
    另外 win11 目前已经大量使用虚拟化.比如默认启用的 vbs,还有 edge 的隔离安全模式
    之前还有针对 win32 隔离的容器(winx)
    moen
        4
    moen  
       2021-10-23 13:20:36 +08:00
    可以参考同样是净室实现的 ReactOS 现在才达到什么样的可用性
    ScepterZ
        5
    ScepterZ  
       2021-10-23 13:56:44 +08:00
    wsl1 搞了这么久,最后不也是放弃了么,感觉主要就是工作量太大了吧
    fgwmlhdkkkw
        6
    fgwmlhdkkkw  
       2021-10-23 14:01:06 +08:00 via Android
    @ShadowPower 哇,原来 wsl 是这么来的。
    billlee
        7
    billlee  
       2021-10-23 14:27:35 +08:00
    wsl1 其实可用程度已经很高了,弃坑真是可惜了。现在 wsl2 的虚拟机方案感觉还不如直接裸机装 linux
    Dango101
        8
    Dango101  
       2021-10-23 17:21:13 +08:00
    @billlee 同感,虽然不知道 wsl1 是什么原理,但是 1 的内存占用基本上是无感的 用的很舒服 2 就太离谱了 至今一直在用 wsl1
    q000q000
        9
    q000q000  
       2021-10-23 17:25:54 +08:00 via iPhone
    WSA...启动都要那么久...
    ysc3839
        10
    ysc3839  
       2021-10-23 17:37:16 +08:00 via Android
    因为当年是为了在手机等不支持虚拟化的设备上跑,所以只能搞子系统。
    但是现在不需要支持手机了,子系统就没有明显优势了,自然改用虚拟化。
    GrayXu
        11
    GrayXu  
       2021-10-23 17:48:16 +08:00
    这就是为什么我们这些人一直在用 WSL1 :)
    moen
        12
    moen  
       2021-10-23 17:57:05 +08:00   ❤️ 1
    @Dango101 WSL1 就是在 NT 内核层面把 Linux 内核实现一遍,把 Linux 内核 API 的调用变成 NT 内核 API 的调用,在应用程序看来 NT 内核就是 Linux 内核
    TypeError
        13
    TypeError  
       2021-10-23 18:37:29 +08:00   ❤️ 1
    AOW 、WSL1 、Wine 、还有各种冷门系统兼容 Android App 用的转译,都是投入产品比太低的手段,
    而且后续可维护性也不一定好,
    我觉得用 HyperV 的思路是对的,现代电脑上吃性能的软件太多了,比如各种 Election 应用,不缺一个 HyperV 实例
    完整系统的体验相比转译要完善不少
    maplerecall
        14
    maplerecall  
       2021-10-23 18:45:04 +08:00 via Android   ❤️ 2
    理想很好,工作量太大,之前的模式几乎等同于重新开发个操作系统,顶层到底层全都的改,即使效果好但开发维护成本都很高,迭代速度也快不起来。

    来个不太恰当的对比就是老 edge 和新 edge ,老 edge 就是从头重新开发,轻快省电,但各种 bug ,无论功能还是稳定性要达到社区共同维护十几年的 chromium 的程度短期几乎不可能。于是打不过就加入,新 edge 虽然费电费内存了但市场份额的确证实了什么叫大家都说好…
    jim9606
        15
    jim9606  
       2021-10-23 20:40:09 +08:00
    WSL1 和 AOW 的底层实现跟上游是不一样的,差不多等于照着上游的接口重新实现一遍,工作量很大,兼容性也不好,有些特性还没法支持。
    WSL2 和 WSA 这种虚拟机方案约等于照抄上游实现,加一点耦合度不高的 bridge 组件就行,特性齐全,兼容性还好,追主线也容易很多。
    Halry
        16
    Halry  
       2021-10-23 21:14:05 +08:00 via iPhone
    应该是现在的电脑性能越来越好了,让 nt 去兼容 linux 不如直接跑虚拟机,再加上虚拟方案越来越成熟。用老方法成本高维护性差
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   968 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 19:10 · PVG 03:10 · LAX 11:10 · JFK 14:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.