αž˜αžΈαž€αŸ’αžšαžΌαžαžΊαžŽαŸ‚αž› seL4 αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αž‘αŸ€αž„αž•αŸ’αž‘αžΆαžαŸ‹αžαžΆαž˜αž‚αžŽαž·αžαžœαž·αž‘αŸ’αž™αžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜ RISC-V

αž˜αžΌαž›αž“αž·αž’αž· RISC-V αžšαžΆαž™αž€αžΆαžšαžŽαŸ αž’αŸ†αž–αžΈαž€αžΆαžšαž•αŸ’αž‘αŸ€αž„αž•αŸ’αž‘αžΆαžαŸ‹αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžšαž”αžŸαŸ‹ microkernel seL4 αž“αŸ…αž›αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αžŸαŸ†αžŽαž»αŸ†αž€αžΆαžšαžŽαŸ‚αž“αžΆαŸ† RISC-V αŸ” αž€αžΆαžšαž•αŸ’αž‘αŸ€αž„αž•αŸ’αž‘αžΆαžαŸ‹αž…αž»αŸ‡αž˜αž€ αž—αžŸαŸ’αžαž»αžαžΆαž„αž‚αžŽαž·αžαžœαž·αž‘αŸ’αž™αžΆ αž—αžΆαž–αž‡αžΏαž‡αžΆαž€αŸ‹αž“αŸƒαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš seL4 αžŠαŸ‚αž›αž”αž„αŸ’αž αžΆαž‰αž–αžΈαž€αžΆαžšαž’αž“αž»αž›αŸ„αž˜αž–αŸαž‰αž›αŸαž‰αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž›αž€αŸ’αžαžŽαŸˆαž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž—αžΆαžŸαžΆαž•αŸ’αž›αžΌαžœαž€αžΆαžšαŸ” αž—αžŸαŸ’αžαž»αžαžΆαž„αž“αŸƒαž—αžΆαž–αž‡αžΏαž‡αžΆαž€αŸ‹ αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž”αŸ’αžšαžΎ seL4 αž“αŸ…αž€αŸ’αž“αž»αž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŸαŸ†αžαžΆαž“αŸ‹αž“αŸƒαž”αŸαžŸαž€αž€αž˜αŸ’αž˜αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš RISC-V RV64 αžŠαŸ‚αž›αžαž˜αŸ’αžšαžΌαžœαž±αŸ’αž™αž˜αžΆαž“αž€αžΆαžšαž€αžΎαž“αž‘αžΎαž„αž“αžΌαžœαž€αž˜αŸ’αžšαž·αžαž“αŸƒαž—αžΆαž–αž‡αžΏαž‡αžΆαž€αŸ‹ αž“αž·αž„αž’αžΆαž“αžΆαž’αžœαžαŸ’αžαž˜αžΆαž“αž“αŸƒαž€αžΆαžšαž”αžšαžΆαž‡αŸαž™αŸ” αž’αŸ’αž“αž€αž”αž„αŸ’αž€αžΎαžαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžŠαŸ‚αž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž›αžΎαžαžΊαžŽαŸ‚αž› seL4 αž’αžΆαž…αž˜αžΆαž“αž‘αŸ†αž“αž»αž€αž…αž·αžαŸ’αžαž‘αžΆαŸ†αž„αžŸαŸ’αžšαž»αž„αžαžΆαž”αŸ’αžšαžŸαž·αž“αž”αžΎαž˜αžΆαž“αž€αžΆαžšαž”αžšαžΆαž‡αŸαž™αž“αŸ…αž€αŸ’αž“αž»αž„αž•αŸ’αž“αŸ‚αž€αž˜αž½αž™αž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’ αž“αŸ„αŸ‡αž€αžΆαžšαž”αžšαžΆαž‡αŸαž™αž“αŸαŸ‡αž“αžΉαž„αž˜αž·αž“αžšαžΆαž›αžŠαžΆαž›αžŠαž›αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŠαŸ‚αž›αž“αŸ…αžŸαž›αŸ‹αž‘αžΎαž™ αž αžΎαž™αž‡αžΆαž–αž·αžŸαŸαžŸαž•αŸ’αž“αŸ‚αž€αžŸαŸ†αžαžΆαž“αŸ‹αŸ—αžšαž”αžŸαŸ‹αžœαžΆαŸ”

