ΠœΠΈΠΊΡ€ΠΎΡΠ΄Ρ€ΠΎΡ‚ΠΎ seL4 Π΅ матСматичСски ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ΠΎ Π·Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° RISC-V

Ѐондация RISC-V ΡΡŠΠΎΠ±Ρ‰Π°Π²Π° относно ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°Ρ‚Π° Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° микроядрото seL4 Π½Π° систСми с Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° Π½Π° Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ инструкции RISC-V. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°Ρ‚Π° сС свСТда Π΄ΠΎ матСматичСско доказатСлство надСТдност Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° seL4, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π° пълно ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΈΠ΅ със спСцификациитС, посочСни във официалния Π΅Π·ΠΈΠΊ. ДоказатСлство Π·Π° надСТдност Π²ΠΈ позволява Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ seL4 Π² ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΈ Π·Π° мисията систСми, Π±Π°Π·ΠΈΡ€Π°Π½ΠΈ Π½Π° процСсори RISC-V RV64, ΠΊΠΎΠΈΡ‚ΠΎ изискват повишСно Π½ΠΈΠ²ΠΎ Π½Π° надСТдност ΠΈ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π°Ρ‚ липсата Π½Π° ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° софтуСр, Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ Π²ΡŠΡ€Ρ…Ρƒ ядрото seL4, ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ напълно ΡƒΠ²Π΅Ρ€Π΅Π½ΠΈ, Ρ‡Π΅ Π°ΠΊΠΎ ΠΈΠΌΠ° ΠΏΠΎΠ²Ρ€Π΅Π΄Π° Π² Π΅Π΄Π½Π° част ΠΎΡ‚ систСмата, Ρ‚Π°Π·ΠΈ ΠΏΠΎΠ²Ρ€Π΅Π΄Π° няма Π΄Π° сС разпространи Π² останалата част ΠΎΡ‚ систСмата ΠΈ ΠΏΠΎ-спСциално Π² Π½Π΅ΠΉΠ½ΠΈΡ‚Π΅ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΈ части.

ΠœΠΈΠΊΡ€ΠΎΡΠ΄Ρ€ΠΎΡ‚ΠΎ seL4 ΠΏΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎ бСшС ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ΠΎ Π·Π° 32-Π±ΠΈΡ‚ΠΎΠ²ΠΈ ARM процСсори, Π° ΠΏΠΎ-късно Π·Π° 64-Π±ΠΈΡ‚ΠΎΠ²ΠΈ x86 процСсори. ΠžΡ‚Π±Π΅Π»ΡΠ·Π²Π° сС, Ρ‡Π΅ комбинацията ΠΎΡ‚ ΠΎΡ‚Π²ΠΎΡ€Π΅Π½Π°Ρ‚Π° Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° RISC-V с ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ΠΎΡ‚ΠΎ микроядро seL4 Ρ‰Π΅ постигнС Π½ΠΎΠ²ΠΎ Π½ΠΈΠ²ΠΎ Π½Π° сигурност, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ ΡΡŠΡ‰ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ напълно ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ΠΈ Π² Π±ΡŠΠ΄Π΅Ρ‰Π΅, ΠΊΠΎΠ΅Ρ‚ΠΎ Π΅ нСвъзмоТно Π΄Π° сС постигнС Π·Π° частни Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π½ΠΈ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈ.

ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°Ρ‚Π° Π½Π° seL4 сС ΠΏΡ€ΠΈΠ΅ΠΌΠ°, Ρ‡Π΅ ΠΎΠ±ΠΎΡ€ΡƒΠ΄Π²Π°Π½Π΅Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΊΠ°ΠΊΡ‚ΠΎ Π΅ посочСно ΠΈ спСцификацията описва напълно ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° систСмата, Π½ΠΎ Π² дСйствитСлност ΠΎΠ±ΠΎΡ€ΡƒΠ΄Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π΅ Π΅ Π±Π΅Π· Π³Ρ€Π΅ΡˆΠΊΠΈ, ΠΊΠΎΠ΅Ρ‚ΠΎ Π΅ ясно дСмонстрирано ΠΎΡ‚ Ρ€Π΅Π΄ΠΎΠ²Π½ΠΎ Π²ΡŠΠ·Π½ΠΈΠΊΠ²Π°Ρ‰ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ Π² ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° спСкулативно изпълнСниС Π½Π° инструкции. ΠžΡ‚Π²ΠΎΡ€Π΅Π½ΠΈΡ‚Π΅ Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π½ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΈ улСсняват ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ със сигурността - Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π·Π° Π±Π»ΠΎΠΊΠΈΡ€Π°Π½Π΅ Π½Π° всички възмоТни Ρ‚Π΅Ρ‡ΠΎΠ²Π΅ Π½Π° странични ΠΊΠ°Π½Π°Π»ΠΈ, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ Π΄Π° сС ΠΎΡ‚ΡŠΡ€Π²Π΅Ρ‚Π΅ ΠΎΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π°, ΠΎΡ‚ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ Π΄Π° сС ΠΎΠΏΠΈΡ‚Π²Π°Ρ‚Π΅ Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈΡ‚Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π² софтуСра.

