Gömülü Linux'ta Gerçek Zamanlı Sistemler: PREEMPT_RT ile Düşük Gecikme
Endüstriyel kontrol sistemlerinde mikrosaniye düzeyinde gecikme kritik önem taşır. PREEMPT_RT yaması, çekirdek yapılandırması ve pratik optimizasyon ipuçlarıyla kapsamlı rehber.
Endüstriyel kontrol sistemlerinde mikrosaniye düzeyinde gecikme kritik önem taşır. PREEMPT_RT yaması, çekirdek yapılandırması ve pratik optimizasyon ipuçlarıyla kapsamlı rehber.
Endüstriyel otomasyon, motor kontrolü ve medikal cihazlar gibi kritik uygulamalarda determinizm zorunludur. PREEMPT_RT yaması bu ihtiyacı karşılar.
| Özellik | Standart Linux | PREEMPT_RT |
|---------|---------------|------------|
| Maksimum gecikme | 1-10ms | 50-200μs |
| Jitter | Yüksek | Çok düşük |
| Determinizm | Zayıf | Güçlü |
bash
wget https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.6.tar.xz
wget https://cdn.kernel.org/pub/linux/kernel/projects/rt/6.6/patch-6.6-rt17.patch.xztar xf linux-6.6.tar.xz
cd linux-6.6
xzcat ../patch-6.6-rt17.patch.xz | patch -p1
make menuconfig
CONFIG_PREEMPT_RT=y olarak ayarlayın
c
#include struct sched_param param = { .sched_priority = 80 };
sched_setscheduler(0, SCHED_FIFO, ¶m);
mlockall(MCL_CURRENT | MCL_FUTURE);
bash
cyclictest --mlockall -t1 -p80 --interval=200 -D 1h
Katmera KB-3568-SBC üzerindeki sonuçlar:
RT Linux ile doğru yapılandırılmış bir Katmera kartı, endüstriyel kontrolör gereksinimlerini karşılamak için ideal bir platformdur.