preempt_rt补丁的技术细节,可以在linuxfoundation的网站Technical details of the real-time preemption上了解到。根据网站上的介绍,大致分为下面这些:
- High resolution timers
- Threaded interrupt handler
- RCU
- rt_mutex
- Sleeping spinlocks
- local_lock
主线 Linux 内核在 v6.12 版本完成了 PREEMPT_RT 核心代码的主线合并,实现原生实时能力。后续迭代中,preempt-rt 相关补丁以增量优化为主,内容大多聚焦驱动层适配与性能微调,整体实时核心框架已稳定固化。从下面的patch-6.18.13-rt4.patch修改内容也能够直观看出
modified: arch/arm/Kconfigmodified: arch/arm/mm/fault.cmodified: arch/powerpc/Kconfigmodified: arch/powerpc/include/asm/stackprotector.hmodified: arch/powerpc/kvm/Kconfigmodified: arch/powerpc/platforms/pseries/Kconfigmodified: arch/powerpc/platforms/pseries/iommu.cmodified: drivers/gpu/drm/i915/Kconfigmodified: drivers/gpu/drm/i915/display/intel_crtc.cmodified: drivers/gpu/drm/i915/display/intel_cursor.cmodified: drivers/gpu/drm/i915/display/intel_display_trace.hmodified: drivers/gpu/drm/i915/display/intel_vblank.cmodified: drivers/gpu/drm/i915/gt/intel_engine_cs.cmodified: drivers/gpu/drm/i915/gt/intel_execlists_submission.cmodified: drivers/gpu/drm/i915/gt/uc/intel_guc.hmodified: drivers/gpu/drm/i915/i915_request.cmodified: drivers/gpu/drm/i915/i915_trace.hmodified: drivers/gpu/drm/i915/intel_uncore_trace.hmodified: drivers/tty/serial/8250/8250_core.cmodified: drivers/tty/serial/8250/8250_port.cmodified: include/linux/serial_8250.hmodified: kernel/ksysfs.cnew file: localversion-rt
但是为了更方便的阅读preempt_rt的代码实现,之后出现的代码都来自linux-6.8.2