Π‘ΠΏΠΎΠΌΠ½Π΅Ρ‚Π΅ си, Ρ‡Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° seL4 Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΡ‚Π΅Π»Π΅Π½ прСмСстванС Π½Π° части Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° рСсурситС Π½Π° ядрото Π² потрСбитСлското пространство ΠΈ ΠΏΡ€ΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° ΡΡŠΡ‰ΠΈΡ‚Π΅ срСдства Π·Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ» Π½Π° Π΄ΠΎΡΡ‚ΡŠΠΏΠ° Π·Π° Ρ‚Π°ΠΊΠΈΠ²Π° рСсурси, ΠΊΠ°ΠΊΡ‚ΠΎ Π·Π° потрСбитСлскитС рСсурси. ΠœΠΈΠΊΡ€ΠΎΡΠ΄Ρ€ΠΎΡ‚ΠΎ Π½Π΅ прСдоставя Π³ΠΎΡ‚ΠΎΠ²ΠΈ абстракции Π½Π° високо Π½ΠΈΠ²ΠΎ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅, процСси, ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈ Π²Ρ€ΡŠΠ·ΠΊΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ; вмСсто Ρ‚ΠΎΠ²Π° прСдоставя само ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄ΠΎΡΡ‚ΡŠΠΏΠ° Π΄ΠΎ физичСско адрСсно пространство, ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°Π½ΠΈΡ ΠΈ рСсурси Π½Π° процСсора. АбстракциитС Π½Π° високо Π½ΠΈΠ²ΠΎ ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΈΡ‚Π΅ Π·Π° взаимодСйствиС с Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π° сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ ΠΎΡ‚Π΄Π΅Π»Π½ΠΎ Π²ΡŠΡ€Ρ…Ρƒ микроядрото ΠΏΠΎΠ΄ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π½Π° Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π° потрСбитСлско Π½ΠΈΠ²ΠΎ. Π”ΠΎΡΡ‚ΡŠΠΏΡŠΡ‚ Π½Π° Ρ‚Π°ΠΊΠΈΠ²Π° Π·Π°Π΄Π°Ρ‡ΠΈ Π΄ΠΎ Π½Π°Π»ΠΈΡ‡Π½ΠΈΡ‚Π΅ рСсурси Π½Π° микроядрото сС ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π° Ρ‡Ρ€Π΅Π· Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»Π°.

RISC-V прСдоставя ΠΎΡ‚Π²ΠΎΡ€Π΅Π½Π° ΠΈ гъвкава систСма Π·Π° машинни инструкции, която позволява ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ Π½Π° микропроцСсори Π·Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ прилоТСния, Π±Π΅Π· Π΄Π° сС изискват Ρ…ΠΎΠ½ΠΎΡ€Π°Ρ€ΠΈ ΠΈΠ»ΠΈ Π½ΠΈΠ·ΠΎΠ²Π΅, ΠΏΡ€ΠΈΠΊΠ°Ρ‡Π΅Π½ΠΈ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅. RISC-V Π²ΠΈ позволява Π΄Π° ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚Π΅ напълно ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ΠΈ SoC ΠΈ процСсори. Π’ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° сС основава Π½Π° спСцификацията RISC-V ΠΎΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈ общности ΠΏΠΎΠ΄ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π±Π΅Π·ΠΏΠ»Π°Ρ‚Π½ΠΈ Π»ΠΈΡ†Π΅Π½Π·ΠΈ (BSD, MIT, Apache 2.0) сС Ρ€Π°Π·Π²ΠΈΠ²Π° няколко дСсСтки Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° Π½Π° микропроцСсорни ядра, SoC ΠΈ Π²Π΅Ρ‡Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈ Ρ‡ΠΈΠΏΠΎΠ²Π΅. ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° RISC-V ΠΏΡ€ΠΈΡΡŠΡΡ‚Π²Π° ΠΎΡ‚ изданията Π½Π° Glibc 2.27, binutils 2.30, gcc 7 ΠΈ Linux ядрото 4.15.

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

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€