Διατίθεται λειτουργικό σύστημα σε πραγματικό χρόνο RT-Thread 5.0

Δημοσιεύτηκε η κυκλοφορία του RT-Thread 5.0, ενός λειτουργικού συστήματος σε πραγματικό χρόνο (RTOS) για συσκευές Internet of Things. Το σύστημα έχει αναπτυχθεί από το 2006 από μια κοινότητα Κινέζων προγραμματιστών και αυτή τη στιγμή έχει μεταφερθεί σε σχεδόν 200 πλακέτες, τσιπ και μικροελεγκτές που βασίζονται σε αρχιτεκτονικές x86, ARM, MIPS, C-SKY, Xtensa, ARC και RISC-V. Η μινιμαλιστική κατασκευή 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 (Fullhan).
    • MIPS32 (Loongson, Ingenic).
    • RISC-V RV32E/RV32I[F]/RV64[D] (sifive, Canaan Kenndryt, bouffalo_lab, Nuclei, T-Head).
    • ARC (SYNOPSYS)
    • DSP (TI).
    • C-Sky.
    • x86.
  • Επεκτάσιμη αρθρωτή αρχιτεκτονική που σας επιτρέπει να δημιουργήσετε ένα περιβάλλον κατάλληλο για συστήματα με περιορισμένους πόρους (ελάχιστες απαιτήσεις - 3 KB Flash και 1.2 KB RAM).
  • Υποστήριξη για διάφορες τυπικές διεπαφές για την ανάπτυξη προγραμμάτων, όπως POSIX, CMSIS, C++ API. Το επίπεδο RTduino αναπτύσσεται ξεχωριστά για συμβατότητα με το API του έργου Arduino και τις βιβλιοθήκες.
  • Δυνατότητα επέκτασης μέσω συστήματος πακέτων και εξαρτημάτων plug-in.
  • Υποστήριξη για ανάπτυξη εφαρμογών για επεξεργασία πληροφοριών υψηλής απόδοσης.
  • Ευέλικτο σύστημα διαχείρισης ενέργειας που σας επιτρέπει να θέσετε αυτόματα τη συσκευή σε κατάσταση αναστολής λειτουργίας και να ελέγχετε δυναμικά την τάση και τη συχνότητα ανάλογα με το φορτίο.
  • Υποστήριξη υλικού για κρυπτογράφηση και αποκρυπτογράφηση, παροχή βιβλιοθηκών με διάφορους κρυπτογραφικούς αλγόριθμους.
  • Ενοποιημένη διεπαφή για πρόσβαση σε περιφερειακές συσκευές και πρόσθετο εξοπλισμό.
  • Εικονικό σύστημα αρχείων και διαθεσιμότητα προγραμμάτων οδήγησης για συστήματα αρχείων όπως FAT, UFFS, NFSv3, ROMFS και RAMFS.
  • Στοίβα πρωτοκόλλου για 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. Η αρθρωτή αρχιτεκτονική σάς επιτρέπει να συνδέετε στοιχεία και υπηρεσίες ανάλογα με τις εργασίες σας και τους διαθέσιμους πόρους υλικού.
  • Πακέτα λογισμικού. Τα στοιχεία λογισμικού γενικής χρήσης και οι βιβλιοθήκες λειτουργιών διανέμονται και εγκαθίστανται με τη μορφή πακέτων. Το αποθετήριο περιλαμβάνει επί του παρόντος περισσότερα από 450 πακέτα, τα οποία προσφέρουν τα πάντα, από γραφικές διεπαφές, εφαρμογές πολυμέσων και εφαρμογές δικτύωσης έως συστήματα ελέγχου ρομπότ και επεξεργαστές που βασίζονται σε μηχανική μάθηση. Τα πακέτα παρέχουν επίσης μηχανές για την οργάνωση της εκτέλεσης προγραμμάτων στις γλώσσες Lua, JerryScript, MicroPython, PikaScript και Rust (rtt_rust).

Διατίθεται λειτουργικό σύστημα σε πραγματικό χρόνο RT-Thread 5.0

Μεταξύ των νέων δυνατοτήτων που προστέθηκαν στην έκδοση 5.0, μπορούμε να σημειώσουμε μια σημαντική βελτίωση στην υποστήριξη συστημάτων πολλαπλών πυρήνων και πολλαπλών νημάτων (για παράδειγμα, η στοίβα δικτύου και τα συστήματα αρχείων είναι προσαρμοσμένα για εργασία σε λειτουργία πολλαπλών νημάτων, ο προγραμματιστής χωρίζεται σε επιλογές για συστήματα μονού πυρήνα και SMP). Προστέθηκε η υλοποίηση του TLS (Thread Local Storage). Βελτιωμένη υποστήριξη για τσιπ Cortex-A. Σημαντικά βελτιωμένη υποστήριξη για συστήματα 64 bit (η στοίβα TCP/IP και τα συστήματα αρχείων επαληθεύονται για συστήματα 64 bit). Τα στοιχεία διαχείρισης μνήμης flash είναι ενσωματωμένα. Η εργαλειοθήκη για τη δημιουργία προγραμμάτων οδήγησης έχει επανασχεδιαστεί.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο