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

全网首个嵌入式RISC-V Linux公开课火热连载中
请稍侯

泰晓资讯·6 月 / 第一期 / 2024

unicornx 创作于 2024/05/30

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

Linux 内核最新消息

本周 Linus 发布了 Linux 6.10-rc1 内核,这宣布 Linux 6.10 的合并窗口正式结束,下面进入常规的测试和问题修复阶段。

Linux 6.10 带来了许多新特性,这包括:针对新的 AMD 和 Intel CPU 改进,更好的对 Ryzen APU 的 AMDKFD 计算驱动程序支持,默认禁用 NFS v2 客户端支持,支持 Steam Deck IMU,支持连接另一个 USB 到并行端口适配器,更多对 Qualcomm Snapdragon X Elite 的支持,更多 XFS 在线修复功能,各种性能优化,打开未加密文件时的性能优化,对 Intel Battlemage 显卡的声音支持、对现代 Intel/AMD CPU 的更快 AES-XTS 磁盘/文件加密、IO_uring 零拷贝性能优化、放弃非常旧的 DEC Alpha 硬件支持等等。

Linus 6.10 还被赋予了一个新的代号:“Baby Opossum Posse(负鼠宝宝)”。这个代号继承了 Linux 6.0 以来一直使用的代号 “Hurr durr I’ma ninja sloth(呼呼呼 我是忍者树懒)” 的风格。

https://www.kernel.org/ updated by 2024/5/23

分支类型版本发布时间
mainline6.10-rc12024-05-26
stable6.9.22024-05-25
stable6.8.112024-05-25
longterm6.6.322024-05-25
longterm6.1.922024-05-25
longterm5.15.1602024-05-25
longterm5.10.2182024-05-25
longterm5.4.2772024-05-25
longterm4.19.3152024-05-25
linux-nextnext-202405292024-05-29

关键词: Linux

RISC-V 上的 Linux 6.10 允许可配置的启动映像压缩

A few days ago with the main RISC-V architecture pull for Linux 6.10 was enabling Rust support within the kernel for this ISA as well as other additions. A secondary set of RISC-V changes have been merged as well ahead of the Linux 6.10 merge window closing this weekend.

针对 Linux 6.10 的 RISC-V 架构,merge window 的第一 PR 提交中为该 ISA 启用了 Rust 支持以及其他附加功能。赶在上周末 Linux 6.10 合并窗口关闭之前,又合入了第二笔 RISC-V 更改。第二组 RISC-V 更改包括一些性能优化、错误修复和清理,然后最值得注意的是增加了允许更改内核启动镜像的压缩格式。

此前 RISC-V Linux 内核的镜像文件是未压缩的,除非启用了 XIP_KERNEL 或 EFI_ZBOOT 选项。如果采用后一种方式,将无条件地使用 GZ 对镜像进行压缩。但从 Linux 6.10 开始,可以对内核镜像选择使用 BZ2、LZ4、LZMA、LZO 或者 Zstd 压缩格式。

因此,今后那些想要对自己的 RISC-V 内核构建进行定制的人可以利用 CONFIG_KERNEL_ZSTDCONFIG_KERNEL_LZ4 等类似的 Kconfig 选项来为内核映像选择他们想要的压缩算法。

其他主要的 CPU 架构已经支持这种可配置的压缩能力,现在 RISC-V 也和它们对齐了。

新闻出处,“Linux 6.10 On RISC-V Allows Configurable Boot Image Compression”: https://www.phoronix.com/news/Linux-6.10-RISC-V-Image-Comp

关键词: Linux, RISC-V,Compression

Linux 6.10 中针对 ARM64 的新增功能

Merged last week for the Linux 6.10 kernel were all of the 64-bit ARM (ARM64 / AArch64) architecture changes. There is ACPI FACS support, the ability to easily construct FIT images, and a new command-line option for disabling 32-bit application support.

Linux 6.10 内核合并窗口结束前加入了针对 64 位 ARM 架构(ARM64 / AArch64)的更改。这些改动包括有对 ACPI FACS 支持、轻松构建 FIT 映像的能力,以及用于禁用 32 位应用程序支持的新命令行选项。

ARM64 现在支持 Firmware ACPI Control Structure(FACS) 签名功能,这是在某些硬件上实现从休眠状态重新启动所必需的。FACS 在上次成功启动过程中会存储硬件签名、用于同步对 OSPM 和外部控制器环境之间共享硬件资源的访问的全局锁、OSPM 的唤醒向量以及其他数据都可以在 FACS 表中找到。

