Linux 6.12:lla voisi olla "PREMPT_RT"-tuki reaaliajassa

Preempt-RT on muunnos, jonka avulla korkeamman prioriteetin tehtävät voivat keskeyttää tehtäviä, joilla on alhaisempi prioriteetti.

El käsite reaaliaikaisesta järjestelmästä Sitä ei ole ajateltu viime vuosina Linuxissa tämän idean jälkeen aloitti lähes 20 vuotta sitten, tarkalleen vuonna 2005 osana "Realtime-Preempt" ("-rt") -projektia, jossa kehitettiin PREEMPT_RT-tila Linux-ytimelle.

Niille, jotka eivät tiedä PREEMPT_RT, heidän pitäisi tietää se se on laastari Linux-ytimelleja muuntaa käyttöjärjestelmän reaaliaikaiseksi (reaaliaikainen). PREEMPT_RT:n päätavoite on vähentää latenssia ja varmistaa tehtävien suorittamisen ennustettavuus, mikä on ratkaisevan tärkeää nopeita vastauksia vaativissa sovelluksissa.

Yksinkertaisemmin sanottuna voimme sanoa, että PREEMPT_RT mahdollistaa lähes kaikkien ytimen osien keskeyttämisen, mikä vähentää latenssia. Toisin kuin tavallinen ydin, kaikkia osioita ei voida keskeyttää, mikä voi aiheuttaa viiveitä vasteajoissa.

Vuodesta 2015 lähtien projekti on ollut Linux Foundationin valvonnassa ja tähän asti PREEMPT_RT-tilan toteutusta on tarjottu ulkoisten korjaustiedostojen muodossa. Näihin korjauksiin perustuvat jakelut, kuten RHEL, SUSE ja Ubuntu ovat luoneet reaaliaikaisia ​​versioita tuotteistaan, erittäin kysytty sellaisilla aloilla kuin rahoitusjärjestelmät, äänen ja videon prosessointilaitteet, ilmailujärjestelmät, lääketiede, robotiikka, tietoliikenne ja teolliset sovellukset, joissa on olennaista taata ennustettavat vasteajat tapahtumille.

En 2019 promootioprosessi alkoi PREEMPT_RT-projektissa kehitetyistä korjaustiedostoista Linuxin pääytimeen. Ytimen versiossa 5.3 PREEMPT_RT-vaihtoehto sisällytettiin asetustiedostoon reaaliaikaisen tilan käyttöön ottamiseksi.

PREEMPT_RT:lle vaadittavat printk-bitit sijaitsevat linux-nextissä. Tämä oli viimeinen tunnettu este PREEMPT_RT:lle. RT-jonossa on myös "atomikonsoli" UART 8250:lle, joka ei ole vielä mukana linux-seuraava. Tämä tarkoittaa "vanhaa konsolia" kuten tulostamatta jättämistä atomikonteksti hätätilanteissa. 8250 UART -ohjain on ainoa joka tarjoaa "atomikonsolin" tuen nykyään.

Kaikki Tämä työ kantaa hedelmää., koska tarvittavien muutosten täydellinen integrointi on kestänyt viisi vuotta ja on valmistumassa, koska versiossa 6.12 oletetaan, että ydin voidaan kääntää PREEMPT_RT-tilassa ilman lisäkorjausten asentamista.

Mainitaan, että viimeinen este joka esti PREEMPT_RT:tä ottamasta käyttöön, oli sen puute tuki ei-estoiselle atomilähdölle printk-toiminnolla. Tämä toiminto on jo käytössä otettu käyttöön linux-next-haarassa. Lisäksi 8250 UART -ohjaimelle on odottamassa ei-estoinen atomikonsoli, jonka puuttuminen estää tällä hetkellä hätäviestien lähettämisen konsoliin atomikonteksteissa suoritetusta koodista.

Kun printk-bitit on yhdistetty, PREEMPT_RT voidaan ottaa käyttöön X86:ssa, ARM64:ssä ja Risc-V. Nämä kolme yhdistettyä arkkitehtuuria vaativat muutoksia vuosien varrella.
vuotta, jättäen minut asemaan, jossa minulla ei ole olennaisia ​​muutoksia
jono, joka vaikuttaisi heihin. ARMilla ja POWERPC:llä on joitain tärkeitä korjaustiedostoja jäljellä...

Linux-ytimen kehittäjät ovat ilmoittaneet uusimpien tarvittavien muutosten integroimisesta linux-nex-haaraant, jota käytetään version 6.12 kääntämiseen. Nämä muutokset mahdollistavat ytimen kääntämisen PREEMPT_RT-vaihtoehdolla, joka tuo reaaliaikaiset ominaisuudet.

Kun nämä muutokset on hyväksytty päähaarassa PREEMPT_RT-tilassa Se on saatavana X86-, ARM64- ja RISC-V-arkkitehtuureille. Tuki ARM- ja POWERPC-arkkitehtuureille lisätään myöhemmin, koska tarvittavia korjauksia ei ole vielä täysin integroitu.

On syytä mainita, että ehdotetut muutokset eivät ole vielä lopullisia ja on mahdollista, että jos PREEMPT_RT ei saavu 6.12-haaraan, se integroidaan ensi vuoteen asti versioon 6.13.

lopuksi, jos olet kiinnostunut tietämään siitä lisää, voit tarkistaa yksityiskohdat seuraava linkki.