αž˜αžΈαž€αŸ’αžšαžΌαžαžΊαžŽαŸ‚αž› seL4 αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αž‘αŸ€αž„αž•αŸ’αž‘αžΆαžαŸ‹αžŠαŸ†αž”αžΌαž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš ARM 32 αž”αŸŠαžΈαž αž αžΎαž™αž€αŸ’αžšαŸ„αž™αž˜αž€αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš 64 αž”αŸŠαžΈαž x86 αŸ” αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αžαŸ‹αžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αžαžΆαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž‚αŸ’αž“αžΆαž“αŸƒαžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αž•αŸ’αž“αŸ‚αž€αžšαžΉαž„ RISC-V αž”αžΎαž€αž…αŸ†αž αž‡αžΆαž˜αž½αž™αž˜αžΈαž€αŸ’αžšαžΌαžαžΊαžŽαŸ‚αž› seL4 αž”αžΎαž€αž…αŸ†αž αž“αžΉαž„αžŸαž˜αŸ’αžšαŸαž…αž”αžΆαž“αž“αžΌαžœαž€αž˜αŸ’αžšαž·αžαžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αžαŸ’αž˜αžΈαž˜αž½αž™ αžŠαŸ„αž™αžŸαžΆαžšαžŸαž˜αžΆαžŸαž’αžΆαžαž»αž•αŸ’αž“αŸ‚αž€αžšαžΉαž„αž€αŸαž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αž‘αŸ€αž„αž•αŸ’αž‘αžΆαžαŸ‹αž™αŸ‰αžΆαž„αž–αŸαž‰αž›αŸαž‰αž“αžΆαž–αŸαž›αž’αž“αžΆαž‚αž αžŠαŸ‚αž›αžœαžΆαž˜αž·αž“αž’αžΆαž…αž‘αŸ…αžšαž½αž…αž‘αŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αž•αŸ’αž“αŸ‚αž€αžšαžΉαž„αžŠαŸ‚αž›αž˜αžΆαž“αž€αž˜αŸ’αž˜αžŸαž·αž‘αŸ’αž’αž·αŸ”

αž“αŸ…αž–αŸαž›αž•αŸ’αž‘αŸ€αž„αž•αŸ’αž‘αžΆαžαŸ‹ seL4 αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαž“αŸ’αž˜αžαŸ‹αžαžΆαž§αž”αž€αžšαžŽαŸαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαžΌαž…αžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž αžΎαž™αž€αžΆαžšαž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž–αž·αž–αžŽαŸŒαž“αžΆαž™αŸ‰αžΆαž„αž–αŸαž‰αž›αŸαž‰αž’αŸ†αž–αžΈαž₯αžšαž·αž™αžΆαž”αž‘αž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαžΆαž˜αž–αž·αžαž§αž”αž€αžšαžŽαŸαž“αŸαŸ‡αž˜αž·αž“αž˜αžΆαž“αž€αŸ†αž αž»αžŸαž‘αŸ αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αž™αŸ‰αžΆαž„αž…αŸ’αž”αžΆαžŸαŸ‹αžŠαŸ„αž™αž”αž‰αŸ’αž αžΆαžŠαŸ‚αž›αž€αžΎαžαž‘αžΎαž„αž‡αžΆαž‘αŸ€αž„αž‘αžΆαžαŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž™αž“αŸ’αžαž€αžΆαžšαž“αŸƒαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž€αžΆαžšαž”αŸ‰αžΆαž“αŸ‹αžŸαŸ’αž˜αžΆαž“αŸ” αž€αžΆαžšαžŽαŸ‚αž“αžΆαŸ†αŸ” αžœαŸαž‘αž·αž€αžΆαž•αŸ’αž“αŸ‚αž€αžšαžΉαž„αž”αžΎαž€αž…αŸ†αž αž’αŸ’αžœαžΎαž±αŸ’αž™αžœαžΆαž€αžΆαž“αŸ‹αžαŸ‚αž„αžΆαž™αžŸαŸ’αžšαž½αž›αž€αŸ’αž“αž»αž„αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžŠαŸ‚αž›αž‘αžΆαž€αŸ‹αž‘αž„αž“αžΉαž„αžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž– - αž§αž‘αžΆαž αžšαžŽαŸ αžŠαžΎαž˜αŸ’αž”αžΈαž‘αž”αŸ‹αžŸαŸ’αž€αžΆαžαŸ‹αž€αžΆαžšαž›αŸαž…αž’αŸ’αž›αžΆαž™αž†αžΆαž“αŸ‚αž›αžŠαŸ‚αž›αž’αžΆαž…αž€αžΎαžαž˜αžΆαž“αž‘αžΆαŸ†αž„αž’αžŸαŸ‹ αžŠαŸ‚αž›αž‡αžΆαž€αž“αŸ’αž›αŸ‚αž„αžŠαŸ‚αž›αžœαžΆαž˜αžΆαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αž‡αžΆαž„αž€αŸ’αž“αž»αž„αž€αžΆαžšαž€αž˜αŸ’αž…αžΆαžαŸ‹αž”αž‰αŸ’αž αžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž•αŸ’αž“αŸ‚αž€αžšαžΉαž„αž‡αžΆαž‡αžΆαž„αž€αžΆαžšαž–αŸ’αž™αžΆαž™αžΆαž˜αžŸαŸ’αžœαŸ‚αž„αžšαž€αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαŸ”

