微软工程师:我们也爱Linux!
出品 | OSC开源社区(ID:oschina2013) 微软工程师最近在 Linux 基金会开源峰会 发表了演讲 ,其中谈到了 WSL2 对 Linux 内核的使用情况 —— 包括它如何接近内核主线 / 上游,还提到了微软工程师团队喜爱的 Linux 内核功能。 根据幻灯片的内容 ,他们介绍了 WSL/WSA 架构、如何跟踪 Linux LTS 内核版本以及他们对内核上游的贡献。 比如下面的图片介绍了 WSA 的服务端、客户端与虚拟机之间的调用关系:
https://github.com/microsoft/WSL2-Linux-Kernel 目前最新的 WSL2 版本已将内核升级到 Linux 6.1 LTS。 谈及微软工程师最喜爱的 Linux 内核特性,他们提到了多代 LRU (Multi-Gen LRU, MGLRU)、用于编译器优化的 Profile Guided Optimizations (PGO)、用于虚拟 GPU 处理的 VirtIO-GPU、挂起到磁盘和 Google 的开发模型。
链接时优化 (LTO, link-time optimizations) 相关链接: https://static.sched.com/hosted_files/ossna2023/bb/WSA%20and%20WSL%20presentation.pdf
WSL 2 的架构则如下图所示,它使用了轻量级的虚拟机和完整的 Linux 内核,提升了文件 I/O 性能,并且与 systemcall 完全兼容。 微软工程师还表示,他们对上游的部分贡献主要是对 Linux 内核候选版的持续测试、改进内核测试,以及增加他们的上游贡献者。当然也包括优化 WSL 2 的性能。 如果你对 WSL 2 的 Linux 内核感兴趣,可关注此仓库:WSL2-Linux-Kernel
https://github.com/microsoft/WSL2-Linux-Kernel 目前最新的 WSL2 版本已将内核升级到 Linux 6.1 LTS。 谈及微软工程师最喜爱的 Linux 内核特性,他们提到了多代 LRU (Multi-Gen LRU, MGLRU)、用于编译器优化的 Profile Guided Optimizations (PGO)、用于虚拟 GPU 处理的 VirtIO-GPU、挂起到磁盘和 Google 的开发模型。
大约三年前,微软工程师曾探索使用 LTO+PGO,以实现更好的 Linux 性能。当时他们称对 PGO 的兴趣源于对 Linux 性能的 “内部客户要求”。后来有人发现 Windows 确实在 WSL 中广泛使用了 LTO + PGO。
配置文件引导优化 (PGO, profile-guided optimizations)链接时优化 (LTO, link-time optimizations) 相关链接: https://static.sched.com/hosted_files/ossna2023/bb/WSA%20and%20WSL%20presentation.pdf
往 期 推 荐
1、 苹果禁用ChatGPT,为防机密泄露!大模型版Siri即将升级推出
4、为什么国外JetBrains做 IDE 就可以养活自己,国内不行?区别在哪?
点 分 享
点 收 藏
点 点 赞
点在看
评论