Linux 6.10 中的 ARM64 代码还增加了对构建 Flat Image Tree(FIT) 映像的支持。FIT 由一个编译好的 Linux 内核和与之相关配对的 DeviceTree 组成,该 DeviceTree 被压缩,这么做的好处是易于分发。FIT 镜像文件可以通过 U-Boot、Coreboot 和 LinuxBoot 等直接启动。

Linux 6.10 中的 ARM64 代码现在也支持 “arm64.no32bit_el0” 选项。使用该命令行选项可以无条件地禁用 AArch64 系统上 32 位用户空间应用程序的执行。ARM64 的 “arm64.no32bit_el0” 选项类似于 x86_64 去年添加的 “ia32_emulation” 选项,允许禁用 32 位 x86 用户空间支持。

新内核中的其他一些 ARM64 更改包括一些内存管理优化、对 userfaultfd 写保护的支持、对 USER_STACKTRACE 的尽力展开支持、现在添加了 Neoverse-V2 部件号以及其他更改。

新闻出处,“64-bit ARM With Linux 6.10: Building FIT Images & Optional Disabling 32-bit User-Space”: https://www.phoronix.com/news/Linux-6.10-ARM64

关键词: Linux, ARM64

Linux 6.10 新增了一个系统调用 “mseal”

Merged this Friday evening into the Linux 6.10 kernel is the new mseal() system call for memory sealing.

Linux 6.10 内核上周合并了一个新的系统调用函数 mseal(), 该系统调用由 Google Chrome 团队的 Jeff Xu 领导开发。关于该系统调用的功能,新函数 mseal() 的 Linux 文档原文解释如下:

Modern CPUs support memory permissions such as RW and NX bits. The memory permission feature improves security stance on memory corruption bugs, i.e. the attacker can’t just write to arbitrary memory and point the code to it, the memory has to be marked with X bit, or else an exception will happen.

Memory sealing additionally protects the mapping itself against modifications. This is useful to mitigate memory corruption issues where a corrupted pointer is passed to a memory management system. For example, such an attacker primitive can break control-flow integrity guarantees since read-only memory that is supposed to be trusted can become writable or .text pages can get remapped. Memory sealing can automatically be applied by the runtime loader to seal .text and .rodata pages and applications can additionally seal security critical data at runtime.

A similar feature already exists in the XNU kernel with the VM_FLAGS_PERMANENT flag and on OpenBSD with the mimmutable syscall.”

可见 mseal() 这个系统调用可以充分利用现代 CPU 上对 RW 和 NX 等内存权限位的支持实现内存权限保护,此外还可以保护 mapping 本身不被随意修改,其名字 mseal 是 memory sealing 的缩写。GNU C 库 “glibc” 等在加载 ELF 可执行文件时可以利用该系统调用设置不可写的内存段,或者由 Google Chrome Web 浏览器和其他浏览器用于保护安全敏感的数据结构。这种新的 memory sealing 支持还可以使其他应用受益。

mseal() 系统调用最初是在去年 10 月提出的,从那时起经历了多次修订。最初,Linus Torvalds 对 mseal 有一些保留意见,但最终所有这些都得到了解决,代码现在已经合并到上游。不久前,mseal 系统调用通过这次合并登陆了 Linux 6.10 Git。

新闻出处,“Memory Sealing “mseal” System Call Merged For Linux 6.10”: https://www.phoronix.com/news/Linux-6.10-Merges-mseal

关键词: Linux, Memory, system call, mseal

Linux 中又新增一款 RISC-V 开发板 LicheeRV Nano

Linux kernel patches were posted today for enabling Linux to boot on the LicheeRV Nano, a mini single board computer that comes in at a mere 22.86 x 35.56 mm. As interesting as the size with this SBC is the Sophgo SG2002 SoC that features a mix of RISC-V and ARM cores.

本周 Linux 邮件列表中收到一个内核补丁,该补丁为 Linux 支持了一款新的迷你单板计算机,LicheeRV Nano。该单片机非常娇小,尺寸仅为 22.86 x 35.56 毫米。与此 SBC 的尺寸一样有趣的是,其采用了来自 Sophgo 的 SG2002 SoC,它兼具 RISC-V 和 ARM 内核。Sophgo SG2002 配备 1GHz C906 RISC-V CPU core 和 1GHz Arm Cortex-A53 core,但一次只能使用其中一个。在启动时,必须使用主 RISC-V 或 ARM 内核进行初始化。SG2002 还有一个 700MHz 的 C906 RISC-V core 作为辅助内核。

