Blog'a Geri Dön

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.

Yazılım Geliştirme

Gömülü Linux'ta Gerçek Zamanlı Sistemler: PREEMPT_RT ile Düşük Gecikme

Endüstriyel otomasyon, motor kontrolü ve medikal cihazlar gibi kritik uygulamalarda determinizm zorunludur. PREEMPT_RT yaması bu ihtiyacı karşılar.

Standart Linux vs RT Linux

| Özellik | Standart Linux | PREEMPT_RT |
|---------|---------------|------------|
| Maksimum gecikme | 1-10ms | 50-200μs |
| Jitter | Yüksek | Çok düşük |
| Determinizm | Zayıf | Güçlü |

PREEMPT_RT Kurulumu

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.xz

tar 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


RT Görev Önceliği

c
#include

struct sched_param param = { .sched_priority = 80 };
sched_setscheduler(0, SCHED_FIFO, ¶m);
mlockall(MCL_CURRENT | MCL_FUTURE);

Gecikme Testi

bash
cyclictest --mlockall -t1 -p80 --interval=200 -D 1h

Katmera KB-3568-SBC üzerindeki sonuçlar:

  • Ortalama gecikme: 18μs

  • Maksimum gecikme: 87μs

  • Standart sapma: 4μs
  • RT Linux ile doğru yapılandırılmış bir Katmera kartı, endüstriyel kontrolör gereksinimlerini karşılamak için ideal bir platformdur.

    Etiketler

    LinuxPREEMPT_RTGerçek ZamanlıÇekirdekEndüstriyel
    Hemen Al
    Gömülü Linux'ta Gerçek Zamanlı Sistemler: PREEMPT_RT Rehberi | Katmera Blog