The future of 32-bit support in the kernel
9 months ago
- #Linux
- #kernel
- #32-bit
- 32位系统在新产品中已被视为过时,主要保留对现有硬件和软件的支持。
- 大多数非嵌入式架构已过渡到64位或不再使用。
- 嵌入式Linux系统主要采用Arm处理器,64位(armv8)在设备树文件中现已超过32位(armv7)。
- 对armv7之前CPU的支持有限,许多虽已停产但仍保留内核支持。
- 非Arm的32位架构(如arc、microblaze)正被RISC-V在新产品中取代。
- 无内存管理单元(nommu)处理器已停止生产,仅支持现有系统。
- 内存受限系统建议在64位内核上运行32位用户空间。
- 维护32位支持复杂度高,尤其是高内存支持(当前上限16GB,即将降至4GB)。
- 诸如'densemem'方案和分离内核/用户空间地址等提案旨在简化32位支持。
- 2038年问题在内核层已基本解决,但部分应用和语言仍存在隐患。
- 大端序支持因IBM对大型机和PowerPC系统的持续维护而保留,但已过时。
- 未来将逐步移除高内存支持(~2027年)、nommu支持(~2028年)及各类过时CPU支持。