Nedavno postalo poznato izlazak nove verzije operativnog sistema «RT-Thread 5.0», koji je pozicioniran kao OS u realnom vremenu (RTOS) za IoT uređaje.
Sistem je razvijen od 2006. godine od strane zajednice kineskih programera i trenutno je portovan na skoro 200 ploča, čipova i mikrokontrolera zasnovanih na arhitekturi x86, ARM, MIPS, C-SKY, Xtensa, ARC i RISC-V.
Minimalistička verzija RT-Thread-a (Nano) zahtijeva samo 3 KB Flash-a i 1,2 KB RAM-a za pokretanje. Za IoT uređaje koji nisu ozbiljno ograničeni u resursima, nudi se puna verzija koja podržava upravljanje paketima, konfiguratore, mrežni stog, pakete sa implementacijom grafičkog interfejsa, sistem glasovne kontrole, DBMS, mrežne usluge i mašine za pokretanje skripti.
RT-Thread karakteristike
Operativni sistem se sastoji od tri osnovna sloja:
- Kernel koji izvršava zadatke u realnom vremenu. Kernel pruža generičke osnovne primitive koji pokrivaju područja kao što su zaključavanje i upravljanje sinhronizacijom podataka, raspoređivanje zadataka, upravljanje nitima, upravljanje signalima, red poruka, upravljanje tajmerom i upravljanje memorijom. Karakteristike specifične za hardver implementirane su na nivou libcpu-a i BSP-a, koje uključuju drajvere i kod neophodan za podršku CPU-u.
- Komponente i usluge koje rade na vrhu kernela i nude apstrakcije kao što su virtuelni sistem datoteka, sistem za obradu izuzetaka, skladište ključeva/vrednosti, interfejs komandne linije FinSH, mrežni stog (LwIP) i mrežni okviri, biblioteke za podršku uređaja, zvučni podsistem, bežični stek, komponente kompatibilne sa Wi-Fi, LoRa, Bluetooth, 2G/4G. Modularna arhitektura vam omogućava da povežete komponente i usluge na osnovu vaših zadataka i dostupnih hardverskih resursa.
- Programski paketi. Softverske komponente opšte namjene i biblioteke funkcija distribuiraju se i instaliraju u obliku paketa.
Repozitorijum trenutno uključuje više od 450 paketa u rasponu od GUI-ja, multimedijalnih aplikacija i mrežnih aplikacija do sistema kontrole robota i procesora za mašinsko učenje.
RT-Thread ima proširivu modularnu arhitekturu Que omogućava vam da kreirate odgovarajuće okruženje za sisteme sa ograničenim resursima (minimalni zahtjevi: 3 KB Flash i 1,2 KB RAM-a), pored toga što ima kompatibilnost sa nekoliko standardnih interfejsa za razvoj programa, kao što su POSIX, CMSIS, C++ API. Odvojeno, RTduino sloj se razvija da bude kompatibilan sa Arduino projektnim API-jem i bibliotekama.
Još jedna karakteristika koja se ističe je fleksibilan sistem upravljanja energijom koji automatski stavlja uređaj u stanje mirovanja i dinamički upravlja naponom i frekvencijom ovisno o opterećenju.
Takođe ima hardverska podrška za šifriranje i dešifriranje, pružajući bibliotekama različite kriptografske algoritme.
Osim toga, ima i sistem za slanje i daljinsku instalaciju ažuriranja koji podržava enkripciju i verifikaciju pomoću digitalnog potpisa, nastavak prekinute instalacije, oporavak od kvara, poništavanje promjena itd.
Kao i sistem dinamički učitavih modula kernela koji vam omogućava da kreirate i razvijate komponente kernela odvojeno i da ih dinamički učitavate kada je potrebno.
Od ostalih karakteristika koji se ističu:
- Podrška za različite pakete trećih strana kao što su Yaffs2, SQLite, FreeModbus, Canopen, itd.
- Podrška za uobičajene kompajlere i razvojne alate kao što su GCC, MDK Keil i IAR.
- Razvoj integrisanog razvojnog okruženja RT-Thread Studio IDE, koji omogućava izgradnju i otklanjanje grešaka u aplikacijama, njihovo postavljanje na nadzorne table i upravljanje konfiguracijama. RT-Thread razvojni dodaci su takođe dostupni za Eclipse i VS Code.
- Prisustvo sučelja Env konzole, koji pojednostavljuje kreiranje projekata i konfiguraciju okruženja.
- Mogućnost direktnog kompajliranja BSP paketa
- Proširivo kroz sistem paketa i dodataka.
- Jedinstveni interfejs za pristup perifernim uređajima i dodatnoj opremi.
- Podrška razvoju aplikacije za obradu informacija visokih performansi.
- Virtuelni FS i dostupnost drajvera za FS
O RT-Thread-u 5.0
Što se tiče novih funkcija dodatih u verziji 5.0, može se primijetiti a Značajno poboljšanje u podršci za višejezgrene i višenitne sisteme (Na primjer, mrežni stog i sistem datoteka prilagođeni su za rad u višenitnom načinu rada.
Još jedna novost je Planer je podijeljen na opcije za single-core i SMP sisteme, kao i dodata implementacija TLS-a (Thread Local Storage).
Osim toga, ističe se i poboljšana podrška za Cortex-A čipove, značajno poboljšana kompatibilnost za 64-bitne sisteme (provjereni sistemi datoteka i TCP/IP stekovi za 64-bitne sisteme) i integrirane komponente upravljanja Flash memorijom, kao i da su alati za kreiranje kontrolera redizajnirani.
Za one koji su zainteresovani za ovaj sistem, trebalo bi da znaju da je kod napisan u C jeziku i da se distribuira pod licencom Apache 2.0.
Više detalja možete provjeriti na sljedeći link.