LicheeRV Nano 具有 256MB 的 DDR3 内存、多种连接选项,可用于各种嵌入式用途。此外,SG2002 还具有 1 TOPS 功能的 NPU。

LicheeRV Nano 本身提供了一个 Debian 版本,以及用于在其他地方启用这个迷你 ARM/RISC-V SBC 的补丁。目前在 Linux 内核邮件列表中收到的是使该板能够在主线 Linux 内核上启动的基本补丁。该补丁系列提供了带有 SG2002 芯片的 LicheeRV Nano 的基本启用,以便能够启动到基本 shell。我们将看看它们是否经过审查,并有望在今年夏天晚些时候出现在 Linux v6.11 中。

LicheeRV Nano 可在全球速卖通等网站上购买,售价约为 9 美元。

新闻出处,“Linux Patches Posted For Enabling A 22 x 35 mm RISC-V / ARM Board”: https://www.phoronix.com/news/LicheeRV-Nano-Linux-Patches

关键词: Linux, RISC-V, LicheeRV Nano

Arm 宣布推出 Cortex-X925 和 Cortex-A725

Andrew Morton sent out more patches on Wednesday that have been pulled into the Linux 6.10 kernel. Notable from this latest round of “non-MM” updates is enabling more compiler warnings by default and getting newer AMD GPUs working on the RISC-V architecture.

Arm 本周三宣布了 Armv9 CPU 产品组合中的最新产品:Cortex-X925 和 Cortex-A725。

Arm 的 Cortex-X925 “Blackhawk” 提供了 Cortex-X 历史上最大的同比性能提升。与 Cortex-X4 相比,Arm 的单线程性能提高了 36%,AI 性能提高了 46%。

Cortex-A725 是其新的 Armv9 处理器内核,旨在实现卓越的 sustained performance。与 Cortex-A720 相比,Cortex-A725 的性能效率提高了35%,电源效率提高了25%。

Arm 今天还宣布更新了 Cortex-A520,得益于利用先进的 3nm 工艺,效率提高了 15%。

新闻出处,“Arm 宣布推出 Cortex-X925 和 Cortex-A725”: https://www.phoronix.com/news/Arm-Cortex-X925-Cortex-A725

关键词: Linux, ARM, Cortex-X925, Cortex-A725, Cortex-A520

Ubuntu 24.04 现在支持 Milk-V Mars RISC-V 单片机

Canonical announced this morning an optimized Ubuntu 24.04 image for the Milk-V Mars, a “credit card sized” RISC-V single board computer.

Canonical 本周二早上宣布了针对 Milk-V Mars 优化的 Ubuntu 24.04 镜像,这是一款 “信用卡大小” 的 RISC-V 单板计算机。

Ubuntu 24.04 RISC-V 映像现在可用于支持由 StarFive JH7110 提供支持的 Milk-V Mars 单板计算机。JH7110 提供 4 个高达 1.5GHz 的 RISC-V 64 位内核。Milk-V Mars 有 1GB / 2GB / 4GB / 8GB LPDDR4 版本,有 eMMC 和 microSD 插槽、HDMI 输出、千兆以太网、USB3 和 USB2 端口组合、40 针 GPIO 接头和其他基本功能。4GB 型号的基本售价为 49 美元。

虽然 Ubuntu 24.04 现在可用于此 RISC-V SBC,但众所周知,目前不支持板载 GPU,PCIe 支持还不完整,WiFi 卡和 eGPU 不工作,但 NVMe 驱动器至少应该可以工作,并且 Ubuntu 2.04 的基于 Linux 6.8 的映像不支持 USB 2.0 端口。上游从 Linux 6.10 内核开始有对 Milk-V Mars 的主线支持。

新闻出处,“Ubuntu 24.04 Now Available For The Milk-V Mars RISC-V Single Board Computer”: https://www.phoronix.com/news/Ubuntu-24.04-Milk-V-Mars

关键词: Ubuntu, RISC-V, Milk-V Mars

联系我们

欢迎扫描二维码加微信联系我们:

tinylab wechat



Read Album:

Read Related:

Read Latest: