RT-Thread 5.0 бодит цагийн үйлдлийн системийг ашиглах боломжтой

IoT төхөөрөмжүүдийн бодит цагийн үйлдлийн систем (RTOS) RT-Thread 5.0 худалдаанд гарлаа. Уг системийг 2006 оноос хойш Хятадын хөгжүүлэгчдийн нийгэмлэг хөгжүүлж байгаа бөгөөд одоогоор x200, ARM, MIPS, C-SKY, Xtensa, ARC, RISC-V архитектурт суурилсан 86 гаруй самбар, чип, микроконтроллерт шилжүүлсэн байна. RT-Thread (Nano)-ийн минималист загвар нь ажиллахын тулд ердөө 3 KB Flash болон 1.2 KB RAM шаарддаг. Нөөцөөр хязгаарлагдахгүй IoT төхөөрөмжүүдийн хувьд багцын удирдлага, тохируулагч, сүлжээний стек, график интерфэйс бүхий багцууд, дуут удирдлагын систем, DBMS, сүлжээний үйлчилгээ, гүйцэтгэх хөдөлгүүрүүдийг дэмждэг бүрэн хэмжээний хувилбарыг санал болгож байна. скриптүүд. Код нь C хэл дээр бичигдсэн бөгөөд Apache 2.0 лицензийн дагуу түгээгддэг.

Платформын онцлогууд:

  • Архитектурын дэмжлэг:
    • ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 (ST, Winner Micro, MindMotion, Realtek, Infineon, GigaDevic, Nordic, Nuvoton, NXP зэрэг үйлдвэрлэгчдийн микроконтроллерууд дэмжигддэг).
    • ARM Cortex-R4.
    • ARM Cortex-A8/A9 (NXP).
    • ARM7 (Samsung).
    • ARM9 (Allwinner, Xilinx, GOKE).
    • ARM11 (Фулхан).
    • MIPS32 (Loongson, Ingenic).
    • RISC-V RV32E/RV32I[F]/RV64[D] (sifive, Canaan Kendryt, bouffalo_lab, Nuclei, T-Head).
    • ARC (SNOPSYS)
    • DSP (TI).
    • c-тэнгэр.
    • x86.
  • Хязгаарлагдмал нөөцтэй системд тохирох орчинг бүрдүүлэх боломжийг олгодог өргөтгөх боломжтой модульчлагдсан архитектур (хамгийн бага шаардлага - 3 KB Flash ба 1.2 KB RAM).
  • POSIX, CMSIS, C++ API зэрэг програм боловсруулахад зориулсан төрөл бүрийн стандарт интерфэйсүүдийн дэмжлэг. Тус тусад нь RTduino давхаргыг API болон Arduino төслийн номын сангуудтай нийцүүлэх зорилгоор боловсруулж байна.
  • Багц болон залгаасуудын системээр дамжуулан өргөтгөх боломжтой.
  • Өндөр хүчин чадалтай мэдээлэл боловсруулах програмыг хөгжүүлэхэд дэмжлэг үзүүлэх.
  • Төхөөрөмжийг унталтын горимд автоматаар оруулж, ачаалалаас хамааран хүчдэл, давтамжийг динамикаар удирддаг уян хатан тэжээлийн удирдлагын систем.
  • Шифрлэлт, шифрийг тайлах техник хангамжийн дэмжлэг, номын сангуудыг янз бүрийн криптографийн алгоритмаар хангах.
  • Захын төхөөрөмж болон нэмэлт төхөөрөмжид нэвтрэх нэгдсэн интерфейс.
  • Виртуал FS ба FAT, UFFS, NFSv3, ROMFS, RAMFS зэрэг FS-д зориулсан драйверуудын бэлэн байдал.
  • TCP/IP, Ethernet, Wi-Fi, Bluetooth, NB-IoT, 2G/3G/4G, HTTP, MQTT, LwM2M гэх мэт протоколын стек.
  • Тоон гарын үсгээр шифрлэх, баталгаажуулах, тасалдсан суулгалтыг сэргээх, алдаа дутагдлыг сэргээх, өөрчлөлтийг буцаах гэх мэт шинэчлэлтүүдийг алсаас хүргэх, суулгах систем.
  • Цөмийн бүрэлдэхүүн хэсгүүдийг тусад нь бүтээх, хөгжүүлэх, шаардлагатай үед динамикаар ачаалах боломжийг олгодог динамикаар ачаалагдах цөмийн модулиудын систем.
  • Yaffs2, SQLite, FreeModbus, Canopen гэх мэт гуравдагч талын төрөл бүрийн багцуудыг дэмжих.
  • Тодорхой техник хангамжийн платформыг дэмжих бүрэлдэхүүн хэсгүүдтэй BSP-багцыг (ТУЗ-ийн дэмжлэгийн багц) шууд хөрвүүлж, самбарт байршуулах чадвар.
  • Бодит самбар ашиглахгүйгээр програм хөгжүүлэх боломжийг олгодог эмулятор (BSP qemu-vexpress-a9) байгаа нь.
  • GCC, MDK Keil, IAR зэрэг нийтлэг хөрвүүлэгч болон хөгжүүлэлтийн хэрэгслүүдийг дэмжих.
  • Аппликешн үүсгэх, дибаг хийх, тэдгээрийг самбарт байршуулах, тохиргоог удирдах боломжийг олгодог RT-Thread Studio IDE-ийн нэгдсэн хөгжүүлэлтийн орчинг хөгжүүлэх. RT-Thread хөгжүүлэлтийн залгаасуудыг Eclipse болон VS Code-д ашиглах боломжтой.
    RT-Thread 5.0 бодит цагийн үйлдлийн системийг ашиглах боломжтой
  • Төсөл үүсгэх, орчныг тохируулах ажлыг хялбаршуулдаг Env консолын интерфейс байгаа эсэх.
    RT-Thread 5.0 бодит цагийн үйлдлийн системийг ашиглах боломжтой

Үйлдлийн систем нь гурван үндсэн давхаргаас бүрдэнэ.

  • Бодит цаг хугацаанд даалгавруудыг гүйцэтгэдэг цөм. Цөм нь түгжээ болон өгөгдлийн синхрончлолын удирдлага, даалгаврын хуваарь, урсгалын удирдлага, дохионы зохицуулалт, мессежийн дараалал, таймерын удирдлага, санах ойн менежмент зэрэг салбаруудыг хамарсан ерөнхий үндсэн командуудыг өгдөг. Тоног төхөөрөмжийн онцлог шинж чанаруудыг libcpu болон BSP түвшинд хэрэгжүүлдэг бөгөөд үүнд CPU-г дэмжихэд шаардлагатай драйверууд болон кодууд багтдаг.
  • Цөмийн дээд талд ажилладаг, виртуал файлын систем, онцгой тохиолдлуудыг зохицуулах систем, түлхүүр/утга хадгалах сан, FinSH командын мөрийн интерфейс, сүлжээний стек (LwIP) болон сүлжээний хүрээ, төхөөрөмжийг дэмжих номын сан, дууны дэд систем, утасгүй стек, Wi-Fi, LoRa, Bluetooth, 2G/4G-г дэмжих бүрэлдэхүүн хэсгүүд. Модульчлагдсан архитектур нь таны даалгавар болон техник хангамжийн нөөцөөс хамааран бүрэлдэхүүн хэсгүүд болон үйлчилгээг холбох боломжийг олгодог.
  • Програм хангамжийн багцууд. Ерөнхий зориулалтын програм хангамжийн бүрэлдэхүүн хэсгүүд болон функцын сангуудыг багц хэлбэрээр тарааж суулгадаг. Одоогийн байдлаар уг сан нь GUI, мультимедиа болон сүлжээний программуудаас эхлээд роботын удирдлагын систем, машин сургалтын процессор хүртэлх 450 гаруй багцыг багтаасан байна. Багцууд нь Lua, JerryScript, MicroPython, PikaScript болон Rust (rtt_rust) дээр программуудыг гүйцэтгэх ажлыг зохион байгуулах хөдөлгүүрүүдийг өгдөг.

RT-Thread 5.0 бодит цагийн үйлдлийн системийг ашиглах боломжтой

5.0 хувилбарт нэмэгдсэн шинэ боломжуудын дотроос олон цөмт болон олон урсгалтай системийг дэмжихэд мэдэгдэхүйц сайжруулалтыг тэмдэглэж болно (жишээлбэл, сүлжээний стек болон файлын системүүд нь олон урсгалтай горимд ажиллахад тохирсон, хуваарь нь хуваагддаг. нэг цөмт систем болон SMP-ийн сонголтууд руу). TLS (Thread Local Storage) хэрэгжүүлэлт нэмэгдсэн. Cortex-A чипүүдэд зориулсан сайжруулсан дэмжлэг. 64 битийн системүүдийн дэмжлэгийг мэдэгдэхүйц сайжруулсан (TCP/IP стек ба файлын систем нь 64 битийн системд баталгаажсан). Flash санах ойн удирдлагын нэгдсэн бүрэлдэхүүн хэсгүүд. Жолооч үүсгэх хэрэгслүүдийг дахин зохион бүтээсэн.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх