RT-Thread je otvoreni kod, neutralan operativni sustav u stvarnom vremenu (RTOS) temeljen na zajednici.
Nedavno je postalo poznato izlazak nove verzije operativnog sustava «RT-Thread 5.0», koji je pozicioniran kao real-time OS (RTOS) za IoT uređaje.
Sustav od 2006. razvija zajednica kineskih programera i trenutno je prenesen na gotovo 200 ploča, čipova i mikrokontrolera temeljenih na x86, ARM, MIPS, C-SKY, Xtensa, ARC i RISC-V arhitekturama.
Minimalistička verzija RT-Thread (Nano) zahtijeva samo 3 KB Flasha i 1,2 KB RAM-a za rad. Za IoT uređaje koji nisu jako ograničeni u resursima, nudi se puna verzija koja podržava upravljanje paketima, konfiguratore, mrežni stog, pakete s implementacijom grafičkog sučelja, sustav glasovne kontrole, DBMS, mrežne usluge i motore za pokretanje skripti.
Značajke RT-Thread
Operativni sustav se sastoji od tri osnovna sloja:
- Kernel koji izvršava zadatke u stvarnom vremenu. Kernel pruža generičke osnovne primitive koje pokrivaju područja kao što su upravljanje zaključavanjem i sinkronizacijom podataka, raspoređivanje zadataka, upravljanje nitima, upravljanje signalima, čekanje poruka, upravljanje mjeračem vremena i upravljanje memorijom. Specifične značajke hardvera implementirane su na razini libcpu i BSP, što uključuje upravljačke programe i kod potreban za podršku CPU-u.
- Komponente i usluge koje se pokreću na vrhu kernela i nude apstrakcije kao što su virtualni datotečni sustav, sustav rukovanja iznimkama, pohrana ključa/vrijednosti, sučelje FinSH naredbenog retka, mrežni stog (LwIP) i mrežni okviri, biblioteke za podršku uređaja, zvučni podsustav, bežični stog, komponente kompatibilne s Wi-Fi-jem, LoRa, Bluetooth, 2G/4G. Modularna arhitektura omogućuje vam povezivanje komponenti i usluga na temelju vaših zadataka i dostupnih hardverskih resursa.
- Programski paketi. Softverske komponente opće namjene i knjižnice funkcija distribuiraju se i instaliraju u obliku paketa.
Repozitorij trenutno uključuje više od 450 paketa u rasponu od GUI-ja, multimedijskih aplikacija i mrežnih aplikacija do sustava upravljanja robotima i procesora za strojno učenje.
RT-nit ima proširivu modularnu arhitekturu ovo omogućuje stvaranje prikladnog okruženja za sustave s ograničenim resursima (minimalni zahtjevi: 3 KB Flasha i 1,2 KB RAM-a), osim što ima i kompatibilnost s nekoliko standardnih sučelja za razvoj programa, kao što su POSIX, CMSIS, C++ API. Zasebno, RTduino sloj se razvija kako bi bio kompatibilan s Arduino projektnim API-jem i bibliotekama.
Još jedna značajka koja se ističe je fleksibilan sustav upravljanja energijom koji automatski stavlja uređaj u stanje mirovanja i dinamički upravlja naponom i frekvencijom ovisno o opterećenju.
Također ima hardverska podrška za šifriranje i dešifriranje, pružajući knjižnicama razne kriptografske algoritme.
Osim toga, posjeduje i sustav za slanje i udaljenu instalaciju nadogradnji koji podržava enkripciju i provjeru digitalnim potpisom, nastavak prekinute instalacije, oporavak od kvara, poništenje promjena itd.
Kao i sustav modula kernela koji se mogu dinamički učitavati koji vam omogućuje 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 prevoditelje i razvojne alate kao što su GCC, MDK Keil i IAR.
- Razvoj integriranog razvojnog okruženja RT-Thread Studio IDE, koji omogućuje izgradnju i uklanjanje pogrešaka u aplikacijama, njihovo učitavanje na nadzorne ploče i upravljanje konfiguracijama. RT-Thread razvojni dodaci također su dostupni za Eclipse i VS Code.
- Prisutnost sučelja Env konzole, što pojednostavljuje stvaranje projekata i konfiguraciju okruženja.
- Mogućnost izravnog sastavljanja BSP paketa
- Proširivo kroz sustav paketa i dodataka.
- Jedinstveno sučelje za pristup perifernim uređajima i dodatnoj opremi.
- Podrška za razvoj aplikacije za obradu informacija visokih performansi.
- Virtualni FS i dostupnost upravljačkih programa za FS
O RT-Thread 5.0
Što se tiče novih funkcija dodanih u verziji 5.0, može se primijetiti a Značajno poboljšanje podrške za višejezgrene i višenitne sustave (Na primjer, mrežni stog i datotečni sustavi 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 sustave, kao i dodana implementacija TLS-a (Thread Local Storage).
Osim toga, također ističe poboljšanu podršku za Cortex-A čipove, značajno poboljšanu kompatibilnost za 64-bitne sustave (provjereni datotečni sustavi i TCP/IP hrpe za 64-bitne sustave) i integrirane komponente za upravljanje Flash memorijom, kao i da su alati za izradu kontrolera redizajnirani.
Za one koji su zainteresirani za ovaj sustav, trebaju znati da je kod napisan u C jeziku i distribuiran pod licencom Apache 2.0.
Više detalja možete provjeriti na sljedeći link.