泰晓科技 -- 聚焦 Linux - 追本溯源,见微知著!
网站地址:https://tinylab.org

泰晓Linux知识星球:1300+知识点,520+用户
请稍侯

泰晓资讯·2月 / 第四期 / 2020

Wang Chen 创作于 2020/02/14

“泰晓资讯”,广泛报道 “Linux/开源” 业界资讯。欢迎广大读者投递相关资讯来源和素材,本站将进一步收集整理后发布给大家。

Linux 5.5 版本正式发布,相关开发统计数据分享

The 5.5 kernel was released on January 26. Over the course of this development cycle, it was occasionally said that the holidays were slowing contributions. At the end, though, 5.5 saw the merging of 14,350 non-merge changesets from 1,885 developers — not exactly a slow-moving cycle. Indeed, 5.5 just barely edged out 5.4 as the kernel with the most developers ever. Read on for our traditional look at where the contributions to 5.5 came from, along with a digression into the stable-update process.

5.5 内核于 1 月 26 日正式发布。时间稍有延迟,或许是此开发周期恰逢圣诞假期。根据最终的统计,5.5 版本合并了来自 1885 个开发人员的 14350 补丁集,所以看上去这个开发周期还是很忙碌的。下面照例给出一些统计数据供大家参考:

5.5 中添加了将近 590,000 行代码,同时删除了近 272,000 行,净增长了 318,000 行代码。 在为 5.5 做出贡献的开发人员中,有 285 人是首次贡献。5.5 上最活跃的开发人员是:

据统计总共有 231 家公司参与了 5.5 内核的开发工作。 这次最活跃的公司列表如下:

更多详细数据请阅读原文 “Some 5.5 kernel development statistics”

关键词: Linux,5.5,statistics

io_uring 的最新发展报道

One year ago, the io_uring subsystem did not exist in the mainline kernel; it showed up in the 5.1 release in May 2019. At its core, io_uring is a mechanism for performing asynchronous I/O, but it has been steadily growing beyond that use case and adding new capabilities. Herein we catch up with the current state of io_uring, where it is headed, and an interesting question or two that will come up along the way.

经典的 Unix I/O 本质上是同步的。 对于应用程序而言,直到系统调用(如 read()write())返回,才意味着读写操作完成,虽然某些处理可能仍然在内核中继续进行。 异步操作并不是什么新鲜玩意,在 Unix 被发明之前多年就有系统可以支持这项特性了。

在 Linux 上,AIO 子系统最终填补了这一空白,但是该解决方案并不完全令人满意。 AIO 需要在底层有特定的支持,因此,其应用只是局限在几个核心用例上(譬如 direct File I/O 和网络读写)。 多年来,社区为解决异步 I/O 问题提了多种方案,例如 fibrils, threadlets, syslets, acall, 和 work-queue-based AIO ,但没有一个进得了主线的。

最新的尝试是 io_uring,最终于 2019 年 5 月 的 5.1 版本中被合入内核主线。与之前的方案不同,io_uring 的核心是引入了一个用户空间和内核之间共享的内存环形缓冲区。 在许多情况下,它允许用户程序发起读写操作而无需陷入内核。其接口有些复杂,但是对于吞吐量巨大的应用程序而言,引入这种复杂性可以通过提高性能来获得回报。

io_uring 的最初目标是实现异步 I/O,但随着该功能的逐步发展,其支持的范围已经超出了这个最初目标。“The rapid growth of io_uring” 给我们详细介绍了 io_uring 的当前状态,前进的方向以及一些有趣的问题,感兴趣的同学可以尝试阅读原文,如果您觉得此文颇有价值也可以联系我们翻译全文。

关键词: Linux,io_uring

四大亮点带你看 Linux 内核 5.6

While we’ve already witnessed the stable release of Linux 5.5 with better hardware support, Linux 5.6 is next. To be honest, Linux 5.6 is much more exciting than 5.5. Even though the upcoming Ubuntu 20.04 LTS release will feature Linux 5.5 out of the box, you should really know what Linux 5.6 kernel has in store for us. In this article, I’ll be highlighting the key changes and features that you can expect with Linux 5.6 release:

  1. WireGuard Support
  2. USB4 Support
  3. F2FS Data Compression Using LZO/LZ4
  4. Fixing the Year 2038 problem for 32-bit systems

当我们还在体验 Linux 5.5 稳定发行版带来更好的硬件支持时,Linux 5.6 已经来了。说实话,Linux 5.6 比 5.5 更令人兴奋。即使即将发布的 Ubuntu 20.04 LTS 发行版将自带 Linux 5.5,你也需要切实了解一下 Linux 5.6 内核为我们提供了什么。主要有四大两点值得我们期待:

  1. 支持 WireGuard:WireGuard 将被添加到 Linux 5.6,出于各种原因的考虑它可能将取代 OpenVPN。同样,Ubuntu 20.04 LTS 将支持 WireGuard。
  2. 支持 USB4: USB4 将使 USB 的最大带宽增大一倍并支持多并发数据和显示协议。另外,虽然我们都知道 USB4 基于 Thunderbolt 接口协议,但它将向后兼容 USB 2.0、USB 3.0 以及 Thunderbolt 3,这将是一个好消息。
  3. 使用 LZO/LZ4 压缩 F2FS 数据:这只是 Linux 文件系统的一种新压缩技术,你可以选择待定的文件扩展技术。
  4. 解决 32 位系统的 2038 年问题:Unix 和 Linux 将时间值以 32 位有符号整数格式存储,其最大值为 2147483647。时间值如果超过这个数值则将由于整数溢出而存储为负数。这意味着对于 32 位系统,时间值不能超过 1970 年 1 月 1 日后的 2147483647 秒。也就是说,在 UTC 时间 2038 年 1 月 19 日 03:14:07 时,由于整数溢出,时间将显示为 1901 年 12 月 13 日而不是 2038 年 1 月 19 日。Linux kernel 5.6 解决了这个问题,因此 32 位系统也可以运行到 2038 年以后。

关键词: Linux,5.6

联系我们

资讯内容部分来自 “LWN.net“。如果您对某些 LWN 文章感兴趣(譬如希望获得全文翻译的)请扫描二维码加微信联系我们:

tinylab wechat



Read Album:

Read Related:

Read Latest: