RT-థ్రెడ్ 5.0, IoT పరికరాల కోసం రియల్ టైమ్ ఆపరేటింగ్ సిస్టమ్ (RTOS) విడుదల చేయబడింది. ఈ సిస్టమ్ 2006 నుండి చైనీస్ డెవలపర్ల సంఘం ద్వారా అభివృద్ధి చేయబడింది మరియు ప్రస్తుతం x200, ARM, MIPS, C-SKY, Xtensa, ARC మరియు RISC-V ఆర్కిటెక్చర్ల ఆధారంగా దాదాపు 86 బోర్డులు, చిప్స్ మరియు మైక్రోకంట్రోలర్లకు పోర్ట్ చేయబడింది. RT-థ్రెడ్ (నానో) యొక్క మినిమలిస్ట్ బిల్డ్ను అమలు చేయడానికి 3 KB ఫ్లాష్ మరియు 1.2 KB RAM మాత్రమే అవసరం. IoT-పరికరాల కోసం బలమైన వనరులు పరిమితం కానందున, ప్యాకేజీ నిర్వహణ, కాన్ఫిగరేటర్లు, నెట్వర్క్ స్టాక్, గ్రాఫికల్ ఇంటర్ఫేస్ అమలుతో కూడిన ప్యాకేజీలు, వాయిస్ కంట్రోల్ సిస్టమ్, DBMS, నెట్వర్క్ సేవలు మరియు అమలు కోసం ఇంజిన్లకు మద్దతు ఇచ్చే పూర్తి-ఫీచర్ వెర్షన్ అందించబడుతుంది. స్క్రిప్ట్లు. కోడ్ C లో వ్రాయబడింది మరియు Apache 2.0 లైసెన్స్ క్రింద పంపిణీ చేయబడింది.
ప్లాట్ఫారమ్ ఫీచర్లు:
- ఆర్కిటెక్చర్ మద్దతు:
- ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 (ST, విన్నర్ మైక్రో, మైండ్మోషన్, Realtek, Infineon, GigaDevic, Nordic, Nuvoton, NXP వంటి తయారీదారుల నుండి మైక్రోకంట్రోలర్లకు మద్దతు ఉంది).
- ARM కార్టెక్స్-R4.
- ARM కార్టెక్స్-A8/A9 (NXP).
- ARM7 (Samsung).
- ARM9 (Allwinner, Xilinx, GOKE).
- ARM11 (ఫుల్హాన్).
- MIPS32 (లూంగ్సన్, ఇంజెనిక్).
- RISC-V RV32E/RV32I[F]/RV64[D] (sifive, Canan Kendryt, bouffalo_lab, Nuclei, T-Head).
- ARC (సినోప్సిస్)
- DSP (TI).
- c-ఆకాశం.
- X86.
- పరిమిత వనరులతో (కనీస అవసరాలు - 3 KB ఫ్లాష్ మరియు 1.2 KB RAM) సిస్టమ్లకు అనువైన వాతావరణాన్ని సృష్టించడానికి మిమ్మల్ని అనుమతించే ఎక్స్టెన్సిబుల్ మాడ్యులర్ ఆర్కిటెక్చర్.
- POSIX, CMSIS, C++ API వంటి ప్రోగ్రామ్ అభివృద్ధి కోసం వివిధ ప్రామాణిక ఇంటర్ఫేస్లకు మద్దతు. విడిగా, Arduino ప్రాజెక్ట్ యొక్క API మరియు లైబ్రరీలతో అనుకూలత కోసం RTduino లేయర్ అభివృద్ధి చేయబడుతోంది.
- ప్యాకేజీలు మరియు ప్లగ్-ఇన్ల వ్యవస్థ ద్వారా విస్తరించదగినది.
- అధిక పనితీరు సమాచార ప్రాసెసింగ్ కోసం అప్లికేషన్ అభివృద్ధికి మద్దతు.
- పరికరాన్ని స్వయంచాలకంగా స్లీప్ మోడ్లో ఉంచే సౌకర్యవంతమైన పవర్ మేనేజ్మెంట్ సిస్టమ్ మరియు లోడ్పై ఆధారపడి వోల్టేజ్ మరియు ఫ్రీక్వెన్సీని డైనమిక్గా నిర్వహిస్తుంది.
- ఎన్క్రిప్షన్ మరియు డిక్రిప్షన్ కోసం హార్డ్వేర్ మద్దతు, వివిధ క్రిప్టోగ్రాఫిక్ అల్గారిథమ్లతో లైబ్రరీలను అందిస్తుంది.
- పరిధీయ పరికరాలు మరియు అదనపు పరికరాలకు ప్రాప్యత కోసం ఏకీకృత ఇంటర్ఫేస్.
- FAT, UFFS, NFSv3, ROMFS మరియు RAMFS వంటి FS కోసం వర్చువల్ FS మరియు డ్రైవర్ల లభ్యత.
- TCP/IP, ఈథర్నెట్, Wi-Fi, బ్లూటూత్, NB-IoT, 2G/3G/4G, HTTP, MQTT, LwM2M మొదలైన వాటి కోసం ప్రోటోకాల్ స్టాక్.
- డిజిటల్ సంతకం ద్వారా ఎన్క్రిప్షన్ మరియు ధృవీకరణకు మద్దతు ఇచ్చే రిమోట్ డెలివరీ మరియు అప్డేట్ల ఇన్స్టాలేషన్ కోసం సిస్టమ్, అంతరాయం కలిగించిన ఇన్స్టాలేషన్ను పునఃప్రారంభించడం, వైఫల్యం నుండి కోలుకోవడం, మార్పులను వెనక్కి తీసుకోవడం మొదలైనవి.
- డైనమిక్గా లోడ్ చేయగల కెర్నల్ మాడ్యూల్స్ సిస్టమ్, ఇది కెర్నల్ భాగాలను విడిగా నిర్మించడానికి మరియు అభివృద్ధి చేయడానికి మరియు అవసరమైనప్పుడు వాటిని డైనమిక్గా లోడ్ చేయడానికి మిమ్మల్ని అనుమతిస్తుంది.
- Yaffs2, SQLite, FreeModbus, Canopen మొదలైన వివిధ మూడవ పక్ష ప్యాకేజీలకు మద్దతు.
- ఒక నిర్దిష్ట హార్డ్వేర్ ప్లాట్ఫారమ్కు మద్దతు ఇచ్చే భాగాలతో నేరుగా BSP-ప్యాకేజీని (బోర్డ్ సపోర్ట్ ప్యాకేజీ) కంపైల్ చేయగల సామర్థ్యం మరియు దానిని బోర్డుకి అప్లోడ్ చేయడం.
- ఎమ్యులేటర్ ఉనికి (BSP qemu-vexpress-a9), ఇది నిజమైన బోర్డులను ఉపయోగించకుండా అప్లికేషన్లను అభివృద్ధి చేయడానికి మిమ్మల్ని అనుమతిస్తుంది.
- GCC, MDK Keil మరియు IAR వంటి సాధారణ కంపైలర్లు మరియు అభివృద్ధి సాధనాలకు మద్దతు.
- మా స్వంత ఇంటిగ్రేటెడ్ డెవలప్మెంట్ ఎన్విరాన్మెంట్ RT-థ్రెడ్ స్టూడియో IDE అభివృద్ధి, ఇది అప్లికేషన్లను సృష్టించడానికి మరియు డీబగ్ చేయడానికి, వాటిని బోర్డులకు అప్లోడ్ చేయడానికి మరియు సెట్టింగ్లను నిర్వహించడానికి మిమ్మల్ని అనుమతిస్తుంది. ఎక్లిప్స్ మరియు VS కోడ్ కోసం RT-థ్రెడ్ డెవలప్మెంట్ ప్లగిన్లు కూడా అందుబాటులో ఉన్నాయి.
- ఎన్వి కన్సోల్ ఇంటర్ఫేస్ ఉనికి, ఇది ప్రాజెక్ట్ల సృష్టిని సులభతరం చేస్తుంది మరియు పర్యావరణాన్ని ఏర్పాటు చేస్తుంది.
ఆపరేటింగ్ సిస్టమ్ మూడు ప్రాథమిక పొరలను కలిగి ఉంటుంది:
- నిజ సమయంలో విధులను నిర్వహించే కెర్నల్. లాక్ మరియు డేటా సింక్రొనైజేషన్ మేనేజ్మెంట్, టాస్క్ షెడ్యూలింగ్, థ్రెడ్ మేనేజ్మెంట్, సిగ్నల్ హ్యాండ్లింగ్, మెసేజ్ క్యూయింగ్, టైమర్ మేనేజ్మెంట్, మెమరీ మేనేజ్మెంట్ వంటి ప్రాంతాలను కవర్ చేసే జెనరిక్ కోర్ ప్రిమిటివ్లను కెర్నల్ అందిస్తుంది. హార్డ్వేర్-నిర్దిష్ట లక్షణాలు libcpu మరియు BSP స్థాయిలో అమలు చేయబడతాయి, వీటిలో CPUకి మద్దతు ఇవ్వడానికి అవసరమైన డ్రైవర్లు మరియు కోడ్ ఉంటాయి.
- వర్చువల్ ఫైల్ సిస్టమ్, మినహాయింపు నిర్వహణ సిస్టమ్, కీ/విలువ నిల్వ, FinSH కమాండ్ లైన్ ఇంటర్ఫేస్, నెట్వర్క్ స్టాక్ (LwIP) మరియు నెట్వర్క్ ఫ్రేమ్వర్క్లు, పరికర మద్దతు కోసం లైబ్రరీలు, సౌండ్ సబ్సిస్టమ్ వంటి సారాంశాలను అందించే భాగాలు మరియు సేవలు కెర్నల్ పైన అమలవుతాయి. వైర్లెస్ స్టాక్, Wi-Fi, LoRa, బ్లూటూత్, 2G/4Gకి మద్దతు ఇచ్చే భాగాలు. మాడ్యులర్ ఆర్కిటెక్చర్ మీ పనులు మరియు అందుబాటులో ఉన్న హార్డ్వేర్ వనరులపై ఆధారపడి భాగాలు మరియు సేవలను కనెక్ట్ చేయడానికి మిమ్మల్ని అనుమతిస్తుంది.
- సాఫ్ట్వేర్ ప్యాకేజీలు. సాధారణ ప్రయోజన సాఫ్ట్వేర్ భాగాలు మరియు ఫంక్షన్ లైబ్రరీలు ప్యాకేజీల రూపంలో పంపిణీ చేయబడతాయి మరియు ఇన్స్టాల్ చేయబడతాయి. రిపోజిటరీ ప్రస్తుతం GUIలు, మల్టీమీడియా మరియు నెట్వర్క్ అప్లికేషన్ల నుండి రోబోట్ కంట్రోల్ సిస్టమ్లు మరియు మెషిన్ లెర్నింగ్ ప్రాసెసర్ల వరకు 450 ప్యాకేజీలను కలిగి ఉంది. ప్యాకేజీలు Lua, JerryScript, MicroPython, PikaScript మరియు Rust (rtt_rust)లో ప్రోగ్రామ్ల అమలును నిర్వహించడానికి ఇంజిన్లను కూడా అందిస్తాయి.
వెర్షన్ 5.0లో జోడించిన కొత్త ఫీచర్లలో, మల్టీ-కోర్ మరియు మల్టీ-థ్రెడ్ సిస్టమ్లకు మద్దతులో గణనీయమైన మెరుగుదల గమనించవచ్చు (ఉదాహరణకు, నెట్వర్క్ స్టాక్ మరియు ఫైల్ సిస్టమ్లు మల్టీ-థ్రెడ్ మోడ్లో పని చేయడానికి అనుగుణంగా ఉంటాయి, షెడ్యూలర్ విభజించబడింది. సింగిల్-కోర్ సిస్టమ్స్ మరియు SMP కోసం ఎంపికలలోకి). TLS (థ్రెడ్ స్థానిక నిల్వ) అమలు జోడించబడింది. Cortex-A చిప్లకు మెరుగైన మద్దతు. 64-బిట్ సిస్టమ్లకు గణనీయంగా మెరుగైన మద్దతు (TCP/IP స్టాక్ మరియు 64-బిట్ సిస్టమ్ల కోసం ధృవీకరించబడిన ఫైల్ సిస్టమ్లు). ఇంటిగ్రేటెడ్ ఫ్లాష్ మెమరీ నిర్వహణ భాగాలు. డ్రైవర్లను సృష్టించే సాధనాలు పునఃరూపకల్పన చేయబడ్డాయి.
మూలం: opennet.ru