英特尔 x86 用户中断的初始 Linux 内核代码终于在 Linux 内核邮件列表上的 "RFC" 标志下发布。
用户中断(Uintr)是一种硬件技术,可以直接向用户空间提供中断。如今,几乎所有跨越权限边界的通信都是通过内核进行的,包括信号、管道、远程过程调用和基于硬件中断的通知。而用户中断为这些常见操作的更有效(低延迟和低 CPU 占用)的版本提供了基础,从而避免了通过内核的转换。
去年,英特尔通过新的 UIRET 指令披露了用户中断,x86 用户中断功能在 Sapphire Rapids 处理器中首次亮相。而此次提交的 RFC 补丁主要目的如下:
- 向社区介绍这项即将到来的技术,包括硬件架构总结以及软件架构和内核设计选择
- 讨论潜在的用例,研究可以利用这项技术的实际用途和库
- 获取关于软件架构的早期反馈,从用户 IPI 开始,在未来扩展到内核到用户的中断通知和外部中断
- 开放式讨论一些主要架构,比如 Uintr 是否应该中断所有阻塞的系统调用、用户中断目标表(UITT)是否应该在多线程的线程之间共享
据悉,Linux 内核对用户中断的处理将在下周的内核峰会上进行更详细的讨论,有兴趣了解有关 x86 用户中断技术细节的用户可以查看此 RFC 补丁集。
暂无回复。