正是 Linux 系统具有如上的诸多优秀特质,成就了它成为了各大厂商的大咖们钟爱的使用工具。那么,究竟有哪些大咖来分享这些成功应用呢?请看:
来自华为的 Boqun Feng 将带来:递归读写死锁与何处可发现此类死锁。
Lockdep(Linux 内核中的死锁检测器)是一个用来检测死锁的强有力工具,且内核开发人员已使用了很长一段时间。但是,当涉及到读写/写锁死锁检测时,Lockdep 仅能够提供有限的支持。同时,一些主要架构(x86 与 arm64)已经或正试图将其 rwlock 实现转变为队列 rwlock,从而使得这一支持变得更加有限。例如,我们发现了一些发生在内核中的死锁案例,无法使用 Lockdep 对其进行检测。为了改善这一情况,ikml 发布了一个补丁集以支持在 Lockdep 内进行读写/写入死锁检测,并已更新到了第 6 版。 本演讲将简要介绍 rwlock 相关死锁(递归读写死锁),以及我们如何对 Lockdep 进行微调以进行检测。其将着重于检测算法以及准确性和一些实现细节。
同样,来自华为的 Xiang Gao 将带来:EROFS 简介与我们的智能手机实践。
EROFS 文件系统是一个 Linux 只读文件系统,用以节省额外的存储空间,并保证嵌入式设备,尤其是安卓设备的端到端性能。与其他通用文件系统相比,这一系统旨在减少元数据的数量,并为目标文件系统用户提供透明的压缩支持。在过去的 2018 年里,EROFS 已完成开发,合并入 Linux 的状态树,并安装入多种智能手机中。请注意,其目前仍在积极开发中。在之后,将会增加更多有用的功能。本演讲将展示与在消费者的嵌入式设备内进行实时解压相关的问题以及我们的实践、EROFS 的详细设计、基准评测、与当前的 squashfs 的对比、被压缩的 btrfs 以及 EROFS 的未来蓝图。
来自腾讯的 Xiaoming Gao 将带来:设计新的调度算法以提升 CPU 的利用率。
许多大型互联网公司常常会面临 CPU 利用率低的问题。这一问题可通过在单一节点上部署离线 CPU 限制型负载与线上服务进行解决。但其缺点是无法保证线上服务的质量。就这一问题,腾讯团队已经进行了一些工作,并在 Linux 内核的基础上引入了新的离线调度类。
另外一位来自腾讯的 Dongdong Chen 则会带来:内核中的 Buffer Write io 与网络 RX 控制的新 Cgroup 子系统。Linux 机上的资源可通过 Cgroup 子系统进行控制,例如内存与 CPU 。然而,在内核 4.x 之前,我们无法控制 Buffer Write io 与网络 RX。为此,腾讯团队在内核中加入两个新的 Cgroup 子系统,以控制 Buffer Write io 与网络 RX。这使得用户能够为 QOS 向不同工作分配不同的资源值。
来自 Intel 的 Lu Baolu 将会带来:防止 Thunderbolt 设备发起的 DMA 攻击。MacOS 与 Windows 平台上的 Thunderbolt 允许外围设备直接通过 PCIe 总线与计算机进行连接。尽管芯片供应商拥有 DMA 重映射技术以防止 DMA 攻击,但是系统仍然十分容易受到通过 Thunderbolt 端口连接的恶意外围设备的 DMA 攻击。本演讲将展示Intel已与 Linux 确认的安全问题,以及所编制的解决方案。
另外一位同样来自 Intel 的 Ziye Yang 则会带来:基于 SPDK 的用户空间 NVMe Over TCP 传输解决方案。最近,NVM express 就 NVMe over fabrics 发布了新的 TCP 传输 (TP8000) 规范。在本演讲中,Ziye 将介绍 SPDK 内 NVMe-oF 的 TCP 传输的设计、实现与开发计划。目前,SPDK 可在主机端与目标端进行 TCP 传输,并已经与 Linux 内核解决方案进行了测试,表现出了良好的互操作性。此外,也将提供一些实验结构以证实 SPDK 的 NVMe-oF TCP 传输实现的性能与可拓展性。同时,Ziye还将介绍一些技术以进一步改善 SPDK 解决方案的性能,例如:(1) 利用用户空间 TCP 堆栈(例如,VPP + DPDK)以替代内核 TCP 堆栈;(2) 利用硬件的一些功能,例如英特尔的 E810 NIC 上的 ADQ。
笨叔叔 - 奔跑吧,Linux 内核社区