αžŸαžΌαž˜αž…αžΆαŸ†αžαžΆαžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜ seL4 αž‚αž½αžšαž±αŸ’αž™αž€αžαŸ‹αžŸαž˜αŸ’αž‚αžΆαž›αŸ‹ αž•αŸ’αž›αžΆαžŸαŸ‹αž‘αžΈαž•αŸ’αž“αŸ‚αž€αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž’αž“αž’αžΆαž“αžαžΊαžŽαŸ‚αž›αž‘αŸ…αž€αŸ’αž“αž»αž„αž›αŸ†αž αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ αž“αž·αž„αž’αž“αž»αžœαžαŸ’αžαž˜αž’αŸ’αž™αŸ„αž”αžΆαž™αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎαžŠαžΌαž…αž‚αŸ’αž“αžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αž“αž’αžΆαž“αžŠαžΌαž…αž‡αžΆαž’αž“αž’αžΆαž“αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αŸ” αž˜αžΈαž€αŸ’αžšαžΌαžαžΊαžŽαŸ‚αž›αž˜αž·αž“αž•αŸ’αžαž›αŸ‹αž’αžšαžΌαž”αžΈαž€αž˜αŸ’αžšαž·αžαžαŸ’αž–αžŸαŸ‹αžŠαŸ‚αž›αžαŸ’αžšαŸ€αž˜αžšαž½αž…αž‡αžΆαžŸαŸ’αžšαŸαž…αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž―αž€αžŸαžΆαžš αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αž”αžŽαŸ’αžαžΆαž‰ αž“αž·αž„αž’αŸ’αžœαžΈαž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž‘αŸ αž•αŸ’αž‘αž»αž™αž‘αŸ…αžœαž·αž‰ αžœαžΆαž•αŸ’αžαž›αŸ‹αžαŸ‚αž™αž“αŸ’αžαž€αžΆαžšαžαž·αž…αžαž½αž…αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž€αžΆαžšαž…αžΌαž›αž‘αŸ…αž€αžΆαž“αŸ‹αž›αŸ†αž αž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“αž‡αžΆαž€αŸ‹αžŸαŸ’αžαŸ‚αž„ αž€αžΆαžšαžšαŸ†αžαžΆαž“ αž“αž·αž„αž’αž“αž’αžΆαž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαŸ” abstractions αž“αž·αž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž”αž‰αŸ’αž‡αžΆαž€αž˜αŸ’αžšαž·αžαžαŸ’αž–αžŸαŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αž‡αžΆαž˜αž½αž™ hardware αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαžŠαŸ„αž™αž‘αŸ‚αž€αž–αžΈαž‚αŸ’αž“αžΆαž“αŸ…αž›αžΎαž€αŸ†αž–αžΌαž›αž“αŸƒ microkernel αž€αŸ’αž“αž»αž„αž‘αž˜αŸ’αžšαž„αŸ‹αž“αŸƒαž—αžΆαžšαž€αž·αž…αŸ’αž…αž€αž˜αŸ’αžšαž·αžαž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αŸ” αž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž—αžΆαžšαž€αž·αž…αŸ’αž…αž”αŸ‚αž”αž“αŸαŸ‡αž…αŸ†αž–αŸ„αŸ‡αž’αž“αž’αžΆαž“αžŠαŸ‚αž›αž˜αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž˜αžΈαž€αŸ’αžšαžΌαžαžΊαžŽαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαŸ€αž”αž…αŸ†αžαžΆαž˜αžšαž™αŸˆαž“αž·αž™αž˜αž“αŸαž™αž“αŸƒαž…αŸ’αž”αžΆαž”αŸ‹αŸ”

RISC-V αž•αŸ’αžαž›αŸ‹αž“αžΌαžœαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŽαŸ‚αž“αžΆαŸ†αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž”αžΎαž€αž…αŸ†αž  αž“αž·αž„αž’αžΆαž…αž”αžαŸ‹αž”αŸ‚αž“αž”αžΆαž“αžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™ microprocessors αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžŠαŸ‚αž›αž”αŸ†αž–αžΆαž“αžŠαŸ„αž™αž˜αž·αž“αž…αžΆαŸ†αž”αžΆαž…αŸ‹αž‘αžΆαž˜αž‘αžΆαžšαžαŸ’αž›αŸƒαžŸαž½αž™αžŸαžΆαžšαž’αžΆαž€αžš αž¬αžαŸ’αžŸαŸ‚αž—αŸ’αž‡αžΆαž”αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αŸ” RISC-V αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž”αž„αŸ’αž€αžΎαž SoCs αž“αž·αž„ processors αžŠαŸ‚αž›αž”αžΎαž€αž…αŸ†αž αž‘αžΆαŸ†αž„αžŸαŸ’αžšαž»αž„αŸ” αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž•αŸ’αž’αŸ‚αž€αž›αžΎαž€αžΆαžšαž”αž‰αŸ’αž‡αžΆαž€αŸ‹ RISC-V αžŠαŸ„αž™αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“ αž“αž·αž„αžŸαž αž‚αž˜αž“αŸαž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆαž€αŸ’αžšαŸ„αž˜αž’αžΆαž‡αŸ’αž‰αžΆαž”αŸαžŽαŸ’αžŽαž₯αžαž‚αž·αžαžαŸ’αž›αŸƒαž•αŸ’αžŸαŸαž„αŸ— (BSD, MIT, Apache 2.0) αž€αŸ†αž–αž»αž„αž’αž—αž·αžœαžŒαŸ’αž αžœαŸ‰αžΆαžšαŸ’αž™αŸ‰αž„αŸ‹αžšαžΆαž”αŸ‹αžŸαž·αž”αž“αŸƒ microprocessor cores, SoCs αž“αž·αž„αž”αž“αŸ’αž‘αŸ‡αžˆαžΈαž”αžŠαŸ‚αž›αž”αžΆαž“αž•αž›αž·αžαžšαž½αž…αž αžΎαž™αŸ” αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžš RISC-V αž˜αžΆαž“αžœαžαŸ’αžαž˜αžΆαž“αž…αžΆαž”αŸ‹αžαžΆαŸ†αž„αž–αžΈαž€αžΆαžšαž…αŸαž‰αž•αŸ’αžŸαžΆαž™αžšαž”αžŸαŸ‹ Glibc 2.27, binutils 2.30, gcc 7 αž“αž·αž„αžαžΊαžŽαŸ‚αž›αž›αžΈαž“αž»αž… 4.15αŸ”

αž”αŸ’αžšαž—αž–: opennet.ru

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