Π’ ΠšΠΈΡ‚Π°Π΅ Π·Π°ΠΏΡƒΡ‰Π΅Π½ спутник с real-time подсистСмой ядра Linux, написанной Π½Π° Rust

9 дСкабря Π² ΠšΠΈΡ‚Π°Π΅ Π±Ρ‹Π» Π·Π°ΠΏΡƒΡ‰Π΅Π½ спутник Tianyi-33, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Tiansuan ΠΈ оснащённый Π±ΠΎΡ€Ρ‚ΠΎΠ²Ρ‹ΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ задСйствовано ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ядро Linux с ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ для обСспСчСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, написанными Π½Π° языкС Rust с использованиСм абстракций ΠΈ прослоСк, прСдоставляСмых подсистСмой Rust for Linux. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма оснащСна Π΄Π²ΠΎΠΉΠ½Ρ‹ΠΌ ядром RROS, ΡΠΎΡ‡Π΅Ρ‚Π°ΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ΅ ядро Linux, примСняСмоС для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния, с RTOS-ядром Π½Π° языкС Rust, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΌ для выполнСния Π·Π°Π΄Π°Ρ‡ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Тёсткого Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Код ядра RROS ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ GPLv2.

Π―Π΄Ρ€ΠΎ RROS совмСстимо с Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎΠΌ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… Linux ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Π½ΠΎ ΠΏΡ€ΠΈ этом прСдоставляСт возмоТности ΠΏΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, прСвосходящиС RT-Linux ΠΈ рассчитанныС Π½Π° использованиС Π² критичСских систСмах, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Π±ΠΎΡ€Ρ‚ΠΎΠ²Ρ‹Π΅ ΠΈ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ спутников, ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½Ρ‹Π΅ ΠΈ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ систСмы. Linux-ядро основано Π½Π° Π²Π΅Ρ‚ΠΊΠ΅ 5.13 ΠΈ примСняСтся для выполнСния Π·Π°Π΄Π°Ρ‡ ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ сТатиС Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ машинного обучСния, Π° RTOS-ядро ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для спСциализированных Π·Π°Π΄Π°Ρ‡ с Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ°, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² пространствС, сбор Π½Π°ΡƒΡ‡Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΈ.

Π―Π΄Ρ€ΠΎ совмСстимо с real-time API, прСдоставляСмым Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ libevl, ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ с Π΄Π²ΠΎΠΉΠ½Ρ‹ΠΌ ядром, ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ Xenomai/EVL. RTOS-ядро содСрТит ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊ Π·Π°Π΄Π°Ρ‡ ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ синхронизации, свои Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΈ процСссов, ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ трансляции адрСсов, подсистСму выдСлСния памяти, кэш, сСтСвой стСк с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° UDP. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° заняла Π΄Π²Π° Π³ΠΎΠ΄Π° ΠΈ Π±Ρ‹Π»Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠΎΠΉ ΠΈΠ· ПСкинского унивСрситСта ΠΏΠΎΡ‡Ρ‚Ρ‹ ΠΈ Ρ‚Π΅Π»Π΅ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΉ.

Π’ ΠšΠΈΡ‚Π°Π΅ Π·Π°ΠΏΡƒΡ‰Π΅Π½ спутник с real-time подсистСмой ядра Linux, написанной Π½Π° Rust


Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru